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/max20_true-unreach-call.i -------------------------------------------------------------------------------- This is Ultimate 0.1.23-61f4311 [2018-11-23 12:16:00,726 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 12:16:00,728 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 12:16:00,749 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 12:16:00,749 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 12:16:00,751 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 12:16:00,753 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 12:16:00,756 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 12:16:00,760 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 12:16:00,769 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 12:16:00,770 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 12:16:00,770 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 12:16:00,771 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 12:16:00,772 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 12:16:00,773 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 12:16:00,774 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 12:16:00,775 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 12:16:00,779 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 12:16:00,781 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 12:16:00,783 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 12:16:00,785 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 12:16:00,786 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 12:16:00,788 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 12:16:00,789 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 12:16:00,789 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 12:16:00,790 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 12:16:00,791 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 12:16:00,792 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 12:16:00,793 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 12:16:00,794 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 12:16:00,794 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 12:16:00,796 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 12:16:00,796 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 12:16:00,796 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 12:16:00,797 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 12:16:00,798 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 12:16:00,798 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:16:00,817 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 12:16:00,817 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 12:16:00,818 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 12:16:00,818 INFO L133 SettingsManager]: * ... calls to implemented procedures=ONLY_FOR_CONCURRENT_PROGRAMS [2018-11-23 12:16:00,819 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 12:16:00,819 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 12:16:00,820 INFO L133 SettingsManager]: * Use SBE=true [2018-11-23 12:16:00,820 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 12:16:00,820 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 12:16:00,820 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-23 12:16:00,820 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 12:16:00,821 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 12:16:00,821 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 12:16:00,821 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 12:16:00,821 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 12:16:00,821 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 12:16:00,822 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 12:16:00,822 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 12:16:00,822 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 12:16:00,824 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 12:16:00,824 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-23 12:16:00,824 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 12:16:00,824 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-23 12:16:00,825 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 12:16:00,825 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 12:16:00,825 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 12:16:00,825 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 12:16:00,826 INFO L133 SettingsManager]: * Trace refinement strategy=CAMEL [2018-11-23 12:16:00,826 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 12:16:00,826 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-11-23 12:16:00,826 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2018-11-23 12:16:00,872 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 12:16:00,894 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 12:16:00,899 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 12:16:00,901 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 12:16:00,902 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 12:16:00,902 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/reducercommutativity/max20_true-unreach-call.i [2018-11-23 12:16:00,989 INFO L221 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b44638b95/06df20740e194ec4927accbd10980233/FLAGf7bffdeed [2018-11-23 12:16:01,519 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 12:16:01,520 INFO L161 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/reducercommutativity/max20_true-unreach-call.i [2018-11-23 12:16:01,527 INFO L355 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b44638b95/06df20740e194ec4927accbd10980233/FLAGf7bffdeed [2018-11-23 12:16:01,865 INFO L363 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b44638b95/06df20740e194ec4927accbd10980233 [2018-11-23 12:16:01,875 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 12:16:01,877 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 12:16:01,878 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 12:16:01,879 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 12:16:01,883 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 12:16:01,884 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 12:16:01" (1/1) ... [2018-11-23 12:16:01,887 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4ea32f70 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:16:01, skipping insertion in model container [2018-11-23 12:16:01,888 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 12:16:01" (1/1) ... [2018-11-23 12:16:01,899 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 12:16:01,928 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 12:16:02,204 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 12:16:02,224 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 12:16:02,266 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 12:16:02,287 INFO L195 MainTranslator]: Completed translation [2018-11-23 12:16:02,288 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:16:02 WrapperNode [2018-11-23 12:16:02,288 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 12:16:02,289 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 12:16:02,289 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 12:16:02,289 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 12:16:02,301 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:16:02" (1/1) ... [2018-11-23 12:16:02,313 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:16:02" (1/1) ... [2018-11-23 12:16:02,322 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 12:16:02,323 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 12:16:02,323 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 12:16:02,323 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 12:16:02,333 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:16:02" (1/1) ... [2018-11-23 12:16:02,333 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:16:02" (1/1) ... [2018-11-23 12:16:02,335 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:16:02" (1/1) ... [2018-11-23 12:16:02,336 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:16:02" (1/1) ... [2018-11-23 12:16:02,350 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:16:02" (1/1) ... [2018-11-23 12:16:02,357 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:16:02" (1/1) ... [2018-11-23 12:16:02,359 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:16:02" (1/1) ... [2018-11-23 12:16:02,361 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 12:16:02,362 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 12:16:02,362 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 12:16:02,362 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 12:16:02,363 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:16:02" (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:16:02,502 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2018-11-23 12:16:02,503 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-23 12:16:02,503 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-23 12:16:02,503 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 12:16:02,503 INFO L130 BoogieDeclarations]: Found specification of procedure max [2018-11-23 12:16:02,503 INFO L138 BoogieDeclarations]: Found implementation of procedure max [2018-11-23 12:16:02,503 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 12:16:02,504 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 12:16:02,504 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-23 12:16:02,504 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-23 12:16:02,504 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-23 12:16:02,504 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 12:16:03,296 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 12:16:03,296 INFO L280 CfgBuilder]: Removed 3 assue(true) statements. [2018-11-23 12:16:03,297 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 12:16:03 BoogieIcfgContainer [2018-11-23 12:16:03,297 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 12:16:03,298 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-23 12:16:03,299 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-23 12:16:03,302 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-23 12:16:03,303 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 12:16:01" (1/3) ... [2018-11-23 12:16:03,304 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3216bafd and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 12:16:03, skipping insertion in model container [2018-11-23 12:16:03,304 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:16:02" (2/3) ... [2018-11-23 12:16:03,305 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3216bafd and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 12:16:03, skipping insertion in model container [2018-11-23 12:16:03,305 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 12:16:03" (3/3) ... [2018-11-23 12:16:03,307 INFO L112 eAbstractionObserver]: Analyzing ICFG max20_true-unreach-call.i [2018-11-23 12:16:03,319 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-23 12:16:03,329 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-23 12:16:03,350 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-23 12:16:03,386 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-23 12:16:03,387 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-23 12:16:03,388 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-23 12:16:03,388 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-23 12:16:03,388 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-23 12:16:03,389 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-23 12:16:03,389 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-23 12:16:03,389 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-23 12:16:03,389 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-23 12:16:03,411 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states. [2018-11-23 12:16:03,420 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2018-11-23 12:16:03,420 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:03,422 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] [2018-11-23 12:16:03,425 INFO L423 AbstractCegarLoop]: === Iteration 1 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:03,431 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:03,432 INFO L82 PathProgramCache]: Analyzing trace with hash 1379671032, now seen corresponding path program 1 times [2018-11-23 12:16:03,435 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:03,436 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:03,501 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:03,502 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:16:03,502 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:03,560 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:03,717 INFO L256 TraceCheckUtils]: 0: Hoare triple {36#true} call ULTIMATE.init(); {36#true} is VALID [2018-11-23 12:16:03,722 INFO L273 TraceCheckUtils]: 1: Hoare triple {36#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {36#true} is VALID [2018-11-23 12:16:03,723 INFO L273 TraceCheckUtils]: 2: Hoare triple {36#true} assume true; {36#true} is VALID [2018-11-23 12:16:03,723 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {36#true} {36#true} #73#return; {36#true} is VALID [2018-11-23 12:16:03,724 INFO L256 TraceCheckUtils]: 4: Hoare triple {36#true} call #t~ret14 := main(); {36#true} is VALID [2018-11-23 12:16:03,737 INFO L273 TraceCheckUtils]: 5: Hoare triple {36#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {38#(= main_~i~1 0)} is VALID [2018-11-23 12:16:03,738 INFO L273 TraceCheckUtils]: 6: Hoare triple {38#(= main_~i~1 0)} assume !(~i~1 < 20); {37#false} is VALID [2018-11-23 12:16:03,739 INFO L256 TraceCheckUtils]: 7: Hoare triple {37#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {36#true} is VALID [2018-11-23 12:16:03,739 INFO L273 TraceCheckUtils]: 8: Hoare triple {36#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {36#true} is VALID [2018-11-23 12:16:03,739 INFO L273 TraceCheckUtils]: 9: Hoare triple {36#true} assume !true; {36#true} is VALID [2018-11-23 12:16:03,740 INFO L273 TraceCheckUtils]: 10: Hoare triple {36#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {36#true} is VALID [2018-11-23 12:16:03,740 INFO L273 TraceCheckUtils]: 11: Hoare triple {36#true} assume true; {36#true} is VALID [2018-11-23 12:16:03,740 INFO L268 TraceCheckUtils]: 12: Hoare quadruple {36#true} {37#false} #77#return; {37#false} is VALID [2018-11-23 12:16:03,741 INFO L273 TraceCheckUtils]: 13: Hoare triple {37#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {37#false} is VALID [2018-11-23 12:16:03,741 INFO L256 TraceCheckUtils]: 14: Hoare triple {37#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {36#true} is VALID [2018-11-23 12:16:03,741 INFO L273 TraceCheckUtils]: 15: Hoare triple {36#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {36#true} is VALID [2018-11-23 12:16:03,742 INFO L273 TraceCheckUtils]: 16: Hoare triple {36#true} assume !true; {36#true} is VALID [2018-11-23 12:16:03,742 INFO L273 TraceCheckUtils]: 17: Hoare triple {36#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {36#true} is VALID [2018-11-23 12:16:03,742 INFO L273 TraceCheckUtils]: 18: Hoare triple {36#true} assume true; {36#true} is VALID [2018-11-23 12:16:03,742 INFO L268 TraceCheckUtils]: 19: Hoare quadruple {36#true} {37#false} #79#return; {37#false} is VALID [2018-11-23 12:16:03,742 INFO L273 TraceCheckUtils]: 20: Hoare triple {37#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {37#false} is VALID [2018-11-23 12:16:03,743 INFO L273 TraceCheckUtils]: 21: Hoare triple {37#false} assume !(~i~2 < 19); {37#false} is VALID [2018-11-23 12:16:03,743 INFO L273 TraceCheckUtils]: 22: Hoare triple {37#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {37#false} is VALID [2018-11-23 12:16:03,744 INFO L256 TraceCheckUtils]: 23: Hoare triple {37#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {36#true} is VALID [2018-11-23 12:16:03,744 INFO L273 TraceCheckUtils]: 24: Hoare triple {36#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {36#true} is VALID [2018-11-23 12:16:03,744 INFO L273 TraceCheckUtils]: 25: Hoare triple {36#true} assume !true; {36#true} is VALID [2018-11-23 12:16:03,745 INFO L273 TraceCheckUtils]: 26: Hoare triple {36#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {36#true} is VALID [2018-11-23 12:16:03,745 INFO L273 TraceCheckUtils]: 27: Hoare triple {36#true} assume true; {36#true} is VALID [2018-11-23 12:16:03,745 INFO L268 TraceCheckUtils]: 28: Hoare quadruple {36#true} {37#false} #81#return; {37#false} is VALID [2018-11-23 12:16:03,746 INFO L273 TraceCheckUtils]: 29: Hoare triple {37#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {37#false} is VALID [2018-11-23 12:16:03,746 INFO L273 TraceCheckUtils]: 30: Hoare triple {37#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {37#false} is VALID [2018-11-23 12:16:03,746 INFO L273 TraceCheckUtils]: 31: Hoare triple {37#false} assume !false; {37#false} is VALID [2018-11-23 12:16:03,753 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:16:03,756 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 12:16:03,757 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2018-11-23 12:16:03,766 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 32 [2018-11-23 12:16:03,770 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:03,774 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2018-11-23 12:16:03,901 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:16:03,902 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2018-11-23 12:16:03,910 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2018-11-23 12:16:03,911 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-23 12:16:03,913 INFO L87 Difference]: Start difference. First operand 33 states. Second operand 3 states. [2018-11-23 12:16:04,236 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:04,236 INFO L93 Difference]: Finished difference Result 60 states and 81 transitions. [2018-11-23 12:16:04,237 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-23 12:16:04,237 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 32 [2018-11-23 12:16:04,237 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:04,238 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-23 12:16:04,251 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 81 transitions. [2018-11-23 12:16:04,251 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-23 12:16:04,258 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 81 transitions. [2018-11-23 12:16:04,259 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 81 transitions. [2018-11-23 12:16:04,529 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:16:04,545 INFO L225 Difference]: With dead ends: 60 [2018-11-23 12:16:04,545 INFO L226 Difference]: Without dead ends: 30 [2018-11-23 12:16:04,549 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-23 12:16:04,566 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 30 states. [2018-11-23 12:16:04,653 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 30 to 29. [2018-11-23 12:16:04,653 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:04,655 INFO L82 GeneralOperation]: Start isEquivalent. First operand 30 states. Second operand 29 states. [2018-11-23 12:16:04,656 INFO L74 IsIncluded]: Start isIncluded. First operand 30 states. Second operand 29 states. [2018-11-23 12:16:04,657 INFO L87 Difference]: Start difference. First operand 30 states. Second operand 29 states. [2018-11-23 12:16:04,673 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:04,673 INFO L93 Difference]: Finished difference Result 30 states and 35 transitions. [2018-11-23 12:16:04,676 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 35 transitions. [2018-11-23 12:16:04,677 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:04,678 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:04,678 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand 30 states. [2018-11-23 12:16:04,678 INFO L87 Difference]: Start difference. First operand 29 states. Second operand 30 states. [2018-11-23 12:16:04,692 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:04,692 INFO L93 Difference]: Finished difference Result 30 states and 35 transitions. [2018-11-23 12:16:04,693 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 35 transitions. [2018-11-23 12:16:04,695 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:04,695 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:04,695 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:04,695 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:04,696 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 29 states. [2018-11-23 12:16:04,703 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 34 transitions. [2018-11-23 12:16:04,712 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 34 transitions. Word has length 32 [2018-11-23 12:16:04,713 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:04,713 INFO L480 AbstractCegarLoop]: Abstraction has 29 states and 34 transitions. [2018-11-23 12:16:04,713 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2018-11-23 12:16:04,713 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 34 transitions. [2018-11-23 12:16:04,718 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2018-11-23 12:16:04,718 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:04,719 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] [2018-11-23 12:16:04,719 INFO L423 AbstractCegarLoop]: === Iteration 2 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:04,720 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:04,721 INFO L82 PathProgramCache]: Analyzing trace with hash 551744077, now seen corresponding path program 1 times [2018-11-23 12:16:04,721 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:04,721 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:04,725 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:04,725 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:16:04,725 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:04,776 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:05,020 INFO L256 TraceCheckUtils]: 0: Hoare triple {220#true} call ULTIMATE.init(); {220#true} is VALID [2018-11-23 12:16:05,021 INFO L273 TraceCheckUtils]: 1: Hoare triple {220#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {220#true} is VALID [2018-11-23 12:16:05,021 INFO L273 TraceCheckUtils]: 2: Hoare triple {220#true} assume true; {220#true} is VALID [2018-11-23 12:16:05,021 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {220#true} {220#true} #73#return; {220#true} is VALID [2018-11-23 12:16:05,021 INFO L256 TraceCheckUtils]: 4: Hoare triple {220#true} call #t~ret14 := main(); {220#true} is VALID [2018-11-23 12:16:05,022 INFO L273 TraceCheckUtils]: 5: Hoare triple {220#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {220#true} is VALID [2018-11-23 12:16:05,022 INFO L273 TraceCheckUtils]: 6: Hoare triple {220#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {220#true} is VALID [2018-11-23 12:16:05,022 INFO L273 TraceCheckUtils]: 7: Hoare triple {220#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {220#true} is VALID [2018-11-23 12:16:05,025 INFO L273 TraceCheckUtils]: 8: Hoare triple {220#true} assume !(~i~1 < 20); {220#true} is VALID [2018-11-23 12:16:05,025 INFO L256 TraceCheckUtils]: 9: Hoare triple {220#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {220#true} is VALID [2018-11-23 12:16:05,038 INFO L273 TraceCheckUtils]: 10: Hoare triple {220#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {222#(= max_~i~0 0)} is VALID [2018-11-23 12:16:05,053 INFO L273 TraceCheckUtils]: 11: Hoare triple {222#(= max_~i~0 0)} assume !(~i~0 < 20); {221#false} is VALID [2018-11-23 12:16:05,054 INFO L273 TraceCheckUtils]: 12: Hoare triple {221#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {221#false} is VALID [2018-11-23 12:16:05,054 INFO L273 TraceCheckUtils]: 13: Hoare triple {221#false} assume true; {221#false} is VALID [2018-11-23 12:16:05,054 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {221#false} {220#true} #77#return; {221#false} is VALID [2018-11-23 12:16:05,055 INFO L273 TraceCheckUtils]: 15: Hoare triple {221#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {221#false} is VALID [2018-11-23 12:16:05,055 INFO L256 TraceCheckUtils]: 16: Hoare triple {221#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {220#true} is VALID [2018-11-23 12:16:05,055 INFO L273 TraceCheckUtils]: 17: Hoare triple {220#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {220#true} is VALID [2018-11-23 12:16:05,056 INFO L273 TraceCheckUtils]: 18: Hoare triple {220#true} assume !(~i~0 < 20); {220#true} is VALID [2018-11-23 12:16:05,056 INFO L273 TraceCheckUtils]: 19: Hoare triple {220#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {220#true} is VALID [2018-11-23 12:16:05,056 INFO L273 TraceCheckUtils]: 20: Hoare triple {220#true} assume true; {220#true} is VALID [2018-11-23 12:16:05,057 INFO L268 TraceCheckUtils]: 21: Hoare quadruple {220#true} {221#false} #79#return; {221#false} is VALID [2018-11-23 12:16:05,057 INFO L273 TraceCheckUtils]: 22: Hoare triple {221#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {221#false} is VALID [2018-11-23 12:16:05,057 INFO L273 TraceCheckUtils]: 23: Hoare triple {221#false} assume !(~i~2 < 19); {221#false} is VALID [2018-11-23 12:16:05,058 INFO L273 TraceCheckUtils]: 24: Hoare triple {221#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {221#false} is VALID [2018-11-23 12:16:05,058 INFO L256 TraceCheckUtils]: 25: Hoare triple {221#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {220#true} is VALID [2018-11-23 12:16:05,059 INFO L273 TraceCheckUtils]: 26: Hoare triple {220#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {220#true} is VALID [2018-11-23 12:16:05,059 INFO L273 TraceCheckUtils]: 27: Hoare triple {220#true} assume !(~i~0 < 20); {220#true} is VALID [2018-11-23 12:16:05,059 INFO L273 TraceCheckUtils]: 28: Hoare triple {220#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {220#true} is VALID [2018-11-23 12:16:05,060 INFO L273 TraceCheckUtils]: 29: Hoare triple {220#true} assume true; {220#true} is VALID [2018-11-23 12:16:05,060 INFO L268 TraceCheckUtils]: 30: Hoare quadruple {220#true} {221#false} #81#return; {221#false} is VALID [2018-11-23 12:16:05,060 INFO L273 TraceCheckUtils]: 31: Hoare triple {221#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {221#false} is VALID [2018-11-23 12:16:05,061 INFO L273 TraceCheckUtils]: 32: Hoare triple {221#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {221#false} is VALID [2018-11-23 12:16:05,061 INFO L273 TraceCheckUtils]: 33: Hoare triple {221#false} assume !false; {221#false} is VALID [2018-11-23 12:16:05,063 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:16:05,064 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:16:05,064 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:16:05,076 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:16:05,117 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:05,135 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:05,141 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:05,306 INFO L256 TraceCheckUtils]: 0: Hoare triple {220#true} call ULTIMATE.init(); {220#true} is VALID [2018-11-23 12:16:05,306 INFO L273 TraceCheckUtils]: 1: Hoare triple {220#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {220#true} is VALID [2018-11-23 12:16:05,307 INFO L273 TraceCheckUtils]: 2: Hoare triple {220#true} assume true; {220#true} is VALID [2018-11-23 12:16:05,307 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {220#true} {220#true} #73#return; {220#true} is VALID [2018-11-23 12:16:05,307 INFO L256 TraceCheckUtils]: 4: Hoare triple {220#true} call #t~ret14 := main(); {220#true} is VALID [2018-11-23 12:16:05,308 INFO L273 TraceCheckUtils]: 5: Hoare triple {220#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {220#true} is VALID [2018-11-23 12:16:05,308 INFO L273 TraceCheckUtils]: 6: Hoare triple {220#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {220#true} is VALID [2018-11-23 12:16:05,308 INFO L273 TraceCheckUtils]: 7: Hoare triple {220#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {220#true} is VALID [2018-11-23 12:16:05,308 INFO L273 TraceCheckUtils]: 8: Hoare triple {220#true} assume !(~i~1 < 20); {220#true} is VALID [2018-11-23 12:16:05,309 INFO L256 TraceCheckUtils]: 9: Hoare triple {220#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {220#true} is VALID [2018-11-23 12:16:05,309 INFO L273 TraceCheckUtils]: 10: Hoare triple {220#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {256#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:05,311 INFO L273 TraceCheckUtils]: 11: Hoare triple {256#(<= max_~i~0 0)} assume !(~i~0 < 20); {221#false} is VALID [2018-11-23 12:16:05,311 INFO L273 TraceCheckUtils]: 12: Hoare triple {221#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {221#false} is VALID [2018-11-23 12:16:05,311 INFO L273 TraceCheckUtils]: 13: Hoare triple {221#false} assume true; {221#false} is VALID [2018-11-23 12:16:05,312 INFO L268 TraceCheckUtils]: 14: Hoare quadruple {221#false} {220#true} #77#return; {221#false} is VALID [2018-11-23 12:16:05,312 INFO L273 TraceCheckUtils]: 15: Hoare triple {221#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {221#false} is VALID [2018-11-23 12:16:05,312 INFO L256 TraceCheckUtils]: 16: Hoare triple {221#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {221#false} is VALID [2018-11-23 12:16:05,313 INFO L273 TraceCheckUtils]: 17: Hoare triple {221#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {221#false} is VALID [2018-11-23 12:16:05,313 INFO L273 TraceCheckUtils]: 18: Hoare triple {221#false} assume !(~i~0 < 20); {221#false} is VALID [2018-11-23 12:16:05,313 INFO L273 TraceCheckUtils]: 19: Hoare triple {221#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {221#false} is VALID [2018-11-23 12:16:05,314 INFO L273 TraceCheckUtils]: 20: Hoare triple {221#false} assume true; {221#false} is VALID [2018-11-23 12:16:05,314 INFO L268 TraceCheckUtils]: 21: Hoare quadruple {221#false} {221#false} #79#return; {221#false} is VALID [2018-11-23 12:16:05,315 INFO L273 TraceCheckUtils]: 22: Hoare triple {221#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {221#false} is VALID [2018-11-23 12:16:05,315 INFO L273 TraceCheckUtils]: 23: Hoare triple {221#false} assume !(~i~2 < 19); {221#false} is VALID [2018-11-23 12:16:05,316 INFO L273 TraceCheckUtils]: 24: Hoare triple {221#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {221#false} is VALID [2018-11-23 12:16:05,316 INFO L256 TraceCheckUtils]: 25: Hoare triple {221#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {221#false} is VALID [2018-11-23 12:16:05,316 INFO L273 TraceCheckUtils]: 26: Hoare triple {221#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {221#false} is VALID [2018-11-23 12:16:05,316 INFO L273 TraceCheckUtils]: 27: Hoare triple {221#false} assume !(~i~0 < 20); {221#false} is VALID [2018-11-23 12:16:05,317 INFO L273 TraceCheckUtils]: 28: Hoare triple {221#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {221#false} is VALID [2018-11-23 12:16:05,317 INFO L273 TraceCheckUtils]: 29: Hoare triple {221#false} assume true; {221#false} is VALID [2018-11-23 12:16:05,317 INFO L268 TraceCheckUtils]: 30: Hoare quadruple {221#false} {221#false} #81#return; {221#false} is VALID [2018-11-23 12:16:05,317 INFO L273 TraceCheckUtils]: 31: Hoare triple {221#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {221#false} is VALID [2018-11-23 12:16:05,318 INFO L273 TraceCheckUtils]: 32: Hoare triple {221#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {221#false} is VALID [2018-11-23 12:16:05,318 INFO L273 TraceCheckUtils]: 33: Hoare triple {221#false} assume !false; {221#false} is VALID [2018-11-23 12:16:05,320 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:16:05,342 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2018-11-23 12:16:05,342 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [3] total 4 [2018-11-23 12:16:05,343 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 34 [2018-11-23 12:16:05,348 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:05,348 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2018-11-23 12:16:05,485 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:16:05,486 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2018-11-23 12:16:05,486 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2018-11-23 12:16:05,486 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2018-11-23 12:16:05,487 INFO L87 Difference]: Start difference. First operand 29 states and 34 transitions. Second operand 4 states. [2018-11-23 12:16:05,767 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:05,767 INFO L93 Difference]: Finished difference Result 52 states and 65 transitions. [2018-11-23 12:16:05,767 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-23 12:16:05,768 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 34 [2018-11-23 12:16:05,768 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:05,768 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-23 12:16:05,774 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 64 transitions. [2018-11-23 12:16:05,775 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-23 12:16:05,780 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 64 transitions. [2018-11-23 12:16:05,781 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 64 transitions. [2018-11-23 12:16:05,915 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:16:05,918 INFO L225 Difference]: With dead ends: 52 [2018-11-23 12:16:05,919 INFO L226 Difference]: Without dead ends: 33 [2018-11-23 12:16:05,920 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 36 GetRequests, 34 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2018-11-23 12:16:05,921 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 33 states. [2018-11-23 12:16:05,942 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 33 to 30. [2018-11-23 12:16:05,942 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:05,942 INFO L82 GeneralOperation]: Start isEquivalent. First operand 33 states. Second operand 30 states. [2018-11-23 12:16:05,943 INFO L74 IsIncluded]: Start isIncluded. First operand 33 states. Second operand 30 states. [2018-11-23 12:16:05,943 INFO L87 Difference]: Start difference. First operand 33 states. Second operand 30 states. [2018-11-23 12:16:05,946 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:05,947 INFO L93 Difference]: Finished difference Result 33 states and 39 transitions. [2018-11-23 12:16:05,947 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 39 transitions. [2018-11-23 12:16:05,948 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:05,948 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:05,949 INFO L74 IsIncluded]: Start isIncluded. First operand 30 states. Second operand 33 states. [2018-11-23 12:16:05,949 INFO L87 Difference]: Start difference. First operand 30 states. Second operand 33 states. [2018-11-23 12:16:05,952 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:05,953 INFO L93 Difference]: Finished difference Result 33 states and 39 transitions. [2018-11-23 12:16:05,953 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 39 transitions. [2018-11-23 12:16:05,954 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:05,954 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:05,954 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:05,954 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:05,955 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 30 states. [2018-11-23 12:16:05,957 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 35 transitions. [2018-11-23 12:16:05,958 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 35 transitions. Word has length 34 [2018-11-23 12:16:05,958 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:05,958 INFO L480 AbstractCegarLoop]: Abstraction has 30 states and 35 transitions. [2018-11-23 12:16:05,959 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2018-11-23 12:16:05,959 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 35 transitions. [2018-11-23 12:16:05,960 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2018-11-23 12:16:05,961 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:05,961 INFO L402 BasicCegarLoop]: trace histogram [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] [2018-11-23 12:16:05,961 INFO L423 AbstractCegarLoop]: === Iteration 3 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:05,962 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:05,962 INFO L82 PathProgramCache]: Analyzing trace with hash 727331048, now seen corresponding path program 1 times [2018-11-23 12:16:05,962 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:05,962 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:05,964 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:05,964 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:16:05,964 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:05,999 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:06,083 INFO L256 TraceCheckUtils]: 0: Hoare triple {504#true} call ULTIMATE.init(); {504#true} is VALID [2018-11-23 12:16:06,084 INFO L273 TraceCheckUtils]: 1: Hoare triple {504#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {504#true} is VALID [2018-11-23 12:16:06,084 INFO L273 TraceCheckUtils]: 2: Hoare triple {504#true} assume true; {504#true} is VALID [2018-11-23 12:16:06,084 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {504#true} {504#true} #73#return; {504#true} is VALID [2018-11-23 12:16:06,085 INFO L256 TraceCheckUtils]: 4: Hoare triple {504#true} call #t~ret14 := main(); {504#true} is VALID [2018-11-23 12:16:06,085 INFO L273 TraceCheckUtils]: 5: Hoare triple {504#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {504#true} is VALID [2018-11-23 12:16:06,085 INFO L273 TraceCheckUtils]: 6: Hoare triple {504#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {504#true} is VALID [2018-11-23 12:16:06,086 INFO L273 TraceCheckUtils]: 7: Hoare triple {504#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {504#true} is VALID [2018-11-23 12:16:06,086 INFO L273 TraceCheckUtils]: 8: Hoare triple {504#true} assume !(~i~1 < 20); {504#true} is VALID [2018-11-23 12:16:06,086 INFO L256 TraceCheckUtils]: 9: Hoare triple {504#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {504#true} is VALID [2018-11-23 12:16:06,086 INFO L273 TraceCheckUtils]: 10: Hoare triple {504#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {504#true} is VALID [2018-11-23 12:16:06,087 INFO L273 TraceCheckUtils]: 11: Hoare triple {504#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {504#true} is VALID [2018-11-23 12:16:06,087 INFO L273 TraceCheckUtils]: 12: Hoare triple {504#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {504#true} is VALID [2018-11-23 12:16:06,087 INFO L273 TraceCheckUtils]: 13: Hoare triple {504#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {504#true} is VALID [2018-11-23 12:16:06,088 INFO L273 TraceCheckUtils]: 14: Hoare triple {504#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {504#true} is VALID [2018-11-23 12:16:06,088 INFO L273 TraceCheckUtils]: 15: Hoare triple {504#true} assume !(~i~0 < 20); {504#true} is VALID [2018-11-23 12:16:06,088 INFO L273 TraceCheckUtils]: 16: Hoare triple {504#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {504#true} is VALID [2018-11-23 12:16:06,089 INFO L273 TraceCheckUtils]: 17: Hoare triple {504#true} assume true; {504#true} is VALID [2018-11-23 12:16:06,089 INFO L268 TraceCheckUtils]: 18: Hoare quadruple {504#true} {504#true} #77#return; {504#true} is VALID [2018-11-23 12:16:06,089 INFO L273 TraceCheckUtils]: 19: Hoare triple {504#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {504#true} is VALID [2018-11-23 12:16:06,090 INFO L256 TraceCheckUtils]: 20: Hoare triple {504#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {504#true} is VALID [2018-11-23 12:16:06,090 INFO L273 TraceCheckUtils]: 21: Hoare triple {504#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {504#true} is VALID [2018-11-23 12:16:06,090 INFO L273 TraceCheckUtils]: 22: Hoare triple {504#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {504#true} is VALID [2018-11-23 12:16:06,091 INFO L273 TraceCheckUtils]: 23: Hoare triple {504#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {504#true} is VALID [2018-11-23 12:16:06,091 INFO L273 TraceCheckUtils]: 24: Hoare triple {504#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {504#true} is VALID [2018-11-23 12:16:06,091 INFO L273 TraceCheckUtils]: 25: Hoare triple {504#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {504#true} is VALID [2018-11-23 12:16:06,092 INFO L273 TraceCheckUtils]: 26: Hoare triple {504#true} assume !(~i~0 < 20); {504#true} is VALID [2018-11-23 12:16:06,092 INFO L273 TraceCheckUtils]: 27: Hoare triple {504#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {504#true} is VALID [2018-11-23 12:16:06,092 INFO L273 TraceCheckUtils]: 28: Hoare triple {504#true} assume true; {504#true} is VALID [2018-11-23 12:16:06,093 INFO L268 TraceCheckUtils]: 29: Hoare quadruple {504#true} {504#true} #79#return; {504#true} is VALID [2018-11-23 12:16:06,105 INFO L273 TraceCheckUtils]: 30: Hoare triple {504#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {506#(= main_~i~2 0)} is VALID [2018-11-23 12:16:06,109 INFO L273 TraceCheckUtils]: 31: Hoare triple {506#(= main_~i~2 0)} assume !(~i~2 < 19); {505#false} is VALID [2018-11-23 12:16:06,109 INFO L273 TraceCheckUtils]: 32: Hoare triple {505#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {505#false} is VALID [2018-11-23 12:16:06,110 INFO L256 TraceCheckUtils]: 33: Hoare triple {505#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {504#true} is VALID [2018-11-23 12:16:06,110 INFO L273 TraceCheckUtils]: 34: Hoare triple {504#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {504#true} is VALID [2018-11-23 12:16:06,110 INFO L273 TraceCheckUtils]: 35: Hoare triple {504#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {504#true} is VALID [2018-11-23 12:16:06,110 INFO L273 TraceCheckUtils]: 36: Hoare triple {504#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {504#true} is VALID [2018-11-23 12:16:06,111 INFO L273 TraceCheckUtils]: 37: Hoare triple {504#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {504#true} is VALID [2018-11-23 12:16:06,111 INFO L273 TraceCheckUtils]: 38: Hoare triple {504#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {504#true} is VALID [2018-11-23 12:16:06,111 INFO L273 TraceCheckUtils]: 39: Hoare triple {504#true} assume !(~i~0 < 20); {504#true} is VALID [2018-11-23 12:16:06,111 INFO L273 TraceCheckUtils]: 40: Hoare triple {504#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {504#true} is VALID [2018-11-23 12:16:06,112 INFO L273 TraceCheckUtils]: 41: Hoare triple {504#true} assume true; {504#true} is VALID [2018-11-23 12:16:06,112 INFO L268 TraceCheckUtils]: 42: Hoare quadruple {504#true} {505#false} #81#return; {505#false} is VALID [2018-11-23 12:16:06,112 INFO L273 TraceCheckUtils]: 43: Hoare triple {505#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {505#false} is VALID [2018-11-23 12:16:06,112 INFO L273 TraceCheckUtils]: 44: Hoare triple {505#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {505#false} is VALID [2018-11-23 12:16:06,113 INFO L273 TraceCheckUtils]: 45: Hoare triple {505#false} assume !false; {505#false} is VALID [2018-11-23 12:16:06,117 INFO L134 CoverageAnalysis]: Checked inductivity of 37 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 37 trivial. 0 not checked. [2018-11-23 12:16:06,117 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 12:16:06,117 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2018-11-23 12:16:06,118 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 46 [2018-11-23 12:16:06,118 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:06,118 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2018-11-23 12:16:06,282 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:16:06,283 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2018-11-23 12:16:06,283 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2018-11-23 12:16:06,283 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-23 12:16:06,284 INFO L87 Difference]: Start difference. First operand 30 states and 35 transitions. Second operand 3 states. [2018-11-23 12:16:06,441 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:06,442 INFO L93 Difference]: Finished difference Result 47 states and 54 transitions. [2018-11-23 12:16:06,442 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-23 12:16:06,442 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 46 [2018-11-23 12:16:06,443 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:06,443 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-23 12:16:06,446 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 51 transitions. [2018-11-23 12:16:06,446 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-23 12:16:06,448 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 51 transitions. [2018-11-23 12:16:06,448 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 51 transitions. [2018-11-23 12:16:06,568 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:16:06,571 INFO L225 Difference]: With dead ends: 47 [2018-11-23 12:16:06,571 INFO L226 Difference]: Without dead ends: 32 [2018-11-23 12:16:06,572 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-23 12:16:06,572 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2018-11-23 12:16:06,590 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 31. [2018-11-23 12:16:06,591 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:06,591 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand 31 states. [2018-11-23 12:16:06,591 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand 31 states. [2018-11-23 12:16:06,591 INFO L87 Difference]: Start difference. First operand 32 states. Second operand 31 states. [2018-11-23 12:16:06,594 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:06,595 INFO L93 Difference]: Finished difference Result 32 states and 37 transitions. [2018-11-23 12:16:06,595 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 37 transitions. [2018-11-23 12:16:06,596 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:06,596 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:06,596 INFO L74 IsIncluded]: Start isIncluded. First operand 31 states. Second operand 32 states. [2018-11-23 12:16:06,596 INFO L87 Difference]: Start difference. First operand 31 states. Second operand 32 states. [2018-11-23 12:16:06,599 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:06,599 INFO L93 Difference]: Finished difference Result 32 states and 37 transitions. [2018-11-23 12:16:06,599 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 37 transitions. [2018-11-23 12:16:06,600 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:06,600 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:06,601 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:06,601 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:06,601 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 31 states. [2018-11-23 12:16:06,603 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 36 transitions. [2018-11-23 12:16:06,604 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 36 transitions. Word has length 46 [2018-11-23 12:16:06,604 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:06,604 INFO L480 AbstractCegarLoop]: Abstraction has 31 states and 36 transitions. [2018-11-23 12:16:06,604 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2018-11-23 12:16:06,604 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 36 transitions. [2018-11-23 12:16:06,606 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2018-11-23 12:16:06,606 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:06,606 INFO L402 BasicCegarLoop]: trace histogram [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] [2018-11-23 12:16:06,606 INFO L423 AbstractCegarLoop]: === Iteration 4 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:06,607 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:06,607 INFO L82 PathProgramCache]: Analyzing trace with hash -270429754, now seen corresponding path program 1 times [2018-11-23 12:16:06,607 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:06,607 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:06,609 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:06,609 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:16:06,609 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:06,672 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:06,784 INFO L256 TraceCheckUtils]: 0: Hoare triple {683#true} call ULTIMATE.init(); {683#true} is VALID [2018-11-23 12:16:06,785 INFO L273 TraceCheckUtils]: 1: Hoare triple {683#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {683#true} is VALID [2018-11-23 12:16:06,785 INFO L273 TraceCheckUtils]: 2: Hoare triple {683#true} assume true; {683#true} is VALID [2018-11-23 12:16:06,785 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {683#true} {683#true} #73#return; {683#true} is VALID [2018-11-23 12:16:06,786 INFO L256 TraceCheckUtils]: 4: Hoare triple {683#true} call #t~ret14 := main(); {683#true} is VALID [2018-11-23 12:16:06,790 INFO L273 TraceCheckUtils]: 5: Hoare triple {683#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {685#(= main_~i~1 0)} is VALID [2018-11-23 12:16:06,791 INFO L273 TraceCheckUtils]: 6: Hoare triple {685#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {685#(= main_~i~1 0)} is VALID [2018-11-23 12:16:06,795 INFO L273 TraceCheckUtils]: 7: Hoare triple {685#(= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {686#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:06,797 INFO L273 TraceCheckUtils]: 8: Hoare triple {686#(<= main_~i~1 1)} assume !(~i~1 < 20); {684#false} is VALID [2018-11-23 12:16:06,797 INFO L256 TraceCheckUtils]: 9: Hoare triple {684#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {683#true} is VALID [2018-11-23 12:16:06,797 INFO L273 TraceCheckUtils]: 10: Hoare triple {683#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {683#true} is VALID [2018-11-23 12:16:06,798 INFO L273 TraceCheckUtils]: 11: Hoare triple {683#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {683#true} is VALID [2018-11-23 12:16:06,798 INFO L273 TraceCheckUtils]: 12: Hoare triple {683#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {683#true} is VALID [2018-11-23 12:16:06,798 INFO L273 TraceCheckUtils]: 13: Hoare triple {683#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {683#true} is VALID [2018-11-23 12:16:06,799 INFO L273 TraceCheckUtils]: 14: Hoare triple {683#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {683#true} is VALID [2018-11-23 12:16:06,799 INFO L273 TraceCheckUtils]: 15: Hoare triple {683#true} assume !(~i~0 < 20); {683#true} is VALID [2018-11-23 12:16:06,800 INFO L273 TraceCheckUtils]: 16: Hoare triple {683#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {683#true} is VALID [2018-11-23 12:16:06,800 INFO L273 TraceCheckUtils]: 17: Hoare triple {683#true} assume true; {683#true} is VALID [2018-11-23 12:16:06,800 INFO L268 TraceCheckUtils]: 18: Hoare quadruple {683#true} {684#false} #77#return; {684#false} is VALID [2018-11-23 12:16:06,800 INFO L273 TraceCheckUtils]: 19: Hoare triple {684#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {684#false} is VALID [2018-11-23 12:16:06,801 INFO L256 TraceCheckUtils]: 20: Hoare triple {684#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {683#true} is VALID [2018-11-23 12:16:06,801 INFO L273 TraceCheckUtils]: 21: Hoare triple {683#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {683#true} is VALID [2018-11-23 12:16:06,801 INFO L273 TraceCheckUtils]: 22: Hoare triple {683#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {683#true} is VALID [2018-11-23 12:16:06,802 INFO L273 TraceCheckUtils]: 23: Hoare triple {683#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {683#true} is VALID [2018-11-23 12:16:06,802 INFO L273 TraceCheckUtils]: 24: Hoare triple {683#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {683#true} is VALID [2018-11-23 12:16:06,802 INFO L273 TraceCheckUtils]: 25: Hoare triple {683#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {683#true} is VALID [2018-11-23 12:16:06,803 INFO L273 TraceCheckUtils]: 26: Hoare triple {683#true} assume !(~i~0 < 20); {683#true} is VALID [2018-11-23 12:16:06,803 INFO L273 TraceCheckUtils]: 27: Hoare triple {683#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {683#true} is VALID [2018-11-23 12:16:06,803 INFO L273 TraceCheckUtils]: 28: Hoare triple {683#true} assume true; {683#true} is VALID [2018-11-23 12:16:06,804 INFO L268 TraceCheckUtils]: 29: Hoare quadruple {683#true} {684#false} #79#return; {684#false} is VALID [2018-11-23 12:16:06,804 INFO L273 TraceCheckUtils]: 30: Hoare triple {684#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {684#false} is VALID [2018-11-23 12:16:06,804 INFO L273 TraceCheckUtils]: 31: Hoare triple {684#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {684#false} is VALID [2018-11-23 12:16:06,804 INFO L273 TraceCheckUtils]: 32: Hoare triple {684#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {684#false} is VALID [2018-11-23 12:16:06,805 INFO L273 TraceCheckUtils]: 33: Hoare triple {684#false} assume !(~i~2 < 19); {684#false} is VALID [2018-11-23 12:16:06,805 INFO L273 TraceCheckUtils]: 34: Hoare triple {684#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {684#false} is VALID [2018-11-23 12:16:06,805 INFO L256 TraceCheckUtils]: 35: Hoare triple {684#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {683#true} is VALID [2018-11-23 12:16:06,806 INFO L273 TraceCheckUtils]: 36: Hoare triple {683#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {683#true} is VALID [2018-11-23 12:16:06,806 INFO L273 TraceCheckUtils]: 37: Hoare triple {683#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {683#true} is VALID [2018-11-23 12:16:06,806 INFO L273 TraceCheckUtils]: 38: Hoare triple {683#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {683#true} is VALID [2018-11-23 12:16:06,807 INFO L273 TraceCheckUtils]: 39: Hoare triple {683#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {683#true} is VALID [2018-11-23 12:16:06,807 INFO L273 TraceCheckUtils]: 40: Hoare triple {683#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {683#true} is VALID [2018-11-23 12:16:06,807 INFO L273 TraceCheckUtils]: 41: Hoare triple {683#true} assume !(~i~0 < 20); {683#true} is VALID [2018-11-23 12:16:06,807 INFO L273 TraceCheckUtils]: 42: Hoare triple {683#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {683#true} is VALID [2018-11-23 12:16:06,808 INFO L273 TraceCheckUtils]: 43: Hoare triple {683#true} assume true; {683#true} is VALID [2018-11-23 12:16:06,808 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {683#true} {684#false} #81#return; {684#false} is VALID [2018-11-23 12:16:06,808 INFO L273 TraceCheckUtils]: 45: Hoare triple {684#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {684#false} is VALID [2018-11-23 12:16:06,809 INFO L273 TraceCheckUtils]: 46: Hoare triple {684#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {684#false} is VALID [2018-11-23 12:16:06,809 INFO L273 TraceCheckUtils]: 47: Hoare triple {684#false} assume !false; {684#false} is VALID [2018-11-23 12:16:06,813 INFO L134 CoverageAnalysis]: Checked inductivity of 38 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 37 trivial. 0 not checked. [2018-11-23 12:16:06,813 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:16:06,813 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:16:06,844 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:16:06,894 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:06,915 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:06,917 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:07,214 INFO L256 TraceCheckUtils]: 0: Hoare triple {683#true} call ULTIMATE.init(); {683#true} is VALID [2018-11-23 12:16:07,215 INFO L273 TraceCheckUtils]: 1: Hoare triple {683#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {683#true} is VALID [2018-11-23 12:16:07,216 INFO L273 TraceCheckUtils]: 2: Hoare triple {683#true} assume true; {683#true} is VALID [2018-11-23 12:16:07,216 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {683#true} {683#true} #73#return; {683#true} is VALID [2018-11-23 12:16:07,217 INFO L256 TraceCheckUtils]: 4: Hoare triple {683#true} call #t~ret14 := main(); {683#true} is VALID [2018-11-23 12:16:07,218 INFO L273 TraceCheckUtils]: 5: Hoare triple {683#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {705#(<= main_~i~1 0)} is VALID [2018-11-23 12:16:07,218 INFO L273 TraceCheckUtils]: 6: Hoare triple {705#(<= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {705#(<= main_~i~1 0)} is VALID [2018-11-23 12:16:07,225 INFO L273 TraceCheckUtils]: 7: Hoare triple {705#(<= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {686#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:07,226 INFO L273 TraceCheckUtils]: 8: Hoare triple {686#(<= main_~i~1 1)} assume !(~i~1 < 20); {684#false} is VALID [2018-11-23 12:16:07,226 INFO L256 TraceCheckUtils]: 9: Hoare triple {684#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {684#false} is VALID [2018-11-23 12:16:07,226 INFO L273 TraceCheckUtils]: 10: Hoare triple {684#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {684#false} is VALID [2018-11-23 12:16:07,226 INFO L273 TraceCheckUtils]: 11: Hoare triple {684#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {684#false} is VALID [2018-11-23 12:16:07,227 INFO L273 TraceCheckUtils]: 12: Hoare triple {684#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {684#false} is VALID [2018-11-23 12:16:07,227 INFO L273 TraceCheckUtils]: 13: Hoare triple {684#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {684#false} is VALID [2018-11-23 12:16:07,227 INFO L273 TraceCheckUtils]: 14: Hoare triple {684#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {684#false} is VALID [2018-11-23 12:16:07,227 INFO L273 TraceCheckUtils]: 15: Hoare triple {684#false} assume !(~i~0 < 20); {684#false} is VALID [2018-11-23 12:16:07,228 INFO L273 TraceCheckUtils]: 16: Hoare triple {684#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {684#false} is VALID [2018-11-23 12:16:07,228 INFO L273 TraceCheckUtils]: 17: Hoare triple {684#false} assume true; {684#false} is VALID [2018-11-23 12:16:07,228 INFO L268 TraceCheckUtils]: 18: Hoare quadruple {684#false} {684#false} #77#return; {684#false} is VALID [2018-11-23 12:16:07,228 INFO L273 TraceCheckUtils]: 19: Hoare triple {684#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {684#false} is VALID [2018-11-23 12:16:07,229 INFO L256 TraceCheckUtils]: 20: Hoare triple {684#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {684#false} is VALID [2018-11-23 12:16:07,229 INFO L273 TraceCheckUtils]: 21: Hoare triple {684#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {684#false} is VALID [2018-11-23 12:16:07,229 INFO L273 TraceCheckUtils]: 22: Hoare triple {684#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {684#false} is VALID [2018-11-23 12:16:07,229 INFO L273 TraceCheckUtils]: 23: Hoare triple {684#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {684#false} is VALID [2018-11-23 12:16:07,230 INFO L273 TraceCheckUtils]: 24: Hoare triple {684#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {684#false} is VALID [2018-11-23 12:16:07,230 INFO L273 TraceCheckUtils]: 25: Hoare triple {684#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {684#false} is VALID [2018-11-23 12:16:07,230 INFO L273 TraceCheckUtils]: 26: Hoare triple {684#false} assume !(~i~0 < 20); {684#false} is VALID [2018-11-23 12:16:07,230 INFO L273 TraceCheckUtils]: 27: Hoare triple {684#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {684#false} is VALID [2018-11-23 12:16:07,231 INFO L273 TraceCheckUtils]: 28: Hoare triple {684#false} assume true; {684#false} is VALID [2018-11-23 12:16:07,231 INFO L268 TraceCheckUtils]: 29: Hoare quadruple {684#false} {684#false} #79#return; {684#false} is VALID [2018-11-23 12:16:07,231 INFO L273 TraceCheckUtils]: 30: Hoare triple {684#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {684#false} is VALID [2018-11-23 12:16:07,231 INFO L273 TraceCheckUtils]: 31: Hoare triple {684#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {684#false} is VALID [2018-11-23 12:16:07,232 INFO L273 TraceCheckUtils]: 32: Hoare triple {684#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {684#false} is VALID [2018-11-23 12:16:07,232 INFO L273 TraceCheckUtils]: 33: Hoare triple {684#false} assume !(~i~2 < 19); {684#false} is VALID [2018-11-23 12:16:07,232 INFO L273 TraceCheckUtils]: 34: Hoare triple {684#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {684#false} is VALID [2018-11-23 12:16:07,233 INFO L256 TraceCheckUtils]: 35: Hoare triple {684#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {684#false} is VALID [2018-11-23 12:16:07,233 INFO L273 TraceCheckUtils]: 36: Hoare triple {684#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {684#false} is VALID [2018-11-23 12:16:07,233 INFO L273 TraceCheckUtils]: 37: Hoare triple {684#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {684#false} is VALID [2018-11-23 12:16:07,233 INFO L273 TraceCheckUtils]: 38: Hoare triple {684#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {684#false} is VALID [2018-11-23 12:16:07,234 INFO L273 TraceCheckUtils]: 39: Hoare triple {684#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {684#false} is VALID [2018-11-23 12:16:07,234 INFO L273 TraceCheckUtils]: 40: Hoare triple {684#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {684#false} is VALID [2018-11-23 12:16:07,234 INFO L273 TraceCheckUtils]: 41: Hoare triple {684#false} assume !(~i~0 < 20); {684#false} is VALID [2018-11-23 12:16:07,234 INFO L273 TraceCheckUtils]: 42: Hoare triple {684#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {684#false} is VALID [2018-11-23 12:16:07,235 INFO L273 TraceCheckUtils]: 43: Hoare triple {684#false} assume true; {684#false} is VALID [2018-11-23 12:16:07,235 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {684#false} {684#false} #81#return; {684#false} is VALID [2018-11-23 12:16:07,235 INFO L273 TraceCheckUtils]: 45: Hoare triple {684#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {684#false} is VALID [2018-11-23 12:16:07,236 INFO L273 TraceCheckUtils]: 46: Hoare triple {684#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {684#false} is VALID [2018-11-23 12:16:07,236 INFO L273 TraceCheckUtils]: 47: Hoare triple {684#false} assume !false; {684#false} is VALID [2018-11-23 12:16:07,239 INFO L134 CoverageAnalysis]: Checked inductivity of 38 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 37 trivial. 0 not checked. [2018-11-23 12:16:07,259 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:16:07,259 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4] total 5 [2018-11-23 12:16:07,260 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 48 [2018-11-23 12:16:07,262 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:07,262 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2018-11-23 12:16:07,381 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:16:07,382 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2018-11-23 12:16:07,382 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-23 12:16:07,382 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=10, Unknown=0, NotChecked=0, Total=20 [2018-11-23 12:16:07,383 INFO L87 Difference]: Start difference. First operand 31 states and 36 transitions. Second operand 5 states. [2018-11-23 12:16:07,532 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:07,533 INFO L93 Difference]: Finished difference Result 56 states and 66 transitions. [2018-11-23 12:16:07,533 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-11-23 12:16:07,533 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 48 [2018-11-23 12:16:07,533 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:07,533 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 12:16:07,536 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 62 transitions. [2018-11-23 12:16:07,537 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 12:16:07,539 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 62 transitions. [2018-11-23 12:16:07,539 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 62 transitions. [2018-11-23 12:16:07,694 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:16:07,696 INFO L225 Difference]: With dead ends: 56 [2018-11-23 12:16:07,696 INFO L226 Difference]: Without dead ends: 34 [2018-11-23 12:16:07,697 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 51 GetRequests, 48 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:16:07,697 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2018-11-23 12:16:07,714 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 33. [2018-11-23 12:16:07,715 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:07,715 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand 33 states. [2018-11-23 12:16:07,715 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand 33 states. [2018-11-23 12:16:07,716 INFO L87 Difference]: Start difference. First operand 34 states. Second operand 33 states. [2018-11-23 12:16:07,718 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:07,719 INFO L93 Difference]: Finished difference Result 34 states and 39 transitions. [2018-11-23 12:16:07,719 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 39 transitions. [2018-11-23 12:16:07,720 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:07,720 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:07,720 INFO L74 IsIncluded]: Start isIncluded. First operand 33 states. Second operand 34 states. [2018-11-23 12:16:07,720 INFO L87 Difference]: Start difference. First operand 33 states. Second operand 34 states. [2018-11-23 12:16:07,723 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:07,723 INFO L93 Difference]: Finished difference Result 34 states and 39 transitions. [2018-11-23 12:16:07,723 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 39 transitions. [2018-11-23 12:16:07,724 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:07,724 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:07,725 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:07,725 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:07,725 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 33 states. [2018-11-23 12:16:07,727 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 38 transitions. [2018-11-23 12:16:07,727 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 38 transitions. Word has length 48 [2018-11-23 12:16:07,728 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:07,728 INFO L480 AbstractCegarLoop]: Abstraction has 33 states and 38 transitions. [2018-11-23 12:16:07,728 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2018-11-23 12:16:07,728 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 38 transitions. [2018-11-23 12:16:07,729 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2018-11-23 12:16:07,730 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:07,730 INFO L402 BasicCegarLoop]: trace histogram [3, 3, 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] [2018-11-23 12:16:07,730 INFO L423 AbstractCegarLoop]: === Iteration 5 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:07,730 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:07,731 INFO L82 PathProgramCache]: Analyzing trace with hash 1585951496, now seen corresponding path program 2 times [2018-11-23 12:16:07,731 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:07,731 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:07,732 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:07,732 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:16:07,732 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:07,761 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:07,874 INFO L256 TraceCheckUtils]: 0: Hoare triple {1026#true} call ULTIMATE.init(); {1026#true} is VALID [2018-11-23 12:16:07,875 INFO L273 TraceCheckUtils]: 1: Hoare triple {1026#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {1026#true} is VALID [2018-11-23 12:16:07,875 INFO L273 TraceCheckUtils]: 2: Hoare triple {1026#true} assume true; {1026#true} is VALID [2018-11-23 12:16:07,875 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1026#true} {1026#true} #73#return; {1026#true} is VALID [2018-11-23 12:16:07,875 INFO L256 TraceCheckUtils]: 4: Hoare triple {1026#true} call #t~ret14 := main(); {1026#true} is VALID [2018-11-23 12:16:07,876 INFO L273 TraceCheckUtils]: 5: Hoare triple {1026#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {1028#(= main_~i~1 0)} is VALID [2018-11-23 12:16:07,881 INFO L273 TraceCheckUtils]: 6: Hoare triple {1028#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {1028#(= main_~i~1 0)} is VALID [2018-11-23 12:16:07,883 INFO L273 TraceCheckUtils]: 7: Hoare triple {1028#(= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {1029#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:07,883 INFO L273 TraceCheckUtils]: 8: Hoare triple {1029#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {1029#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:07,885 INFO L273 TraceCheckUtils]: 9: Hoare triple {1029#(<= main_~i~1 1)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {1030#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:07,885 INFO L273 TraceCheckUtils]: 10: Hoare triple {1030#(<= main_~i~1 2)} assume !(~i~1 < 20); {1027#false} is VALID [2018-11-23 12:16:07,886 INFO L256 TraceCheckUtils]: 11: Hoare triple {1027#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {1026#true} is VALID [2018-11-23 12:16:07,886 INFO L273 TraceCheckUtils]: 12: Hoare triple {1026#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1026#true} is VALID [2018-11-23 12:16:07,886 INFO L273 TraceCheckUtils]: 13: Hoare triple {1026#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {1026#true} is VALID [2018-11-23 12:16:07,886 INFO L273 TraceCheckUtils]: 14: Hoare triple {1026#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {1026#true} is VALID [2018-11-23 12:16:07,887 INFO L273 TraceCheckUtils]: 15: Hoare triple {1026#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {1026#true} is VALID [2018-11-23 12:16:07,887 INFO L273 TraceCheckUtils]: 16: Hoare triple {1026#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {1026#true} is VALID [2018-11-23 12:16:07,887 INFO L273 TraceCheckUtils]: 17: Hoare triple {1026#true} assume !(~i~0 < 20); {1026#true} is VALID [2018-11-23 12:16:07,888 INFO L273 TraceCheckUtils]: 18: Hoare triple {1026#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {1026#true} is VALID [2018-11-23 12:16:07,888 INFO L273 TraceCheckUtils]: 19: Hoare triple {1026#true} assume true; {1026#true} is VALID [2018-11-23 12:16:07,888 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {1026#true} {1027#false} #77#return; {1027#false} is VALID [2018-11-23 12:16:07,888 INFO L273 TraceCheckUtils]: 21: Hoare triple {1027#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {1027#false} is VALID [2018-11-23 12:16:07,889 INFO L256 TraceCheckUtils]: 22: Hoare triple {1027#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {1026#true} is VALID [2018-11-23 12:16:07,889 INFO L273 TraceCheckUtils]: 23: Hoare triple {1026#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1026#true} is VALID [2018-11-23 12:16:07,889 INFO L273 TraceCheckUtils]: 24: Hoare triple {1026#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {1026#true} is VALID [2018-11-23 12:16:07,889 INFO L273 TraceCheckUtils]: 25: Hoare triple {1026#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {1026#true} is VALID [2018-11-23 12:16:07,893 INFO L273 TraceCheckUtils]: 26: Hoare triple {1026#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {1026#true} is VALID [2018-11-23 12:16:07,893 INFO L273 TraceCheckUtils]: 27: Hoare triple {1026#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {1026#true} is VALID [2018-11-23 12:16:07,894 INFO L273 TraceCheckUtils]: 28: Hoare triple {1026#true} assume !(~i~0 < 20); {1026#true} is VALID [2018-11-23 12:16:07,894 INFO L273 TraceCheckUtils]: 29: Hoare triple {1026#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {1026#true} is VALID [2018-11-23 12:16:07,894 INFO L273 TraceCheckUtils]: 30: Hoare triple {1026#true} assume true; {1026#true} is VALID [2018-11-23 12:16:07,894 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {1026#true} {1027#false} #79#return; {1027#false} is VALID [2018-11-23 12:16:07,895 INFO L273 TraceCheckUtils]: 32: Hoare triple {1027#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {1027#false} is VALID [2018-11-23 12:16:07,895 INFO L273 TraceCheckUtils]: 33: Hoare triple {1027#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {1027#false} is VALID [2018-11-23 12:16:07,895 INFO L273 TraceCheckUtils]: 34: Hoare triple {1027#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {1027#false} is VALID [2018-11-23 12:16:07,896 INFO L273 TraceCheckUtils]: 35: Hoare triple {1027#false} assume !(~i~2 < 19); {1027#false} is VALID [2018-11-23 12:16:07,896 INFO L273 TraceCheckUtils]: 36: Hoare triple {1027#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {1027#false} is VALID [2018-11-23 12:16:07,897 INFO L256 TraceCheckUtils]: 37: Hoare triple {1027#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {1026#true} is VALID [2018-11-23 12:16:07,897 INFO L273 TraceCheckUtils]: 38: Hoare triple {1026#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1026#true} is VALID [2018-11-23 12:16:07,897 INFO L273 TraceCheckUtils]: 39: Hoare triple {1026#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {1026#true} is VALID [2018-11-23 12:16:07,897 INFO L273 TraceCheckUtils]: 40: Hoare triple {1026#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {1026#true} is VALID [2018-11-23 12:16:07,898 INFO L273 TraceCheckUtils]: 41: Hoare triple {1026#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {1026#true} is VALID [2018-11-23 12:16:07,898 INFO L273 TraceCheckUtils]: 42: Hoare triple {1026#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {1026#true} is VALID [2018-11-23 12:16:07,898 INFO L273 TraceCheckUtils]: 43: Hoare triple {1026#true} assume !(~i~0 < 20); {1026#true} is VALID [2018-11-23 12:16:07,899 INFO L273 TraceCheckUtils]: 44: Hoare triple {1026#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {1026#true} is VALID [2018-11-23 12:16:07,899 INFO L273 TraceCheckUtils]: 45: Hoare triple {1026#true} assume true; {1026#true} is VALID [2018-11-23 12:16:07,899 INFO L268 TraceCheckUtils]: 46: Hoare quadruple {1026#true} {1027#false} #81#return; {1027#false} is VALID [2018-11-23 12:16:07,899 INFO L273 TraceCheckUtils]: 47: Hoare triple {1027#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {1027#false} is VALID [2018-11-23 12:16:07,900 INFO L273 TraceCheckUtils]: 48: Hoare triple {1027#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {1027#false} is VALID [2018-11-23 12:16:07,900 INFO L273 TraceCheckUtils]: 49: Hoare triple {1027#false} assume !false; {1027#false} is VALID [2018-11-23 12:16:07,904 INFO L134 CoverageAnalysis]: Checked inductivity of 41 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 37 trivial. 0 not checked. [2018-11-23 12:16:07,905 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:16:07,905 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:16:07,922 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:16:07,963 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:16:07,963 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:16:07,995 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:07,998 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:08,137 INFO L256 TraceCheckUtils]: 0: Hoare triple {1026#true} call ULTIMATE.init(); {1026#true} is VALID [2018-11-23 12:16:08,138 INFO L273 TraceCheckUtils]: 1: Hoare triple {1026#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {1026#true} is VALID [2018-11-23 12:16:08,138 INFO L273 TraceCheckUtils]: 2: Hoare triple {1026#true} assume true; {1026#true} is VALID [2018-11-23 12:16:08,138 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1026#true} {1026#true} #73#return; {1026#true} is VALID [2018-11-23 12:16:08,139 INFO L256 TraceCheckUtils]: 4: Hoare triple {1026#true} call #t~ret14 := main(); {1026#true} is VALID [2018-11-23 12:16:08,140 INFO L273 TraceCheckUtils]: 5: Hoare triple {1026#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {1049#(<= main_~i~1 0)} is VALID [2018-11-23 12:16:08,142 INFO L273 TraceCheckUtils]: 6: Hoare triple {1049#(<= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {1049#(<= main_~i~1 0)} is VALID [2018-11-23 12:16:08,143 INFO L273 TraceCheckUtils]: 7: Hoare triple {1049#(<= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {1029#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:08,145 INFO L273 TraceCheckUtils]: 8: Hoare triple {1029#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {1029#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:08,147 INFO L273 TraceCheckUtils]: 9: Hoare triple {1029#(<= main_~i~1 1)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {1030#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:08,148 INFO L273 TraceCheckUtils]: 10: Hoare triple {1030#(<= main_~i~1 2)} assume !(~i~1 < 20); {1027#false} is VALID [2018-11-23 12:16:08,149 INFO L256 TraceCheckUtils]: 11: Hoare triple {1027#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {1027#false} is VALID [2018-11-23 12:16:08,149 INFO L273 TraceCheckUtils]: 12: Hoare triple {1027#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1027#false} is VALID [2018-11-23 12:16:08,149 INFO L273 TraceCheckUtils]: 13: Hoare triple {1027#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {1027#false} is VALID [2018-11-23 12:16:08,150 INFO L273 TraceCheckUtils]: 14: Hoare triple {1027#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {1027#false} is VALID [2018-11-23 12:16:08,150 INFO L273 TraceCheckUtils]: 15: Hoare triple {1027#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {1027#false} is VALID [2018-11-23 12:16:08,150 INFO L273 TraceCheckUtils]: 16: Hoare triple {1027#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {1027#false} is VALID [2018-11-23 12:16:08,151 INFO L273 TraceCheckUtils]: 17: Hoare triple {1027#false} assume !(~i~0 < 20); {1027#false} is VALID [2018-11-23 12:16:08,151 INFO L273 TraceCheckUtils]: 18: Hoare triple {1027#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {1027#false} is VALID [2018-11-23 12:16:08,152 INFO L273 TraceCheckUtils]: 19: Hoare triple {1027#false} assume true; {1027#false} is VALID [2018-11-23 12:16:08,152 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {1027#false} {1027#false} #77#return; {1027#false} is VALID [2018-11-23 12:16:08,152 INFO L273 TraceCheckUtils]: 21: Hoare triple {1027#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {1027#false} is VALID [2018-11-23 12:16:08,152 INFO L256 TraceCheckUtils]: 22: Hoare triple {1027#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {1027#false} is VALID [2018-11-23 12:16:08,153 INFO L273 TraceCheckUtils]: 23: Hoare triple {1027#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1027#false} is VALID [2018-11-23 12:16:08,153 INFO L273 TraceCheckUtils]: 24: Hoare triple {1027#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {1027#false} is VALID [2018-11-23 12:16:08,153 INFO L273 TraceCheckUtils]: 25: Hoare triple {1027#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {1027#false} is VALID [2018-11-23 12:16:08,153 INFO L273 TraceCheckUtils]: 26: Hoare triple {1027#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {1027#false} is VALID [2018-11-23 12:16:08,154 INFO L273 TraceCheckUtils]: 27: Hoare triple {1027#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {1027#false} is VALID [2018-11-23 12:16:08,154 INFO L273 TraceCheckUtils]: 28: Hoare triple {1027#false} assume !(~i~0 < 20); {1027#false} is VALID [2018-11-23 12:16:08,154 INFO L273 TraceCheckUtils]: 29: Hoare triple {1027#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {1027#false} is VALID [2018-11-23 12:16:08,154 INFO L273 TraceCheckUtils]: 30: Hoare triple {1027#false} assume true; {1027#false} is VALID [2018-11-23 12:16:08,155 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {1027#false} {1027#false} #79#return; {1027#false} is VALID [2018-11-23 12:16:08,155 INFO L273 TraceCheckUtils]: 32: Hoare triple {1027#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {1027#false} is VALID [2018-11-23 12:16:08,155 INFO L273 TraceCheckUtils]: 33: Hoare triple {1027#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {1027#false} is VALID [2018-11-23 12:16:08,155 INFO L273 TraceCheckUtils]: 34: Hoare triple {1027#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {1027#false} is VALID [2018-11-23 12:16:08,156 INFO L273 TraceCheckUtils]: 35: Hoare triple {1027#false} assume !(~i~2 < 19); {1027#false} is VALID [2018-11-23 12:16:08,156 INFO L273 TraceCheckUtils]: 36: Hoare triple {1027#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {1027#false} is VALID [2018-11-23 12:16:08,156 INFO L256 TraceCheckUtils]: 37: Hoare triple {1027#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {1027#false} is VALID [2018-11-23 12:16:08,156 INFO L273 TraceCheckUtils]: 38: Hoare triple {1027#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1027#false} is VALID [2018-11-23 12:16:08,157 INFO L273 TraceCheckUtils]: 39: Hoare triple {1027#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {1027#false} is VALID [2018-11-23 12:16:08,157 INFO L273 TraceCheckUtils]: 40: Hoare triple {1027#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {1027#false} is VALID [2018-11-23 12:16:08,157 INFO L273 TraceCheckUtils]: 41: Hoare triple {1027#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {1027#false} is VALID [2018-11-23 12:16:08,158 INFO L273 TraceCheckUtils]: 42: Hoare triple {1027#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {1027#false} is VALID [2018-11-23 12:16:08,158 INFO L273 TraceCheckUtils]: 43: Hoare triple {1027#false} assume !(~i~0 < 20); {1027#false} is VALID [2018-11-23 12:16:08,158 INFO L273 TraceCheckUtils]: 44: Hoare triple {1027#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {1027#false} is VALID [2018-11-23 12:16:08,158 INFO L273 TraceCheckUtils]: 45: Hoare triple {1027#false} assume true; {1027#false} is VALID [2018-11-23 12:16:08,159 INFO L268 TraceCheckUtils]: 46: Hoare quadruple {1027#false} {1027#false} #81#return; {1027#false} is VALID [2018-11-23 12:16:08,159 INFO L273 TraceCheckUtils]: 47: Hoare triple {1027#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {1027#false} is VALID [2018-11-23 12:16:08,159 INFO L273 TraceCheckUtils]: 48: Hoare triple {1027#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {1027#false} is VALID [2018-11-23 12:16:08,159 INFO L273 TraceCheckUtils]: 49: Hoare triple {1027#false} assume !false; {1027#false} is VALID [2018-11-23 12:16:08,162 INFO L134 CoverageAnalysis]: Checked inductivity of 41 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 37 trivial. 0 not checked. [2018-11-23 12:16:08,182 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:16:08,182 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 6 [2018-11-23 12:16:08,183 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 50 [2018-11-23 12:16:08,184 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:08,184 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2018-11-23 12:16:08,251 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:16:08,252 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2018-11-23 12:16:08,252 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2018-11-23 12:16:08,252 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2018-11-23 12:16:08,253 INFO L87 Difference]: Start difference. First operand 33 states and 38 transitions. Second operand 6 states. [2018-11-23 12:16:08,490 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:08,490 INFO L93 Difference]: Finished difference Result 58 states and 68 transitions. [2018-11-23 12:16:08,490 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-23 12:16:08,490 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 50 [2018-11-23 12:16:08,491 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:08,491 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 12:16:08,493 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 64 transitions. [2018-11-23 12:16:08,493 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 12:16:08,495 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 64 transitions. [2018-11-23 12:16:08,496 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 64 transitions. [2018-11-23 12:16:08,595 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:16:08,597 INFO L225 Difference]: With dead ends: 58 [2018-11-23 12:16:08,597 INFO L226 Difference]: Without dead ends: 36 [2018-11-23 12:16:08,598 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 54 GetRequests, 50 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2018-11-23 12:16:08,599 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2018-11-23 12:16:08,715 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 35. [2018-11-23 12:16:08,715 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:08,715 INFO L82 GeneralOperation]: Start isEquivalent. First operand 36 states. Second operand 35 states. [2018-11-23 12:16:08,715 INFO L74 IsIncluded]: Start isIncluded. First operand 36 states. Second operand 35 states. [2018-11-23 12:16:08,715 INFO L87 Difference]: Start difference. First operand 36 states. Second operand 35 states. [2018-11-23 12:16:08,718 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:08,719 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2018-11-23 12:16:08,719 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 41 transitions. [2018-11-23 12:16:08,719 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:08,720 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:08,720 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand 36 states. [2018-11-23 12:16:08,720 INFO L87 Difference]: Start difference. First operand 35 states. Second operand 36 states. [2018-11-23 12:16:08,722 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:08,723 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2018-11-23 12:16:08,723 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 41 transitions. [2018-11-23 12:16:08,723 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:08,723 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:08,724 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:08,724 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:08,724 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 35 states. [2018-11-23 12:16:08,726 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 40 transitions. [2018-11-23 12:16:08,726 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 40 transitions. Word has length 50 [2018-11-23 12:16:08,727 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:08,727 INFO L480 AbstractCegarLoop]: Abstraction has 35 states and 40 transitions. [2018-11-23 12:16:08,727 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2018-11-23 12:16:08,727 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 40 transitions. [2018-11-23 12:16:08,728 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2018-11-23 12:16:08,728 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:08,728 INFO L402 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:08,729 INFO L423 AbstractCegarLoop]: === Iteration 6 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:08,729 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:08,729 INFO L82 PathProgramCache]: Analyzing trace with hash -1138062390, now seen corresponding path program 3 times [2018-11-23 12:16:08,729 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:08,730 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:08,730 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:08,731 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:16:08,731 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:08,759 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:08,862 INFO L256 TraceCheckUtils]: 0: Hoare triple {1386#true} call ULTIMATE.init(); {1386#true} is VALID [2018-11-23 12:16:08,863 INFO L273 TraceCheckUtils]: 1: Hoare triple {1386#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {1386#true} is VALID [2018-11-23 12:16:08,863 INFO L273 TraceCheckUtils]: 2: Hoare triple {1386#true} assume true; {1386#true} is VALID [2018-11-23 12:16:08,863 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1386#true} {1386#true} #73#return; {1386#true} is VALID [2018-11-23 12:16:08,864 INFO L256 TraceCheckUtils]: 4: Hoare triple {1386#true} call #t~ret14 := main(); {1386#true} is VALID [2018-11-23 12:16:08,865 INFO L273 TraceCheckUtils]: 5: Hoare triple {1386#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {1388#(= main_~i~1 0)} is VALID [2018-11-23 12:16:08,865 INFO L273 TraceCheckUtils]: 6: Hoare triple {1388#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {1388#(= main_~i~1 0)} is VALID [2018-11-23 12:16:08,867 INFO L273 TraceCheckUtils]: 7: Hoare triple {1388#(= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {1389#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:08,867 INFO L273 TraceCheckUtils]: 8: Hoare triple {1389#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {1389#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:08,870 INFO L273 TraceCheckUtils]: 9: Hoare triple {1389#(<= main_~i~1 1)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {1390#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:08,870 INFO L273 TraceCheckUtils]: 10: Hoare triple {1390#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {1390#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:08,872 INFO L273 TraceCheckUtils]: 11: Hoare triple {1390#(<= main_~i~1 2)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {1391#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:08,872 INFO L273 TraceCheckUtils]: 12: Hoare triple {1391#(<= main_~i~1 3)} assume !(~i~1 < 20); {1387#false} is VALID [2018-11-23 12:16:08,872 INFO L256 TraceCheckUtils]: 13: Hoare triple {1387#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {1386#true} is VALID [2018-11-23 12:16:08,873 INFO L273 TraceCheckUtils]: 14: Hoare triple {1386#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1386#true} is VALID [2018-11-23 12:16:08,873 INFO L273 TraceCheckUtils]: 15: Hoare triple {1386#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {1386#true} is VALID [2018-11-23 12:16:08,873 INFO L273 TraceCheckUtils]: 16: Hoare triple {1386#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {1386#true} is VALID [2018-11-23 12:16:08,873 INFO L273 TraceCheckUtils]: 17: Hoare triple {1386#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {1386#true} is VALID [2018-11-23 12:16:08,873 INFO L273 TraceCheckUtils]: 18: Hoare triple {1386#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {1386#true} is VALID [2018-11-23 12:16:08,874 INFO L273 TraceCheckUtils]: 19: Hoare triple {1386#true} assume !(~i~0 < 20); {1386#true} is VALID [2018-11-23 12:16:08,874 INFO L273 TraceCheckUtils]: 20: Hoare triple {1386#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {1386#true} is VALID [2018-11-23 12:16:08,874 INFO L273 TraceCheckUtils]: 21: Hoare triple {1386#true} assume true; {1386#true} is VALID [2018-11-23 12:16:08,874 INFO L268 TraceCheckUtils]: 22: Hoare quadruple {1386#true} {1387#false} #77#return; {1387#false} is VALID [2018-11-23 12:16:08,874 INFO L273 TraceCheckUtils]: 23: Hoare triple {1387#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {1387#false} is VALID [2018-11-23 12:16:08,877 INFO L256 TraceCheckUtils]: 24: Hoare triple {1387#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {1386#true} is VALID [2018-11-23 12:16:08,877 INFO L273 TraceCheckUtils]: 25: Hoare triple {1386#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1386#true} is VALID [2018-11-23 12:16:08,877 INFO L273 TraceCheckUtils]: 26: Hoare triple {1386#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {1386#true} is VALID [2018-11-23 12:16:08,878 INFO L273 TraceCheckUtils]: 27: Hoare triple {1386#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {1386#true} is VALID [2018-11-23 12:16:08,878 INFO L273 TraceCheckUtils]: 28: Hoare triple {1386#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {1386#true} is VALID [2018-11-23 12:16:08,878 INFO L273 TraceCheckUtils]: 29: Hoare triple {1386#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {1386#true} is VALID [2018-11-23 12:16:08,878 INFO L273 TraceCheckUtils]: 30: Hoare triple {1386#true} assume !(~i~0 < 20); {1386#true} is VALID [2018-11-23 12:16:08,879 INFO L273 TraceCheckUtils]: 31: Hoare triple {1386#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {1386#true} is VALID [2018-11-23 12:16:08,879 INFO L273 TraceCheckUtils]: 32: Hoare triple {1386#true} assume true; {1386#true} is VALID [2018-11-23 12:16:08,879 INFO L268 TraceCheckUtils]: 33: Hoare quadruple {1386#true} {1387#false} #79#return; {1387#false} is VALID [2018-11-23 12:16:08,879 INFO L273 TraceCheckUtils]: 34: Hoare triple {1387#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {1387#false} is VALID [2018-11-23 12:16:08,880 INFO L273 TraceCheckUtils]: 35: Hoare triple {1387#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {1387#false} is VALID [2018-11-23 12:16:08,880 INFO L273 TraceCheckUtils]: 36: Hoare triple {1387#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {1387#false} is VALID [2018-11-23 12:16:08,880 INFO L273 TraceCheckUtils]: 37: Hoare triple {1387#false} assume !(~i~2 < 19); {1387#false} is VALID [2018-11-23 12:16:08,880 INFO L273 TraceCheckUtils]: 38: Hoare triple {1387#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {1387#false} is VALID [2018-11-23 12:16:08,881 INFO L256 TraceCheckUtils]: 39: Hoare triple {1387#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {1386#true} is VALID [2018-11-23 12:16:08,881 INFO L273 TraceCheckUtils]: 40: Hoare triple {1386#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1386#true} is VALID [2018-11-23 12:16:08,881 INFO L273 TraceCheckUtils]: 41: Hoare triple {1386#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {1386#true} is VALID [2018-11-23 12:16:08,882 INFO L273 TraceCheckUtils]: 42: Hoare triple {1386#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {1386#true} is VALID [2018-11-23 12:16:08,882 INFO L273 TraceCheckUtils]: 43: Hoare triple {1386#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {1386#true} is VALID [2018-11-23 12:16:08,882 INFO L273 TraceCheckUtils]: 44: Hoare triple {1386#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {1386#true} is VALID [2018-11-23 12:16:08,882 INFO L273 TraceCheckUtils]: 45: Hoare triple {1386#true} assume !(~i~0 < 20); {1386#true} is VALID [2018-11-23 12:16:08,883 INFO L273 TraceCheckUtils]: 46: Hoare triple {1386#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {1386#true} is VALID [2018-11-23 12:16:08,883 INFO L273 TraceCheckUtils]: 47: Hoare triple {1386#true} assume true; {1386#true} is VALID [2018-11-23 12:16:08,883 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {1386#true} {1387#false} #81#return; {1387#false} is VALID [2018-11-23 12:16:08,883 INFO L273 TraceCheckUtils]: 49: Hoare triple {1387#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {1387#false} is VALID [2018-11-23 12:16:08,884 INFO L273 TraceCheckUtils]: 50: Hoare triple {1387#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {1387#false} is VALID [2018-11-23 12:16:08,884 INFO L273 TraceCheckUtils]: 51: Hoare triple {1387#false} assume !false; {1387#false} is VALID [2018-11-23 12:16:08,887 INFO L134 CoverageAnalysis]: Checked inductivity of 46 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 37 trivial. 0 not checked. [2018-11-23 12:16:08,888 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:16:08,888 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:16:08,901 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:16:08,953 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2018-11-23 12:16:08,953 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:16:08,987 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:08,989 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:09,885 INFO L256 TraceCheckUtils]: 0: Hoare triple {1386#true} call ULTIMATE.init(); {1386#true} is VALID [2018-11-23 12:16:09,886 INFO L273 TraceCheckUtils]: 1: Hoare triple {1386#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {1386#true} is VALID [2018-11-23 12:16:09,886 INFO L273 TraceCheckUtils]: 2: Hoare triple {1386#true} assume true; {1386#true} is VALID [2018-11-23 12:16:09,887 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1386#true} {1386#true} #73#return; {1386#true} is VALID [2018-11-23 12:16:09,887 INFO L256 TraceCheckUtils]: 4: Hoare triple {1386#true} call #t~ret14 := main(); {1386#true} is VALID [2018-11-23 12:16:09,888 INFO L273 TraceCheckUtils]: 5: Hoare triple {1386#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {1386#true} is VALID [2018-11-23 12:16:09,888 INFO L273 TraceCheckUtils]: 6: Hoare triple {1386#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {1386#true} is VALID [2018-11-23 12:16:09,888 INFO L273 TraceCheckUtils]: 7: Hoare triple {1386#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {1386#true} is VALID [2018-11-23 12:16:09,889 INFO L273 TraceCheckUtils]: 8: Hoare triple {1386#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {1386#true} is VALID [2018-11-23 12:16:09,889 INFO L273 TraceCheckUtils]: 9: Hoare triple {1386#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {1386#true} is VALID [2018-11-23 12:16:09,889 INFO L273 TraceCheckUtils]: 10: Hoare triple {1386#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {1386#true} is VALID [2018-11-23 12:16:09,889 INFO L273 TraceCheckUtils]: 11: Hoare triple {1386#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {1386#true} is VALID [2018-11-23 12:16:09,890 INFO L273 TraceCheckUtils]: 12: Hoare triple {1386#true} assume !(~i~1 < 20); {1386#true} is VALID [2018-11-23 12:16:09,890 INFO L256 TraceCheckUtils]: 13: Hoare triple {1386#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {1386#true} is VALID [2018-11-23 12:16:09,890 INFO L273 TraceCheckUtils]: 14: Hoare triple {1386#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1386#true} is VALID [2018-11-23 12:16:09,890 INFO L273 TraceCheckUtils]: 15: Hoare triple {1386#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {1386#true} is VALID [2018-11-23 12:16:09,890 INFO L273 TraceCheckUtils]: 16: Hoare triple {1386#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {1386#true} is VALID [2018-11-23 12:16:09,891 INFO L273 TraceCheckUtils]: 17: Hoare triple {1386#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {1386#true} is VALID [2018-11-23 12:16:09,891 INFO L273 TraceCheckUtils]: 18: Hoare triple {1386#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {1386#true} is VALID [2018-11-23 12:16:09,891 INFO L273 TraceCheckUtils]: 19: Hoare triple {1386#true} assume !(~i~0 < 20); {1386#true} is VALID [2018-11-23 12:16:09,891 INFO L273 TraceCheckUtils]: 20: Hoare triple {1386#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {1386#true} is VALID [2018-11-23 12:16:09,891 INFO L273 TraceCheckUtils]: 21: Hoare triple {1386#true} assume true; {1386#true} is VALID [2018-11-23 12:16:09,891 INFO L268 TraceCheckUtils]: 22: Hoare quadruple {1386#true} {1386#true} #77#return; {1386#true} is VALID [2018-11-23 12:16:09,892 INFO L273 TraceCheckUtils]: 23: Hoare triple {1386#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {1386#true} is VALID [2018-11-23 12:16:09,892 INFO L256 TraceCheckUtils]: 24: Hoare triple {1386#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {1386#true} is VALID [2018-11-23 12:16:09,892 INFO L273 TraceCheckUtils]: 25: Hoare triple {1386#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1386#true} is VALID [2018-11-23 12:16:09,892 INFO L273 TraceCheckUtils]: 26: Hoare triple {1386#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {1386#true} is VALID [2018-11-23 12:16:09,892 INFO L273 TraceCheckUtils]: 27: Hoare triple {1386#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {1386#true} is VALID [2018-11-23 12:16:09,892 INFO L273 TraceCheckUtils]: 28: Hoare triple {1386#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {1386#true} is VALID [2018-11-23 12:16:09,893 INFO L273 TraceCheckUtils]: 29: Hoare triple {1386#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {1386#true} is VALID [2018-11-23 12:16:09,893 INFO L273 TraceCheckUtils]: 30: Hoare triple {1386#true} assume !(~i~0 < 20); {1386#true} is VALID [2018-11-23 12:16:09,893 INFO L273 TraceCheckUtils]: 31: Hoare triple {1386#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {1386#true} is VALID [2018-11-23 12:16:09,893 INFO L273 TraceCheckUtils]: 32: Hoare triple {1386#true} assume true; {1386#true} is VALID [2018-11-23 12:16:09,893 INFO L268 TraceCheckUtils]: 33: Hoare quadruple {1386#true} {1386#true} #79#return; {1386#true} is VALID [2018-11-23 12:16:09,893 INFO L273 TraceCheckUtils]: 34: Hoare triple {1386#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {1386#true} is VALID [2018-11-23 12:16:09,894 INFO L273 TraceCheckUtils]: 35: Hoare triple {1386#true} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {1386#true} is VALID [2018-11-23 12:16:09,894 INFO L273 TraceCheckUtils]: 36: Hoare triple {1386#true} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {1386#true} is VALID [2018-11-23 12:16:09,894 INFO L273 TraceCheckUtils]: 37: Hoare triple {1386#true} assume !(~i~2 < 19); {1386#true} is VALID [2018-11-23 12:16:09,894 INFO L273 TraceCheckUtils]: 38: Hoare triple {1386#true} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {1386#true} is VALID [2018-11-23 12:16:09,894 INFO L256 TraceCheckUtils]: 39: Hoare triple {1386#true} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {1386#true} is VALID [2018-11-23 12:16:09,895 INFO L273 TraceCheckUtils]: 40: Hoare triple {1386#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1515#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:09,895 INFO L273 TraceCheckUtils]: 41: Hoare triple {1515#(<= max_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {1515#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:09,896 INFO L273 TraceCheckUtils]: 42: Hoare triple {1515#(<= max_~i~0 0)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {1515#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:09,899 INFO L273 TraceCheckUtils]: 43: Hoare triple {1515#(<= max_~i~0 0)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {1515#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:09,900 INFO L273 TraceCheckUtils]: 44: Hoare triple {1515#(<= max_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {1528#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:09,900 INFO L273 TraceCheckUtils]: 45: Hoare triple {1528#(<= max_~i~0 1)} assume !(~i~0 < 20); {1387#false} is VALID [2018-11-23 12:16:09,901 INFO L273 TraceCheckUtils]: 46: Hoare triple {1387#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {1387#false} is VALID [2018-11-23 12:16:09,901 INFO L273 TraceCheckUtils]: 47: Hoare triple {1387#false} assume true; {1387#false} is VALID [2018-11-23 12:16:09,901 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {1387#false} {1386#true} #81#return; {1387#false} is VALID [2018-11-23 12:16:09,901 INFO L273 TraceCheckUtils]: 49: Hoare triple {1387#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {1387#false} is VALID [2018-11-23 12:16:09,901 INFO L273 TraceCheckUtils]: 50: Hoare triple {1387#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {1387#false} is VALID [2018-11-23 12:16:09,902 INFO L273 TraceCheckUtils]: 51: Hoare triple {1387#false} assume !false; {1387#false} is VALID [2018-11-23 12:16:09,905 INFO L134 CoverageAnalysis]: Checked inductivity of 46 backedges. 20 proven. 1 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2018-11-23 12:16:09,927 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:16:09,927 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 4] total 8 [2018-11-23 12:16:09,928 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 52 [2018-11-23 12:16:09,928 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:09,928 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2018-11-23 12:16:10,026 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:16:10,027 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2018-11-23 12:16:10,027 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2018-11-23 12:16:10,027 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2018-11-23 12:16:10,027 INFO L87 Difference]: Start difference. First operand 35 states and 40 transitions. Second operand 8 states. [2018-11-23 12:16:10,350 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:10,351 INFO L93 Difference]: Finished difference Result 67 states and 83 transitions. [2018-11-23 12:16:10,351 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2018-11-23 12:16:10,351 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 52 [2018-11-23 12:16:10,352 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:10,352 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-23 12:16:10,355 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 80 transitions. [2018-11-23 12:16:10,355 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-23 12:16:10,357 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 80 transitions. [2018-11-23 12:16:10,358 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 80 transitions. [2018-11-23 12:16:10,474 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:16:10,477 INFO L225 Difference]: With dead ends: 67 [2018-11-23 12:16:10,477 INFO L226 Difference]: Without dead ends: 45 [2018-11-23 12:16:10,478 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 57 GetRequests, 51 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2018-11-23 12:16:10,478 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 45 states. [2018-11-23 12:16:10,498 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 45 to 41. [2018-11-23 12:16:10,499 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:10,499 INFO L82 GeneralOperation]: Start isEquivalent. First operand 45 states. Second operand 41 states. [2018-11-23 12:16:10,499 INFO L74 IsIncluded]: Start isIncluded. First operand 45 states. Second operand 41 states. [2018-11-23 12:16:10,499 INFO L87 Difference]: Start difference. First operand 45 states. Second operand 41 states. [2018-11-23 12:16:10,503 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:10,503 INFO L93 Difference]: Finished difference Result 45 states and 52 transitions. [2018-11-23 12:16:10,504 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 52 transitions. [2018-11-23 12:16:10,504 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:10,504 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:10,504 INFO L74 IsIncluded]: Start isIncluded. First operand 41 states. Second operand 45 states. [2018-11-23 12:16:10,505 INFO L87 Difference]: Start difference. First operand 41 states. Second operand 45 states. [2018-11-23 12:16:10,507 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:10,507 INFO L93 Difference]: Finished difference Result 45 states and 52 transitions. [2018-11-23 12:16:10,508 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 52 transitions. [2018-11-23 12:16:10,508 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:10,508 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:10,508 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:10,509 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:10,509 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 41 states. [2018-11-23 12:16:10,511 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 47 transitions. [2018-11-23 12:16:10,511 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 47 transitions. Word has length 52 [2018-11-23 12:16:10,511 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:10,512 INFO L480 AbstractCegarLoop]: Abstraction has 41 states and 47 transitions. [2018-11-23 12:16:10,512 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2018-11-23 12:16:10,512 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 47 transitions. [2018-11-23 12:16:10,513 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2018-11-23 12:16:10,513 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:10,513 INFO L402 BasicCegarLoop]: trace histogram [6, 6, 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] [2018-11-23 12:16:10,513 INFO L423 AbstractCegarLoop]: === Iteration 7 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:10,514 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:10,514 INFO L82 PathProgramCache]: Analyzing trace with hash 454933031, now seen corresponding path program 4 times [2018-11-23 12:16:10,514 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:10,514 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:10,515 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:10,515 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:16:10,515 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:10,561 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:10,822 INFO L256 TraceCheckUtils]: 0: Hoare triple {1791#true} call ULTIMATE.init(); {1791#true} is VALID [2018-11-23 12:16:10,823 INFO L273 TraceCheckUtils]: 1: Hoare triple {1791#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {1791#true} is VALID [2018-11-23 12:16:10,823 INFO L273 TraceCheckUtils]: 2: Hoare triple {1791#true} assume true; {1791#true} is VALID [2018-11-23 12:16:10,823 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1791#true} {1791#true} #73#return; {1791#true} is VALID [2018-11-23 12:16:10,824 INFO L256 TraceCheckUtils]: 4: Hoare triple {1791#true} call #t~ret14 := main(); {1791#true} is VALID [2018-11-23 12:16:10,824 INFO L273 TraceCheckUtils]: 5: Hoare triple {1791#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {1793#(= main_~i~1 0)} is VALID [2018-11-23 12:16:10,825 INFO L273 TraceCheckUtils]: 6: Hoare triple {1793#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {1793#(= main_~i~1 0)} is VALID [2018-11-23 12:16:10,826 INFO L273 TraceCheckUtils]: 7: Hoare triple {1793#(= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {1794#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:10,826 INFO L273 TraceCheckUtils]: 8: Hoare triple {1794#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {1794#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:10,827 INFO L273 TraceCheckUtils]: 9: Hoare triple {1794#(<= main_~i~1 1)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {1795#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:10,827 INFO L273 TraceCheckUtils]: 10: Hoare triple {1795#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {1795#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:10,828 INFO L273 TraceCheckUtils]: 11: Hoare triple {1795#(<= main_~i~1 2)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {1796#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:10,829 INFO L273 TraceCheckUtils]: 12: Hoare triple {1796#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {1796#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:10,830 INFO L273 TraceCheckUtils]: 13: Hoare triple {1796#(<= main_~i~1 3)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {1797#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:10,831 INFO L273 TraceCheckUtils]: 14: Hoare triple {1797#(<= main_~i~1 4)} assume !(~i~1 < 20); {1792#false} is VALID [2018-11-23 12:16:10,831 INFO L256 TraceCheckUtils]: 15: Hoare triple {1792#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {1791#true} is VALID [2018-11-23 12:16:10,832 INFO L273 TraceCheckUtils]: 16: Hoare triple {1791#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1791#true} is VALID [2018-11-23 12:16:10,832 INFO L273 TraceCheckUtils]: 17: Hoare triple {1791#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {1791#true} is VALID [2018-11-23 12:16:10,832 INFO L273 TraceCheckUtils]: 18: Hoare triple {1791#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {1791#true} is VALID [2018-11-23 12:16:10,832 INFO L273 TraceCheckUtils]: 19: Hoare triple {1791#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {1791#true} is VALID [2018-11-23 12:16:10,833 INFO L273 TraceCheckUtils]: 20: Hoare triple {1791#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {1791#true} is VALID [2018-11-23 12:16:10,833 INFO L273 TraceCheckUtils]: 21: Hoare triple {1791#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {1791#true} is VALID [2018-11-23 12:16:10,833 INFO L273 TraceCheckUtils]: 22: Hoare triple {1791#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {1791#true} is VALID [2018-11-23 12:16:10,834 INFO L273 TraceCheckUtils]: 23: Hoare triple {1791#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {1791#true} is VALID [2018-11-23 12:16:10,834 INFO L273 TraceCheckUtils]: 24: Hoare triple {1791#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {1791#true} is VALID [2018-11-23 12:16:10,834 INFO L273 TraceCheckUtils]: 25: Hoare triple {1791#true} assume !(~i~0 < 20); {1791#true} is VALID [2018-11-23 12:16:10,834 INFO L273 TraceCheckUtils]: 26: Hoare triple {1791#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {1791#true} is VALID [2018-11-23 12:16:10,835 INFO L273 TraceCheckUtils]: 27: Hoare triple {1791#true} assume true; {1791#true} is VALID [2018-11-23 12:16:10,835 INFO L268 TraceCheckUtils]: 28: Hoare quadruple {1791#true} {1792#false} #77#return; {1792#false} is VALID [2018-11-23 12:16:10,835 INFO L273 TraceCheckUtils]: 29: Hoare triple {1792#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {1792#false} is VALID [2018-11-23 12:16:10,835 INFO L256 TraceCheckUtils]: 30: Hoare triple {1792#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {1791#true} is VALID [2018-11-23 12:16:10,836 INFO L273 TraceCheckUtils]: 31: Hoare triple {1791#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1791#true} is VALID [2018-11-23 12:16:10,836 INFO L273 TraceCheckUtils]: 32: Hoare triple {1791#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {1791#true} is VALID [2018-11-23 12:16:10,836 INFO L273 TraceCheckUtils]: 33: Hoare triple {1791#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {1791#true} is VALID [2018-11-23 12:16:10,836 INFO L273 TraceCheckUtils]: 34: Hoare triple {1791#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {1791#true} is VALID [2018-11-23 12:16:10,836 INFO L273 TraceCheckUtils]: 35: Hoare triple {1791#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {1791#true} is VALID [2018-11-23 12:16:10,836 INFO L273 TraceCheckUtils]: 36: Hoare triple {1791#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {1791#true} is VALID [2018-11-23 12:16:10,837 INFO L273 TraceCheckUtils]: 37: Hoare triple {1791#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {1791#true} is VALID [2018-11-23 12:16:10,837 INFO L273 TraceCheckUtils]: 38: Hoare triple {1791#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {1791#true} is VALID [2018-11-23 12:16:10,837 INFO L273 TraceCheckUtils]: 39: Hoare triple {1791#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {1791#true} is VALID [2018-11-23 12:16:10,837 INFO L273 TraceCheckUtils]: 40: Hoare triple {1791#true} assume !(~i~0 < 20); {1791#true} is VALID [2018-11-23 12:16:10,837 INFO L273 TraceCheckUtils]: 41: Hoare triple {1791#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {1791#true} is VALID [2018-11-23 12:16:10,837 INFO L273 TraceCheckUtils]: 42: Hoare triple {1791#true} assume true; {1791#true} is VALID [2018-11-23 12:16:10,838 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {1791#true} {1792#false} #79#return; {1792#false} is VALID [2018-11-23 12:16:10,838 INFO L273 TraceCheckUtils]: 44: Hoare triple {1792#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {1792#false} is VALID [2018-11-23 12:16:10,838 INFO L273 TraceCheckUtils]: 45: Hoare triple {1792#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {1792#false} is VALID [2018-11-23 12:16:10,838 INFO L273 TraceCheckUtils]: 46: Hoare triple {1792#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {1792#false} is VALID [2018-11-23 12:16:10,838 INFO L273 TraceCheckUtils]: 47: Hoare triple {1792#false} assume !(~i~2 < 19); {1792#false} is VALID [2018-11-23 12:16:10,838 INFO L273 TraceCheckUtils]: 48: Hoare triple {1792#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {1792#false} is VALID [2018-11-23 12:16:10,839 INFO L256 TraceCheckUtils]: 49: Hoare triple {1792#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {1791#true} is VALID [2018-11-23 12:16:10,839 INFO L273 TraceCheckUtils]: 50: Hoare triple {1791#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1791#true} is VALID [2018-11-23 12:16:10,839 INFO L273 TraceCheckUtils]: 51: Hoare triple {1791#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {1791#true} is VALID [2018-11-23 12:16:10,839 INFO L273 TraceCheckUtils]: 52: Hoare triple {1791#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {1791#true} is VALID [2018-11-23 12:16:10,839 INFO L273 TraceCheckUtils]: 53: Hoare triple {1791#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {1791#true} is VALID [2018-11-23 12:16:10,840 INFO L273 TraceCheckUtils]: 54: Hoare triple {1791#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {1791#true} is VALID [2018-11-23 12:16:10,840 INFO L273 TraceCheckUtils]: 55: Hoare triple {1791#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {1791#true} is VALID [2018-11-23 12:16:10,840 INFO L273 TraceCheckUtils]: 56: Hoare triple {1791#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {1791#true} is VALID [2018-11-23 12:16:10,840 INFO L273 TraceCheckUtils]: 57: Hoare triple {1791#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {1791#true} is VALID [2018-11-23 12:16:10,840 INFO L273 TraceCheckUtils]: 58: Hoare triple {1791#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {1791#true} is VALID [2018-11-23 12:16:10,840 INFO L273 TraceCheckUtils]: 59: Hoare triple {1791#true} assume !(~i~0 < 20); {1791#true} is VALID [2018-11-23 12:16:10,841 INFO L273 TraceCheckUtils]: 60: Hoare triple {1791#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {1791#true} is VALID [2018-11-23 12:16:10,841 INFO L273 TraceCheckUtils]: 61: Hoare triple {1791#true} assume true; {1791#true} is VALID [2018-11-23 12:16:10,841 INFO L268 TraceCheckUtils]: 62: Hoare quadruple {1791#true} {1792#false} #81#return; {1792#false} is VALID [2018-11-23 12:16:10,841 INFO L273 TraceCheckUtils]: 63: Hoare triple {1792#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {1792#false} is VALID [2018-11-23 12:16:10,841 INFO L273 TraceCheckUtils]: 64: Hoare triple {1792#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {1792#false} is VALID [2018-11-23 12:16:10,841 INFO L273 TraceCheckUtils]: 65: Hoare triple {1792#false} assume !false; {1792#false} is VALID [2018-11-23 12:16:10,847 INFO L134 CoverageAnalysis]: Checked inductivity of 110 backedges. 0 proven. 16 refuted. 0 times theorem prover too weak. 94 trivial. 0 not checked. [2018-11-23 12:16:10,848 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:16:10,848 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:16:10,863 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 12:16:10,909 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 12:16:10,909 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:16:10,957 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:10,959 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:11,158 INFO L256 TraceCheckUtils]: 0: Hoare triple {1791#true} call ULTIMATE.init(); {1791#true} is VALID [2018-11-23 12:16:11,159 INFO L273 TraceCheckUtils]: 1: Hoare triple {1791#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {1791#true} is VALID [2018-11-23 12:16:11,159 INFO L273 TraceCheckUtils]: 2: Hoare triple {1791#true} assume true; {1791#true} is VALID [2018-11-23 12:16:11,159 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1791#true} {1791#true} #73#return; {1791#true} is VALID [2018-11-23 12:16:11,160 INFO L256 TraceCheckUtils]: 4: Hoare triple {1791#true} call #t~ret14 := main(); {1791#true} is VALID [2018-11-23 12:16:11,161 INFO L273 TraceCheckUtils]: 5: Hoare triple {1791#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {1816#(<= main_~i~1 0)} is VALID [2018-11-23 12:16:11,161 INFO L273 TraceCheckUtils]: 6: Hoare triple {1816#(<= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {1816#(<= main_~i~1 0)} is VALID [2018-11-23 12:16:11,162 INFO L273 TraceCheckUtils]: 7: Hoare triple {1816#(<= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {1794#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:11,173 INFO L273 TraceCheckUtils]: 8: Hoare triple {1794#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {1794#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:11,174 INFO L273 TraceCheckUtils]: 9: Hoare triple {1794#(<= main_~i~1 1)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {1795#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:11,175 INFO L273 TraceCheckUtils]: 10: Hoare triple {1795#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {1795#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:11,176 INFO L273 TraceCheckUtils]: 11: Hoare triple {1795#(<= main_~i~1 2)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {1796#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:11,177 INFO L273 TraceCheckUtils]: 12: Hoare triple {1796#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {1796#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:11,178 INFO L273 TraceCheckUtils]: 13: Hoare triple {1796#(<= main_~i~1 3)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {1797#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:11,183 INFO L273 TraceCheckUtils]: 14: Hoare triple {1797#(<= main_~i~1 4)} assume !(~i~1 < 20); {1792#false} is VALID [2018-11-23 12:16:11,183 INFO L256 TraceCheckUtils]: 15: Hoare triple {1792#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {1792#false} is VALID [2018-11-23 12:16:11,183 INFO L273 TraceCheckUtils]: 16: Hoare triple {1792#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1792#false} is VALID [2018-11-23 12:16:11,184 INFO L273 TraceCheckUtils]: 17: Hoare triple {1792#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {1792#false} is VALID [2018-11-23 12:16:11,184 INFO L273 TraceCheckUtils]: 18: Hoare triple {1792#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {1792#false} is VALID [2018-11-23 12:16:11,184 INFO L273 TraceCheckUtils]: 19: Hoare triple {1792#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {1792#false} is VALID [2018-11-23 12:16:11,184 INFO L273 TraceCheckUtils]: 20: Hoare triple {1792#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {1792#false} is VALID [2018-11-23 12:16:11,184 INFO L273 TraceCheckUtils]: 21: Hoare triple {1792#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {1792#false} is VALID [2018-11-23 12:16:11,184 INFO L273 TraceCheckUtils]: 22: Hoare triple {1792#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {1792#false} is VALID [2018-11-23 12:16:11,184 INFO L273 TraceCheckUtils]: 23: Hoare triple {1792#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {1792#false} is VALID [2018-11-23 12:16:11,185 INFO L273 TraceCheckUtils]: 24: Hoare triple {1792#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {1792#false} is VALID [2018-11-23 12:16:11,185 INFO L273 TraceCheckUtils]: 25: Hoare triple {1792#false} assume !(~i~0 < 20); {1792#false} is VALID [2018-11-23 12:16:11,185 INFO L273 TraceCheckUtils]: 26: Hoare triple {1792#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {1792#false} is VALID [2018-11-23 12:16:11,185 INFO L273 TraceCheckUtils]: 27: Hoare triple {1792#false} assume true; {1792#false} is VALID [2018-11-23 12:16:11,185 INFO L268 TraceCheckUtils]: 28: Hoare quadruple {1792#false} {1792#false} #77#return; {1792#false} is VALID [2018-11-23 12:16:11,185 INFO L273 TraceCheckUtils]: 29: Hoare triple {1792#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {1792#false} is VALID [2018-11-23 12:16:11,186 INFO L256 TraceCheckUtils]: 30: Hoare triple {1792#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {1792#false} is VALID [2018-11-23 12:16:11,186 INFO L273 TraceCheckUtils]: 31: Hoare triple {1792#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1792#false} is VALID [2018-11-23 12:16:11,186 INFO L273 TraceCheckUtils]: 32: Hoare triple {1792#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {1792#false} is VALID [2018-11-23 12:16:11,186 INFO L273 TraceCheckUtils]: 33: Hoare triple {1792#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {1792#false} is VALID [2018-11-23 12:16:11,186 INFO L273 TraceCheckUtils]: 34: Hoare triple {1792#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {1792#false} is VALID [2018-11-23 12:16:11,186 INFO L273 TraceCheckUtils]: 35: Hoare triple {1792#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {1792#false} is VALID [2018-11-23 12:16:11,187 INFO L273 TraceCheckUtils]: 36: Hoare triple {1792#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {1792#false} is VALID [2018-11-23 12:16:11,187 INFO L273 TraceCheckUtils]: 37: Hoare triple {1792#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {1792#false} is VALID [2018-11-23 12:16:11,187 INFO L273 TraceCheckUtils]: 38: Hoare triple {1792#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {1792#false} is VALID [2018-11-23 12:16:11,187 INFO L273 TraceCheckUtils]: 39: Hoare triple {1792#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {1792#false} is VALID [2018-11-23 12:16:11,187 INFO L273 TraceCheckUtils]: 40: Hoare triple {1792#false} assume !(~i~0 < 20); {1792#false} is VALID [2018-11-23 12:16:11,187 INFO L273 TraceCheckUtils]: 41: Hoare triple {1792#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {1792#false} is VALID [2018-11-23 12:16:11,188 INFO L273 TraceCheckUtils]: 42: Hoare triple {1792#false} assume true; {1792#false} is VALID [2018-11-23 12:16:11,188 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {1792#false} {1792#false} #79#return; {1792#false} is VALID [2018-11-23 12:16:11,188 INFO L273 TraceCheckUtils]: 44: Hoare triple {1792#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {1792#false} is VALID [2018-11-23 12:16:11,188 INFO L273 TraceCheckUtils]: 45: Hoare triple {1792#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {1792#false} is VALID [2018-11-23 12:16:11,188 INFO L273 TraceCheckUtils]: 46: Hoare triple {1792#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {1792#false} is VALID [2018-11-23 12:16:11,188 INFO L273 TraceCheckUtils]: 47: Hoare triple {1792#false} assume !(~i~2 < 19); {1792#false} is VALID [2018-11-23 12:16:11,189 INFO L273 TraceCheckUtils]: 48: Hoare triple {1792#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {1792#false} is VALID [2018-11-23 12:16:11,189 INFO L256 TraceCheckUtils]: 49: Hoare triple {1792#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {1792#false} is VALID [2018-11-23 12:16:11,189 INFO L273 TraceCheckUtils]: 50: Hoare triple {1792#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {1792#false} is VALID [2018-11-23 12:16:11,189 INFO L273 TraceCheckUtils]: 51: Hoare triple {1792#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {1792#false} is VALID [2018-11-23 12:16:11,189 INFO L273 TraceCheckUtils]: 52: Hoare triple {1792#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {1792#false} is VALID [2018-11-23 12:16:11,189 INFO L273 TraceCheckUtils]: 53: Hoare triple {1792#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {1792#false} is VALID [2018-11-23 12:16:11,190 INFO L273 TraceCheckUtils]: 54: Hoare triple {1792#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {1792#false} is VALID [2018-11-23 12:16:11,190 INFO L273 TraceCheckUtils]: 55: Hoare triple {1792#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {1792#false} is VALID [2018-11-23 12:16:11,190 INFO L273 TraceCheckUtils]: 56: Hoare triple {1792#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {1792#false} is VALID [2018-11-23 12:16:11,190 INFO L273 TraceCheckUtils]: 57: Hoare triple {1792#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {1792#false} is VALID [2018-11-23 12:16:11,190 INFO L273 TraceCheckUtils]: 58: Hoare triple {1792#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {1792#false} is VALID [2018-11-23 12:16:11,190 INFO L273 TraceCheckUtils]: 59: Hoare triple {1792#false} assume !(~i~0 < 20); {1792#false} is VALID [2018-11-23 12:16:11,191 INFO L273 TraceCheckUtils]: 60: Hoare triple {1792#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {1792#false} is VALID [2018-11-23 12:16:11,191 INFO L273 TraceCheckUtils]: 61: Hoare triple {1792#false} assume true; {1792#false} is VALID [2018-11-23 12:16:11,191 INFO L268 TraceCheckUtils]: 62: Hoare quadruple {1792#false} {1792#false} #81#return; {1792#false} is VALID [2018-11-23 12:16:11,191 INFO L273 TraceCheckUtils]: 63: Hoare triple {1792#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {1792#false} is VALID [2018-11-23 12:16:11,191 INFO L273 TraceCheckUtils]: 64: Hoare triple {1792#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {1792#false} is VALID [2018-11-23 12:16:11,191 INFO L273 TraceCheckUtils]: 65: Hoare triple {1792#false} assume !false; {1792#false} is VALID [2018-11-23 12:16:11,195 INFO L134 CoverageAnalysis]: Checked inductivity of 110 backedges. 0 proven. 16 refuted. 0 times theorem prover too weak. 94 trivial. 0 not checked. [2018-11-23 12:16:11,242 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:16:11,242 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 8 [2018-11-23 12:16:11,243 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 66 [2018-11-23 12:16:11,244 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:11,244 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2018-11-23 12:16:11,312 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:16:11,313 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2018-11-23 12:16:11,313 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2018-11-23 12:16:11,313 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=28, Unknown=0, NotChecked=0, Total=56 [2018-11-23 12:16:11,314 INFO L87 Difference]: Start difference. First operand 41 states and 47 transitions. Second operand 8 states. [2018-11-23 12:16:11,728 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:11,728 INFO L93 Difference]: Finished difference Result 70 states and 82 transitions. [2018-11-23 12:16:11,728 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2018-11-23 12:16:11,728 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 66 [2018-11-23 12:16:11,728 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:11,729 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-23 12:16:11,730 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 68 transitions. [2018-11-23 12:16:11,731 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-23 12:16:11,732 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 68 transitions. [2018-11-23 12:16:11,732 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 68 transitions. [2018-11-23 12:16:11,818 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:16:11,820 INFO L225 Difference]: With dead ends: 70 [2018-11-23 12:16:11,821 INFO L226 Difference]: Without dead ends: 44 [2018-11-23 12:16:11,821 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 72 GetRequests, 66 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=28, Invalid=28, Unknown=0, NotChecked=0, Total=56 [2018-11-23 12:16:11,822 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2018-11-23 12:16:11,853 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 43. [2018-11-23 12:16:11,853 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:11,853 INFO L82 GeneralOperation]: Start isEquivalent. First operand 44 states. Second operand 43 states. [2018-11-23 12:16:11,854 INFO L74 IsIncluded]: Start isIncluded. First operand 44 states. Second operand 43 states. [2018-11-23 12:16:11,854 INFO L87 Difference]: Start difference. First operand 44 states. Second operand 43 states. [2018-11-23 12:16:11,856 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:11,856 INFO L93 Difference]: Finished difference Result 44 states and 50 transitions. [2018-11-23 12:16:11,857 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 50 transitions. [2018-11-23 12:16:11,857 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:11,857 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:11,857 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand 44 states. [2018-11-23 12:16:11,858 INFO L87 Difference]: Start difference. First operand 43 states. Second operand 44 states. [2018-11-23 12:16:11,859 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:11,860 INFO L93 Difference]: Finished difference Result 44 states and 50 transitions. [2018-11-23 12:16:11,860 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 50 transitions. [2018-11-23 12:16:11,860 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:11,860 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:11,860 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:11,861 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:11,861 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 43 states. [2018-11-23 12:16:11,862 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 49 transitions. [2018-11-23 12:16:11,863 INFO L78 Accepts]: Start accepts. Automaton has 43 states and 49 transitions. Word has length 66 [2018-11-23 12:16:11,863 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:11,863 INFO L480 AbstractCegarLoop]: Abstraction has 43 states and 49 transitions. [2018-11-23 12:16:11,863 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2018-11-23 12:16:11,863 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 49 transitions. [2018-11-23 12:16:11,864 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 69 [2018-11-23 12:16:11,864 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:11,864 INFO L402 BasicCegarLoop]: trace histogram [6, 6, 6, 6, 5, 5, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:11,865 INFO L423 AbstractCegarLoop]: === Iteration 8 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:11,865 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:11,865 INFO L82 PathProgramCache]: Analyzing trace with hash 1758121705, now seen corresponding path program 5 times [2018-11-23 12:16:11,865 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:11,865 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:11,866 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:11,866 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:16:11,866 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:11,890 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:12,128 INFO L256 TraceCheckUtils]: 0: Hoare triple {2244#true} call ULTIMATE.init(); {2244#true} is VALID [2018-11-23 12:16:12,128 INFO L273 TraceCheckUtils]: 1: Hoare triple {2244#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {2244#true} is VALID [2018-11-23 12:16:12,129 INFO L273 TraceCheckUtils]: 2: Hoare triple {2244#true} assume true; {2244#true} is VALID [2018-11-23 12:16:12,129 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2244#true} {2244#true} #73#return; {2244#true} is VALID [2018-11-23 12:16:12,129 INFO L256 TraceCheckUtils]: 4: Hoare triple {2244#true} call #t~ret14 := main(); {2244#true} is VALID [2018-11-23 12:16:12,130 INFO L273 TraceCheckUtils]: 5: Hoare triple {2244#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {2246#(= main_~i~1 0)} is VALID [2018-11-23 12:16:12,130 INFO L273 TraceCheckUtils]: 6: Hoare triple {2246#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {2246#(= main_~i~1 0)} is VALID [2018-11-23 12:16:12,132 INFO L273 TraceCheckUtils]: 7: Hoare triple {2246#(= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {2247#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:12,132 INFO L273 TraceCheckUtils]: 8: Hoare triple {2247#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {2247#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:12,134 INFO L273 TraceCheckUtils]: 9: Hoare triple {2247#(<= main_~i~1 1)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {2248#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:12,134 INFO L273 TraceCheckUtils]: 10: Hoare triple {2248#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {2248#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:12,136 INFO L273 TraceCheckUtils]: 11: Hoare triple {2248#(<= main_~i~1 2)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {2249#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:12,136 INFO L273 TraceCheckUtils]: 12: Hoare triple {2249#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {2249#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:12,139 INFO L273 TraceCheckUtils]: 13: Hoare triple {2249#(<= main_~i~1 3)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {2250#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:12,139 INFO L273 TraceCheckUtils]: 14: Hoare triple {2250#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {2250#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:12,141 INFO L273 TraceCheckUtils]: 15: Hoare triple {2250#(<= main_~i~1 4)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {2251#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:12,141 INFO L273 TraceCheckUtils]: 16: Hoare triple {2251#(<= main_~i~1 5)} assume !(~i~1 < 20); {2245#false} is VALID [2018-11-23 12:16:12,141 INFO L256 TraceCheckUtils]: 17: Hoare triple {2245#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {2244#true} is VALID [2018-11-23 12:16:12,141 INFO L273 TraceCheckUtils]: 18: Hoare triple {2244#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2244#true} is VALID [2018-11-23 12:16:12,142 INFO L273 TraceCheckUtils]: 19: Hoare triple {2244#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2244#true} is VALID [2018-11-23 12:16:12,142 INFO L273 TraceCheckUtils]: 20: Hoare triple {2244#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2244#true} is VALID [2018-11-23 12:16:12,142 INFO L273 TraceCheckUtils]: 21: Hoare triple {2244#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2244#true} is VALID [2018-11-23 12:16:12,142 INFO L273 TraceCheckUtils]: 22: Hoare triple {2244#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2244#true} is VALID [2018-11-23 12:16:12,142 INFO L273 TraceCheckUtils]: 23: Hoare triple {2244#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2244#true} is VALID [2018-11-23 12:16:12,143 INFO L273 TraceCheckUtils]: 24: Hoare triple {2244#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2244#true} is VALID [2018-11-23 12:16:12,143 INFO L273 TraceCheckUtils]: 25: Hoare triple {2244#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2244#true} is VALID [2018-11-23 12:16:12,143 INFO L273 TraceCheckUtils]: 26: Hoare triple {2244#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2244#true} is VALID [2018-11-23 12:16:12,143 INFO L273 TraceCheckUtils]: 27: Hoare triple {2244#true} assume !(~i~0 < 20); {2244#true} is VALID [2018-11-23 12:16:12,143 INFO L273 TraceCheckUtils]: 28: Hoare triple {2244#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {2244#true} is VALID [2018-11-23 12:16:12,144 INFO L273 TraceCheckUtils]: 29: Hoare triple {2244#true} assume true; {2244#true} is VALID [2018-11-23 12:16:12,144 INFO L268 TraceCheckUtils]: 30: Hoare quadruple {2244#true} {2245#false} #77#return; {2245#false} is VALID [2018-11-23 12:16:12,144 INFO L273 TraceCheckUtils]: 31: Hoare triple {2245#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {2245#false} is VALID [2018-11-23 12:16:12,144 INFO L256 TraceCheckUtils]: 32: Hoare triple {2245#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {2244#true} is VALID [2018-11-23 12:16:12,144 INFO L273 TraceCheckUtils]: 33: Hoare triple {2244#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2244#true} is VALID [2018-11-23 12:16:12,145 INFO L273 TraceCheckUtils]: 34: Hoare triple {2244#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2244#true} is VALID [2018-11-23 12:16:12,145 INFO L273 TraceCheckUtils]: 35: Hoare triple {2244#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2244#true} is VALID [2018-11-23 12:16:12,145 INFO L273 TraceCheckUtils]: 36: Hoare triple {2244#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2244#true} is VALID [2018-11-23 12:16:12,145 INFO L273 TraceCheckUtils]: 37: Hoare triple {2244#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2244#true} is VALID [2018-11-23 12:16:12,146 INFO L273 TraceCheckUtils]: 38: Hoare triple {2244#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2244#true} is VALID [2018-11-23 12:16:12,146 INFO L273 TraceCheckUtils]: 39: Hoare triple {2244#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2244#true} is VALID [2018-11-23 12:16:12,146 INFO L273 TraceCheckUtils]: 40: Hoare triple {2244#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2244#true} is VALID [2018-11-23 12:16:12,146 INFO L273 TraceCheckUtils]: 41: Hoare triple {2244#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2244#true} is VALID [2018-11-23 12:16:12,146 INFO L273 TraceCheckUtils]: 42: Hoare triple {2244#true} assume !(~i~0 < 20); {2244#true} is VALID [2018-11-23 12:16:12,147 INFO L273 TraceCheckUtils]: 43: Hoare triple {2244#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {2244#true} is VALID [2018-11-23 12:16:12,147 INFO L273 TraceCheckUtils]: 44: Hoare triple {2244#true} assume true; {2244#true} is VALID [2018-11-23 12:16:12,147 INFO L268 TraceCheckUtils]: 45: Hoare quadruple {2244#true} {2245#false} #79#return; {2245#false} is VALID [2018-11-23 12:16:12,147 INFO L273 TraceCheckUtils]: 46: Hoare triple {2245#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {2245#false} is VALID [2018-11-23 12:16:12,147 INFO L273 TraceCheckUtils]: 47: Hoare triple {2245#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {2245#false} is VALID [2018-11-23 12:16:12,147 INFO L273 TraceCheckUtils]: 48: Hoare triple {2245#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {2245#false} is VALID [2018-11-23 12:16:12,148 INFO L273 TraceCheckUtils]: 49: Hoare triple {2245#false} assume !(~i~2 < 19); {2245#false} is VALID [2018-11-23 12:16:12,148 INFO L273 TraceCheckUtils]: 50: Hoare triple {2245#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {2245#false} is VALID [2018-11-23 12:16:12,148 INFO L256 TraceCheckUtils]: 51: Hoare triple {2245#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {2244#true} is VALID [2018-11-23 12:16:12,148 INFO L273 TraceCheckUtils]: 52: Hoare triple {2244#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2244#true} is VALID [2018-11-23 12:16:12,148 INFO L273 TraceCheckUtils]: 53: Hoare triple {2244#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2244#true} is VALID [2018-11-23 12:16:12,149 INFO L273 TraceCheckUtils]: 54: Hoare triple {2244#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2244#true} is VALID [2018-11-23 12:16:12,149 INFO L273 TraceCheckUtils]: 55: Hoare triple {2244#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2244#true} is VALID [2018-11-23 12:16:12,149 INFO L273 TraceCheckUtils]: 56: Hoare triple {2244#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2244#true} is VALID [2018-11-23 12:16:12,149 INFO L273 TraceCheckUtils]: 57: Hoare triple {2244#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2244#true} is VALID [2018-11-23 12:16:12,149 INFO L273 TraceCheckUtils]: 58: Hoare triple {2244#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2244#true} is VALID [2018-11-23 12:16:12,149 INFO L273 TraceCheckUtils]: 59: Hoare triple {2244#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2244#true} is VALID [2018-11-23 12:16:12,150 INFO L273 TraceCheckUtils]: 60: Hoare triple {2244#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2244#true} is VALID [2018-11-23 12:16:12,150 INFO L273 TraceCheckUtils]: 61: Hoare triple {2244#true} assume !(~i~0 < 20); {2244#true} is VALID [2018-11-23 12:16:12,150 INFO L273 TraceCheckUtils]: 62: Hoare triple {2244#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {2244#true} is VALID [2018-11-23 12:16:12,150 INFO L273 TraceCheckUtils]: 63: Hoare triple {2244#true} assume true; {2244#true} is VALID [2018-11-23 12:16:12,150 INFO L268 TraceCheckUtils]: 64: Hoare quadruple {2244#true} {2245#false} #81#return; {2245#false} is VALID [2018-11-23 12:16:12,151 INFO L273 TraceCheckUtils]: 65: Hoare triple {2245#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {2245#false} is VALID [2018-11-23 12:16:12,151 INFO L273 TraceCheckUtils]: 66: Hoare triple {2245#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {2245#false} is VALID [2018-11-23 12:16:12,151 INFO L273 TraceCheckUtils]: 67: Hoare triple {2245#false} assume !false; {2245#false} is VALID [2018-11-23 12:16:12,154 INFO L134 CoverageAnalysis]: Checked inductivity of 119 backedges. 0 proven. 25 refuted. 0 times theorem prover too weak. 94 trivial. 0 not checked. [2018-11-23 12:16:12,154 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:16:12,154 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 7 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 7 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:16:12,170 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 12:16:12,233 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 5 check-sat command(s) [2018-11-23 12:16:12,234 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:16:12,263 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:12,266 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:12,488 INFO L256 TraceCheckUtils]: 0: Hoare triple {2244#true} call ULTIMATE.init(); {2244#true} is VALID [2018-11-23 12:16:12,488 INFO L273 TraceCheckUtils]: 1: Hoare triple {2244#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {2244#true} is VALID [2018-11-23 12:16:12,488 INFO L273 TraceCheckUtils]: 2: Hoare triple {2244#true} assume true; {2244#true} is VALID [2018-11-23 12:16:12,489 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2244#true} {2244#true} #73#return; {2244#true} is VALID [2018-11-23 12:16:12,489 INFO L256 TraceCheckUtils]: 4: Hoare triple {2244#true} call #t~ret14 := main(); {2244#true} is VALID [2018-11-23 12:16:12,489 INFO L273 TraceCheckUtils]: 5: Hoare triple {2244#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {2244#true} is VALID [2018-11-23 12:16:12,489 INFO L273 TraceCheckUtils]: 6: Hoare triple {2244#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {2244#true} is VALID [2018-11-23 12:16:12,490 INFO L273 TraceCheckUtils]: 7: Hoare triple {2244#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {2244#true} is VALID [2018-11-23 12:16:12,490 INFO L273 TraceCheckUtils]: 8: Hoare triple {2244#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {2244#true} is VALID [2018-11-23 12:16:12,490 INFO L273 TraceCheckUtils]: 9: Hoare triple {2244#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {2244#true} is VALID [2018-11-23 12:16:12,490 INFO L273 TraceCheckUtils]: 10: Hoare triple {2244#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {2244#true} is VALID [2018-11-23 12:16:12,490 INFO L273 TraceCheckUtils]: 11: Hoare triple {2244#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {2244#true} is VALID [2018-11-23 12:16:12,491 INFO L273 TraceCheckUtils]: 12: Hoare triple {2244#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {2244#true} is VALID [2018-11-23 12:16:12,491 INFO L273 TraceCheckUtils]: 13: Hoare triple {2244#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {2244#true} is VALID [2018-11-23 12:16:12,491 INFO L273 TraceCheckUtils]: 14: Hoare triple {2244#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {2244#true} is VALID [2018-11-23 12:16:12,491 INFO L273 TraceCheckUtils]: 15: Hoare triple {2244#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {2244#true} is VALID [2018-11-23 12:16:12,492 INFO L273 TraceCheckUtils]: 16: Hoare triple {2244#true} assume !(~i~1 < 20); {2244#true} is VALID [2018-11-23 12:16:12,492 INFO L256 TraceCheckUtils]: 17: Hoare triple {2244#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {2244#true} is VALID [2018-11-23 12:16:12,503 INFO L273 TraceCheckUtils]: 18: Hoare triple {2244#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2309#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:12,504 INFO L273 TraceCheckUtils]: 19: Hoare triple {2309#(<= max_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2309#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:12,504 INFO L273 TraceCheckUtils]: 20: Hoare triple {2309#(<= max_~i~0 0)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2309#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:12,507 INFO L273 TraceCheckUtils]: 21: Hoare triple {2309#(<= max_~i~0 0)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2309#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:12,507 INFO L273 TraceCheckUtils]: 22: Hoare triple {2309#(<= max_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2322#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:12,526 INFO L273 TraceCheckUtils]: 23: Hoare triple {2322#(<= max_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2322#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:12,534 INFO L273 TraceCheckUtils]: 24: Hoare triple {2322#(<= max_~i~0 1)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2322#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:12,534 INFO L273 TraceCheckUtils]: 25: Hoare triple {2322#(<= max_~i~0 1)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2322#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:12,536 INFO L273 TraceCheckUtils]: 26: Hoare triple {2322#(<= max_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2335#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:12,541 INFO L273 TraceCheckUtils]: 27: Hoare triple {2335#(<= max_~i~0 2)} assume !(~i~0 < 20); {2245#false} is VALID [2018-11-23 12:16:12,541 INFO L273 TraceCheckUtils]: 28: Hoare triple {2245#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {2245#false} is VALID [2018-11-23 12:16:12,541 INFO L273 TraceCheckUtils]: 29: Hoare triple {2245#false} assume true; {2245#false} is VALID [2018-11-23 12:16:12,541 INFO L268 TraceCheckUtils]: 30: Hoare quadruple {2245#false} {2244#true} #77#return; {2245#false} is VALID [2018-11-23 12:16:12,542 INFO L273 TraceCheckUtils]: 31: Hoare triple {2245#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {2245#false} is VALID [2018-11-23 12:16:12,542 INFO L256 TraceCheckUtils]: 32: Hoare triple {2245#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {2245#false} is VALID [2018-11-23 12:16:12,542 INFO L273 TraceCheckUtils]: 33: Hoare triple {2245#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2245#false} is VALID [2018-11-23 12:16:12,542 INFO L273 TraceCheckUtils]: 34: Hoare triple {2245#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2245#false} is VALID [2018-11-23 12:16:12,542 INFO L273 TraceCheckUtils]: 35: Hoare triple {2245#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2245#false} is VALID [2018-11-23 12:16:12,542 INFO L273 TraceCheckUtils]: 36: Hoare triple {2245#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2245#false} is VALID [2018-11-23 12:16:12,542 INFO L273 TraceCheckUtils]: 37: Hoare triple {2245#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2245#false} is VALID [2018-11-23 12:16:12,542 INFO L273 TraceCheckUtils]: 38: Hoare triple {2245#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2245#false} is VALID [2018-11-23 12:16:12,543 INFO L273 TraceCheckUtils]: 39: Hoare triple {2245#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2245#false} is VALID [2018-11-23 12:16:12,543 INFO L273 TraceCheckUtils]: 40: Hoare triple {2245#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2245#false} is VALID [2018-11-23 12:16:12,543 INFO L273 TraceCheckUtils]: 41: Hoare triple {2245#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2245#false} is VALID [2018-11-23 12:16:12,543 INFO L273 TraceCheckUtils]: 42: Hoare triple {2245#false} assume !(~i~0 < 20); {2245#false} is VALID [2018-11-23 12:16:12,543 INFO L273 TraceCheckUtils]: 43: Hoare triple {2245#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {2245#false} is VALID [2018-11-23 12:16:12,543 INFO L273 TraceCheckUtils]: 44: Hoare triple {2245#false} assume true; {2245#false} is VALID [2018-11-23 12:16:12,543 INFO L268 TraceCheckUtils]: 45: Hoare quadruple {2245#false} {2245#false} #79#return; {2245#false} is VALID [2018-11-23 12:16:12,543 INFO L273 TraceCheckUtils]: 46: Hoare triple {2245#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {2245#false} is VALID [2018-11-23 12:16:12,544 INFO L273 TraceCheckUtils]: 47: Hoare triple {2245#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {2245#false} is VALID [2018-11-23 12:16:12,544 INFO L273 TraceCheckUtils]: 48: Hoare triple {2245#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {2245#false} is VALID [2018-11-23 12:16:12,544 INFO L273 TraceCheckUtils]: 49: Hoare triple {2245#false} assume !(~i~2 < 19); {2245#false} is VALID [2018-11-23 12:16:12,544 INFO L273 TraceCheckUtils]: 50: Hoare triple {2245#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {2245#false} is VALID [2018-11-23 12:16:12,544 INFO L256 TraceCheckUtils]: 51: Hoare triple {2245#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {2245#false} is VALID [2018-11-23 12:16:12,544 INFO L273 TraceCheckUtils]: 52: Hoare triple {2245#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2245#false} is VALID [2018-11-23 12:16:12,544 INFO L273 TraceCheckUtils]: 53: Hoare triple {2245#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2245#false} is VALID [2018-11-23 12:16:12,544 INFO L273 TraceCheckUtils]: 54: Hoare triple {2245#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2245#false} is VALID [2018-11-23 12:16:12,545 INFO L273 TraceCheckUtils]: 55: Hoare triple {2245#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2245#false} is VALID [2018-11-23 12:16:12,545 INFO L273 TraceCheckUtils]: 56: Hoare triple {2245#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2245#false} is VALID [2018-11-23 12:16:12,545 INFO L273 TraceCheckUtils]: 57: Hoare triple {2245#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2245#false} is VALID [2018-11-23 12:16:12,545 INFO L273 TraceCheckUtils]: 58: Hoare triple {2245#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2245#false} is VALID [2018-11-23 12:16:12,545 INFO L273 TraceCheckUtils]: 59: Hoare triple {2245#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2245#false} is VALID [2018-11-23 12:16:12,545 INFO L273 TraceCheckUtils]: 60: Hoare triple {2245#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2245#false} is VALID [2018-11-23 12:16:12,545 INFO L273 TraceCheckUtils]: 61: Hoare triple {2245#false} assume !(~i~0 < 20); {2245#false} is VALID [2018-11-23 12:16:12,546 INFO L273 TraceCheckUtils]: 62: Hoare triple {2245#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {2245#false} is VALID [2018-11-23 12:16:12,546 INFO L273 TraceCheckUtils]: 63: Hoare triple {2245#false} assume true; {2245#false} is VALID [2018-11-23 12:16:12,546 INFO L268 TraceCheckUtils]: 64: Hoare quadruple {2245#false} {2245#false} #81#return; {2245#false} is VALID [2018-11-23 12:16:12,546 INFO L273 TraceCheckUtils]: 65: Hoare triple {2245#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {2245#false} is VALID [2018-11-23 12:16:12,546 INFO L273 TraceCheckUtils]: 66: Hoare triple {2245#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {2245#false} is VALID [2018-11-23 12:16:12,546 INFO L273 TraceCheckUtils]: 67: Hoare triple {2245#false} assume !false; {2245#false} is VALID [2018-11-23 12:16:12,548 INFO L134 CoverageAnalysis]: Checked inductivity of 119 backedges. 44 proven. 6 refuted. 0 times theorem prover too weak. 69 trivial. 0 not checked. [2018-11-23 12:16:12,568 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:16:12,568 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 5] total 11 [2018-11-23 12:16:12,569 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 68 [2018-11-23 12:16:12,569 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:12,570 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states. [2018-11-23 12:16:12,646 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:16:12,646 INFO L459 AbstractCegarLoop]: Interpolant automaton has 11 states [2018-11-23 12:16:12,647 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2018-11-23 12:16:12,647 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=37, Invalid=73, Unknown=0, NotChecked=0, Total=110 [2018-11-23 12:16:12,647 INFO L87 Difference]: Start difference. First operand 43 states and 49 transitions. Second operand 11 states. [2018-11-23 12:16:13,424 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:13,424 INFO L93 Difference]: Finished difference Result 79 states and 97 transitions. [2018-11-23 12:16:13,424 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-23 12:16:13,424 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 68 [2018-11-23 12:16:13,425 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:13,425 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-23 12:16:13,428 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 89 transitions. [2018-11-23 12:16:13,429 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-23 12:16:13,431 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 89 transitions. [2018-11-23 12:16:13,431 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 89 transitions. [2018-11-23 12:16:13,632 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:13,635 INFO L225 Difference]: With dead ends: 79 [2018-11-23 12:16:13,635 INFO L226 Difference]: Without dead ends: 53 [2018-11-23 12:16:13,636 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 75 GetRequests, 66 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 15 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=37, Invalid=73, Unknown=0, NotChecked=0, Total=110 [2018-11-23 12:16:13,637 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 53 states. [2018-11-23 12:16:13,676 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 53 to 49. [2018-11-23 12:16:13,677 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:13,677 INFO L82 GeneralOperation]: Start isEquivalent. First operand 53 states. Second operand 49 states. [2018-11-23 12:16:13,677 INFO L74 IsIncluded]: Start isIncluded. First operand 53 states. Second operand 49 states. [2018-11-23 12:16:13,677 INFO L87 Difference]: Start difference. First operand 53 states. Second operand 49 states. [2018-11-23 12:16:13,681 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:13,681 INFO L93 Difference]: Finished difference Result 53 states and 61 transitions. [2018-11-23 12:16:13,681 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 61 transitions. [2018-11-23 12:16:13,682 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:13,682 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:13,682 INFO L74 IsIncluded]: Start isIncluded. First operand 49 states. Second operand 53 states. [2018-11-23 12:16:13,682 INFO L87 Difference]: Start difference. First operand 49 states. Second operand 53 states. [2018-11-23 12:16:13,685 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:13,685 INFO L93 Difference]: Finished difference Result 53 states and 61 transitions. [2018-11-23 12:16:13,685 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 61 transitions. [2018-11-23 12:16:13,685 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:13,686 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:13,686 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:13,686 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:13,686 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 49 states. [2018-11-23 12:16:13,688 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 49 states to 49 states and 56 transitions. [2018-11-23 12:16:13,688 INFO L78 Accepts]: Start accepts. Automaton has 49 states and 56 transitions. Word has length 68 [2018-11-23 12:16:13,688 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:13,688 INFO L480 AbstractCegarLoop]: Abstraction has 49 states and 56 transitions. [2018-11-23 12:16:13,688 INFO L481 AbstractCegarLoop]: Interpolant automaton has 11 states. [2018-11-23 12:16:13,689 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 56 transitions. [2018-11-23 12:16:13,689 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 83 [2018-11-23 12:16:13,690 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:13,690 INFO L402 BasicCegarLoop]: trace histogram [9, 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] [2018-11-23 12:16:13,690 INFO L423 AbstractCegarLoop]: === Iteration 9 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:13,690 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:13,690 INFO L82 PathProgramCache]: Analyzing trace with hash 1391411910, now seen corresponding path program 6 times [2018-11-23 12:16:13,691 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:13,691 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:13,692 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:13,692 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:16:13,692 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:13,721 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:13,990 INFO L256 TraceCheckUtils]: 0: Hoare triple {2743#true} call ULTIMATE.init(); {2743#true} is VALID [2018-11-23 12:16:13,990 INFO L273 TraceCheckUtils]: 1: Hoare triple {2743#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {2743#true} is VALID [2018-11-23 12:16:13,990 INFO L273 TraceCheckUtils]: 2: Hoare triple {2743#true} assume true; {2743#true} is VALID [2018-11-23 12:16:13,991 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2743#true} {2743#true} #73#return; {2743#true} is VALID [2018-11-23 12:16:13,991 INFO L256 TraceCheckUtils]: 4: Hoare triple {2743#true} call #t~ret14 := main(); {2743#true} is VALID [2018-11-23 12:16:13,991 INFO L273 TraceCheckUtils]: 5: Hoare triple {2743#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {2745#(= main_~i~1 0)} is VALID [2018-11-23 12:16:13,992 INFO L273 TraceCheckUtils]: 6: Hoare triple {2745#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {2745#(= main_~i~1 0)} is VALID [2018-11-23 12:16:13,992 INFO L273 TraceCheckUtils]: 7: Hoare triple {2745#(= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {2746#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:13,993 INFO L273 TraceCheckUtils]: 8: Hoare triple {2746#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {2746#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:13,993 INFO L273 TraceCheckUtils]: 9: Hoare triple {2746#(<= main_~i~1 1)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {2747#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:13,994 INFO L273 TraceCheckUtils]: 10: Hoare triple {2747#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {2747#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:14,013 INFO L273 TraceCheckUtils]: 11: Hoare triple {2747#(<= main_~i~1 2)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {2748#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:14,027 INFO L273 TraceCheckUtils]: 12: Hoare triple {2748#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {2748#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:14,039 INFO L273 TraceCheckUtils]: 13: Hoare triple {2748#(<= main_~i~1 3)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {2749#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:14,039 INFO L273 TraceCheckUtils]: 14: Hoare triple {2749#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {2749#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:14,040 INFO L273 TraceCheckUtils]: 15: Hoare triple {2749#(<= main_~i~1 4)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {2750#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:14,040 INFO L273 TraceCheckUtils]: 16: Hoare triple {2750#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {2750#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:14,041 INFO L273 TraceCheckUtils]: 17: Hoare triple {2750#(<= main_~i~1 5)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {2751#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:14,041 INFO L273 TraceCheckUtils]: 18: Hoare triple {2751#(<= main_~i~1 6)} assume !(~i~1 < 20); {2744#false} is VALID [2018-11-23 12:16:14,041 INFO L256 TraceCheckUtils]: 19: Hoare triple {2744#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {2743#true} is VALID [2018-11-23 12:16:14,041 INFO L273 TraceCheckUtils]: 20: Hoare triple {2743#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2743#true} is VALID [2018-11-23 12:16:14,042 INFO L273 TraceCheckUtils]: 21: Hoare triple {2743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2743#true} is VALID [2018-11-23 12:16:14,042 INFO L273 TraceCheckUtils]: 22: Hoare triple {2743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2743#true} is VALID [2018-11-23 12:16:14,042 INFO L273 TraceCheckUtils]: 23: Hoare triple {2743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2743#true} is VALID [2018-11-23 12:16:14,042 INFO L273 TraceCheckUtils]: 24: Hoare triple {2743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2743#true} is VALID [2018-11-23 12:16:14,042 INFO L273 TraceCheckUtils]: 25: Hoare triple {2743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2743#true} is VALID [2018-11-23 12:16:14,042 INFO L273 TraceCheckUtils]: 26: Hoare triple {2743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2743#true} is VALID [2018-11-23 12:16:14,042 INFO L273 TraceCheckUtils]: 27: Hoare triple {2743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2743#true} is VALID [2018-11-23 12:16:14,043 INFO L273 TraceCheckUtils]: 28: Hoare triple {2743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2743#true} is VALID [2018-11-23 12:16:14,043 INFO L273 TraceCheckUtils]: 29: Hoare triple {2743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2743#true} is VALID [2018-11-23 12:16:14,043 INFO L273 TraceCheckUtils]: 30: Hoare triple {2743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2743#true} is VALID [2018-11-23 12:16:14,043 INFO L273 TraceCheckUtils]: 31: Hoare triple {2743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2743#true} is VALID [2018-11-23 12:16:14,043 INFO L273 TraceCheckUtils]: 32: Hoare triple {2743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2743#true} is VALID [2018-11-23 12:16:14,043 INFO L273 TraceCheckUtils]: 33: Hoare triple {2743#true} assume !(~i~0 < 20); {2743#true} is VALID [2018-11-23 12:16:14,043 INFO L273 TraceCheckUtils]: 34: Hoare triple {2743#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {2743#true} is VALID [2018-11-23 12:16:14,043 INFO L273 TraceCheckUtils]: 35: Hoare triple {2743#true} assume true; {2743#true} is VALID [2018-11-23 12:16:14,044 INFO L268 TraceCheckUtils]: 36: Hoare quadruple {2743#true} {2744#false} #77#return; {2744#false} is VALID [2018-11-23 12:16:14,044 INFO L273 TraceCheckUtils]: 37: Hoare triple {2744#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {2744#false} is VALID [2018-11-23 12:16:14,044 INFO L256 TraceCheckUtils]: 38: Hoare triple {2744#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {2743#true} is VALID [2018-11-23 12:16:14,044 INFO L273 TraceCheckUtils]: 39: Hoare triple {2743#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2743#true} is VALID [2018-11-23 12:16:14,044 INFO L273 TraceCheckUtils]: 40: Hoare triple {2743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2743#true} is VALID [2018-11-23 12:16:14,044 INFO L273 TraceCheckUtils]: 41: Hoare triple {2743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2743#true} is VALID [2018-11-23 12:16:14,044 INFO L273 TraceCheckUtils]: 42: Hoare triple {2743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2743#true} is VALID [2018-11-23 12:16:14,044 INFO L273 TraceCheckUtils]: 43: Hoare triple {2743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2743#true} is VALID [2018-11-23 12:16:14,045 INFO L273 TraceCheckUtils]: 44: Hoare triple {2743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2743#true} is VALID [2018-11-23 12:16:14,045 INFO L273 TraceCheckUtils]: 45: Hoare triple {2743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2743#true} is VALID [2018-11-23 12:16:14,045 INFO L273 TraceCheckUtils]: 46: Hoare triple {2743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2743#true} is VALID [2018-11-23 12:16:14,045 INFO L273 TraceCheckUtils]: 47: Hoare triple {2743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2743#true} is VALID [2018-11-23 12:16:14,045 INFO L273 TraceCheckUtils]: 48: Hoare triple {2743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2743#true} is VALID [2018-11-23 12:16:14,045 INFO L273 TraceCheckUtils]: 49: Hoare triple {2743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2743#true} is VALID [2018-11-23 12:16:14,045 INFO L273 TraceCheckUtils]: 50: Hoare triple {2743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2743#true} is VALID [2018-11-23 12:16:14,045 INFO L273 TraceCheckUtils]: 51: Hoare triple {2743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2743#true} is VALID [2018-11-23 12:16:14,046 INFO L273 TraceCheckUtils]: 52: Hoare triple {2743#true} assume !(~i~0 < 20); {2743#true} is VALID [2018-11-23 12:16:14,046 INFO L273 TraceCheckUtils]: 53: Hoare triple {2743#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {2743#true} is VALID [2018-11-23 12:16:14,046 INFO L273 TraceCheckUtils]: 54: Hoare triple {2743#true} assume true; {2743#true} is VALID [2018-11-23 12:16:14,046 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {2743#true} {2744#false} #79#return; {2744#false} is VALID [2018-11-23 12:16:14,046 INFO L273 TraceCheckUtils]: 56: Hoare triple {2744#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {2744#false} is VALID [2018-11-23 12:16:14,046 INFO L273 TraceCheckUtils]: 57: Hoare triple {2744#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {2744#false} is VALID [2018-11-23 12:16:14,046 INFO L273 TraceCheckUtils]: 58: Hoare triple {2744#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {2744#false} is VALID [2018-11-23 12:16:14,046 INFO L273 TraceCheckUtils]: 59: Hoare triple {2744#false} assume !(~i~2 < 19); {2744#false} is VALID [2018-11-23 12:16:14,047 INFO L273 TraceCheckUtils]: 60: Hoare triple {2744#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {2744#false} is VALID [2018-11-23 12:16:14,047 INFO L256 TraceCheckUtils]: 61: Hoare triple {2744#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {2743#true} is VALID [2018-11-23 12:16:14,047 INFO L273 TraceCheckUtils]: 62: Hoare triple {2743#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2743#true} is VALID [2018-11-23 12:16:14,047 INFO L273 TraceCheckUtils]: 63: Hoare triple {2743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2743#true} is VALID [2018-11-23 12:16:14,047 INFO L273 TraceCheckUtils]: 64: Hoare triple {2743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2743#true} is VALID [2018-11-23 12:16:14,047 INFO L273 TraceCheckUtils]: 65: Hoare triple {2743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2743#true} is VALID [2018-11-23 12:16:14,048 INFO L273 TraceCheckUtils]: 66: Hoare triple {2743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2743#true} is VALID [2018-11-23 12:16:14,048 INFO L273 TraceCheckUtils]: 67: Hoare triple {2743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2743#true} is VALID [2018-11-23 12:16:14,048 INFO L273 TraceCheckUtils]: 68: Hoare triple {2743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2743#true} is VALID [2018-11-23 12:16:14,048 INFO L273 TraceCheckUtils]: 69: Hoare triple {2743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2743#true} is VALID [2018-11-23 12:16:14,048 INFO L273 TraceCheckUtils]: 70: Hoare triple {2743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2743#true} is VALID [2018-11-23 12:16:14,049 INFO L273 TraceCheckUtils]: 71: Hoare triple {2743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2743#true} is VALID [2018-11-23 12:16:14,049 INFO L273 TraceCheckUtils]: 72: Hoare triple {2743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2743#true} is VALID [2018-11-23 12:16:14,049 INFO L273 TraceCheckUtils]: 73: Hoare triple {2743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2743#true} is VALID [2018-11-23 12:16:14,049 INFO L273 TraceCheckUtils]: 74: Hoare triple {2743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2743#true} is VALID [2018-11-23 12:16:14,049 INFO L273 TraceCheckUtils]: 75: Hoare triple {2743#true} assume !(~i~0 < 20); {2743#true} is VALID [2018-11-23 12:16:14,050 INFO L273 TraceCheckUtils]: 76: Hoare triple {2743#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {2743#true} is VALID [2018-11-23 12:16:14,050 INFO L273 TraceCheckUtils]: 77: Hoare triple {2743#true} assume true; {2743#true} is VALID [2018-11-23 12:16:14,050 INFO L268 TraceCheckUtils]: 78: Hoare quadruple {2743#true} {2744#false} #81#return; {2744#false} is VALID [2018-11-23 12:16:14,050 INFO L273 TraceCheckUtils]: 79: Hoare triple {2744#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {2744#false} is VALID [2018-11-23 12:16:14,050 INFO L273 TraceCheckUtils]: 80: Hoare triple {2744#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {2744#false} is VALID [2018-11-23 12:16:14,050 INFO L273 TraceCheckUtils]: 81: Hoare triple {2744#false} assume !false; {2744#false} is VALID [2018-11-23 12:16:14,058 INFO L134 CoverageAnalysis]: Checked inductivity of 223 backedges. 0 proven. 36 refuted. 0 times theorem prover too weak. 187 trivial. 0 not checked. [2018-11-23 12:16:14,059 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:16:14,059 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 8 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 8 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:16:14,076 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 12:16:14,119 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2018-11-23 12:16:14,119 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:16:14,144 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:14,145 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:14,253 INFO L256 TraceCheckUtils]: 0: Hoare triple {2743#true} call ULTIMATE.init(); {2743#true} is VALID [2018-11-23 12:16:14,254 INFO L273 TraceCheckUtils]: 1: Hoare triple {2743#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {2743#true} is VALID [2018-11-23 12:16:14,254 INFO L273 TraceCheckUtils]: 2: Hoare triple {2743#true} assume true; {2743#true} is VALID [2018-11-23 12:16:14,254 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2743#true} {2743#true} #73#return; {2743#true} is VALID [2018-11-23 12:16:14,255 INFO L256 TraceCheckUtils]: 4: Hoare triple {2743#true} call #t~ret14 := main(); {2743#true} is VALID [2018-11-23 12:16:14,255 INFO L273 TraceCheckUtils]: 5: Hoare triple {2743#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {2743#true} is VALID [2018-11-23 12:16:14,255 INFO L273 TraceCheckUtils]: 6: Hoare triple {2743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {2743#true} is VALID [2018-11-23 12:16:14,255 INFO L273 TraceCheckUtils]: 7: Hoare triple {2743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {2743#true} is VALID [2018-11-23 12:16:14,255 INFO L273 TraceCheckUtils]: 8: Hoare triple {2743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {2743#true} is VALID [2018-11-23 12:16:14,256 INFO L273 TraceCheckUtils]: 9: Hoare triple {2743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {2743#true} is VALID [2018-11-23 12:16:14,256 INFO L273 TraceCheckUtils]: 10: Hoare triple {2743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {2743#true} is VALID [2018-11-23 12:16:14,256 INFO L273 TraceCheckUtils]: 11: Hoare triple {2743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {2743#true} is VALID [2018-11-23 12:16:14,256 INFO L273 TraceCheckUtils]: 12: Hoare triple {2743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {2743#true} is VALID [2018-11-23 12:16:14,256 INFO L273 TraceCheckUtils]: 13: Hoare triple {2743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {2743#true} is VALID [2018-11-23 12:16:14,257 INFO L273 TraceCheckUtils]: 14: Hoare triple {2743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {2743#true} is VALID [2018-11-23 12:16:14,257 INFO L273 TraceCheckUtils]: 15: Hoare triple {2743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {2743#true} is VALID [2018-11-23 12:16:14,257 INFO L273 TraceCheckUtils]: 16: Hoare triple {2743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {2743#true} is VALID [2018-11-23 12:16:14,257 INFO L273 TraceCheckUtils]: 17: Hoare triple {2743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {2743#true} is VALID [2018-11-23 12:16:14,257 INFO L273 TraceCheckUtils]: 18: Hoare triple {2743#true} assume !(~i~1 < 20); {2743#true} is VALID [2018-11-23 12:16:14,257 INFO L256 TraceCheckUtils]: 19: Hoare triple {2743#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {2743#true} is VALID [2018-11-23 12:16:14,257 INFO L273 TraceCheckUtils]: 20: Hoare triple {2743#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2743#true} is VALID [2018-11-23 12:16:14,258 INFO L273 TraceCheckUtils]: 21: Hoare triple {2743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2743#true} is VALID [2018-11-23 12:16:14,258 INFO L273 TraceCheckUtils]: 22: Hoare triple {2743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2743#true} is VALID [2018-11-23 12:16:14,258 INFO L273 TraceCheckUtils]: 23: Hoare triple {2743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2743#true} is VALID [2018-11-23 12:16:14,258 INFO L273 TraceCheckUtils]: 24: Hoare triple {2743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2743#true} is VALID [2018-11-23 12:16:14,258 INFO L273 TraceCheckUtils]: 25: Hoare triple {2743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2743#true} is VALID [2018-11-23 12:16:14,258 INFO L273 TraceCheckUtils]: 26: Hoare triple {2743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2743#true} is VALID [2018-11-23 12:16:14,259 INFO L273 TraceCheckUtils]: 27: Hoare triple {2743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2743#true} is VALID [2018-11-23 12:16:14,259 INFO L273 TraceCheckUtils]: 28: Hoare triple {2743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2743#true} is VALID [2018-11-23 12:16:14,259 INFO L273 TraceCheckUtils]: 29: Hoare triple {2743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2743#true} is VALID [2018-11-23 12:16:14,259 INFO L273 TraceCheckUtils]: 30: Hoare triple {2743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2743#true} is VALID [2018-11-23 12:16:14,259 INFO L273 TraceCheckUtils]: 31: Hoare triple {2743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2743#true} is VALID [2018-11-23 12:16:14,260 INFO L273 TraceCheckUtils]: 32: Hoare triple {2743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2743#true} is VALID [2018-11-23 12:16:14,260 INFO L273 TraceCheckUtils]: 33: Hoare triple {2743#true} assume !(~i~0 < 20); {2743#true} is VALID [2018-11-23 12:16:14,260 INFO L273 TraceCheckUtils]: 34: Hoare triple {2743#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {2743#true} is VALID [2018-11-23 12:16:14,260 INFO L273 TraceCheckUtils]: 35: Hoare triple {2743#true} assume true; {2743#true} is VALID [2018-11-23 12:16:14,260 INFO L268 TraceCheckUtils]: 36: Hoare quadruple {2743#true} {2743#true} #77#return; {2743#true} is VALID [2018-11-23 12:16:14,260 INFO L273 TraceCheckUtils]: 37: Hoare triple {2743#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {2743#true} is VALID [2018-11-23 12:16:14,261 INFO L256 TraceCheckUtils]: 38: Hoare triple {2743#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {2743#true} is VALID [2018-11-23 12:16:14,261 INFO L273 TraceCheckUtils]: 39: Hoare triple {2743#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2743#true} is VALID [2018-11-23 12:16:14,261 INFO L273 TraceCheckUtils]: 40: Hoare triple {2743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2743#true} is VALID [2018-11-23 12:16:14,261 INFO L273 TraceCheckUtils]: 41: Hoare triple {2743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2743#true} is VALID [2018-11-23 12:16:14,261 INFO L273 TraceCheckUtils]: 42: Hoare triple {2743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2743#true} is VALID [2018-11-23 12:16:14,261 INFO L273 TraceCheckUtils]: 43: Hoare triple {2743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2743#true} is VALID [2018-11-23 12:16:14,262 INFO L273 TraceCheckUtils]: 44: Hoare triple {2743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2743#true} is VALID [2018-11-23 12:16:14,262 INFO L273 TraceCheckUtils]: 45: Hoare triple {2743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2743#true} is VALID [2018-11-23 12:16:14,262 INFO L273 TraceCheckUtils]: 46: Hoare triple {2743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2743#true} is VALID [2018-11-23 12:16:14,262 INFO L273 TraceCheckUtils]: 47: Hoare triple {2743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2743#true} is VALID [2018-11-23 12:16:14,262 INFO L273 TraceCheckUtils]: 48: Hoare triple {2743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2743#true} is VALID [2018-11-23 12:16:14,263 INFO L273 TraceCheckUtils]: 49: Hoare triple {2743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2743#true} is VALID [2018-11-23 12:16:14,263 INFO L273 TraceCheckUtils]: 50: Hoare triple {2743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2743#true} is VALID [2018-11-23 12:16:14,263 INFO L273 TraceCheckUtils]: 51: Hoare triple {2743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2743#true} is VALID [2018-11-23 12:16:14,263 INFO L273 TraceCheckUtils]: 52: Hoare triple {2743#true} assume !(~i~0 < 20); {2743#true} is VALID [2018-11-23 12:16:14,263 INFO L273 TraceCheckUtils]: 53: Hoare triple {2743#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {2743#true} is VALID [2018-11-23 12:16:14,263 INFO L273 TraceCheckUtils]: 54: Hoare triple {2743#true} assume true; {2743#true} is VALID [2018-11-23 12:16:14,264 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {2743#true} {2743#true} #79#return; {2743#true} is VALID [2018-11-23 12:16:14,284 INFO L273 TraceCheckUtils]: 56: Hoare triple {2743#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {2923#(<= main_~i~2 0)} is VALID [2018-11-23 12:16:14,299 INFO L273 TraceCheckUtils]: 57: Hoare triple {2923#(<= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {2923#(<= main_~i~2 0)} is VALID [2018-11-23 12:16:14,313 INFO L273 TraceCheckUtils]: 58: Hoare triple {2923#(<= main_~i~2 0)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {2930#(<= main_~i~2 1)} is VALID [2018-11-23 12:16:14,327 INFO L273 TraceCheckUtils]: 59: Hoare triple {2930#(<= main_~i~2 1)} assume !(~i~2 < 19); {2744#false} is VALID [2018-11-23 12:16:14,327 INFO L273 TraceCheckUtils]: 60: Hoare triple {2744#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {2744#false} is VALID [2018-11-23 12:16:14,327 INFO L256 TraceCheckUtils]: 61: Hoare triple {2744#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {2744#false} is VALID [2018-11-23 12:16:14,328 INFO L273 TraceCheckUtils]: 62: Hoare triple {2744#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {2744#false} is VALID [2018-11-23 12:16:14,328 INFO L273 TraceCheckUtils]: 63: Hoare triple {2744#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2744#false} is VALID [2018-11-23 12:16:14,328 INFO L273 TraceCheckUtils]: 64: Hoare triple {2744#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2744#false} is VALID [2018-11-23 12:16:14,328 INFO L273 TraceCheckUtils]: 65: Hoare triple {2744#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2744#false} is VALID [2018-11-23 12:16:14,328 INFO L273 TraceCheckUtils]: 66: Hoare triple {2744#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2744#false} is VALID [2018-11-23 12:16:14,329 INFO L273 TraceCheckUtils]: 67: Hoare triple {2744#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2744#false} is VALID [2018-11-23 12:16:14,329 INFO L273 TraceCheckUtils]: 68: Hoare triple {2744#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2744#false} is VALID [2018-11-23 12:16:14,329 INFO L273 TraceCheckUtils]: 69: Hoare triple {2744#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2744#false} is VALID [2018-11-23 12:16:14,329 INFO L273 TraceCheckUtils]: 70: Hoare triple {2744#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2744#false} is VALID [2018-11-23 12:16:14,329 INFO L273 TraceCheckUtils]: 71: Hoare triple {2744#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {2744#false} is VALID [2018-11-23 12:16:14,329 INFO L273 TraceCheckUtils]: 72: Hoare triple {2744#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {2744#false} is VALID [2018-11-23 12:16:14,330 INFO L273 TraceCheckUtils]: 73: Hoare triple {2744#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {2744#false} is VALID [2018-11-23 12:16:14,330 INFO L273 TraceCheckUtils]: 74: Hoare triple {2744#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {2744#false} is VALID [2018-11-23 12:16:14,330 INFO L273 TraceCheckUtils]: 75: Hoare triple {2744#false} assume !(~i~0 < 20); {2744#false} is VALID [2018-11-23 12:16:14,330 INFO L273 TraceCheckUtils]: 76: Hoare triple {2744#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {2744#false} is VALID [2018-11-23 12:16:14,330 INFO L273 TraceCheckUtils]: 77: Hoare triple {2744#false} assume true; {2744#false} is VALID [2018-11-23 12:16:14,330 INFO L268 TraceCheckUtils]: 78: Hoare quadruple {2744#false} {2744#false} #81#return; {2744#false} is VALID [2018-11-23 12:16:14,331 INFO L273 TraceCheckUtils]: 79: Hoare triple {2744#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {2744#false} is VALID [2018-11-23 12:16:14,331 INFO L273 TraceCheckUtils]: 80: Hoare triple {2744#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {2744#false} is VALID [2018-11-23 12:16:14,331 INFO L273 TraceCheckUtils]: 81: Hoare triple {2744#false} assume !false; {2744#false} is VALID [2018-11-23 12:16:14,335 INFO L134 CoverageAnalysis]: Checked inductivity of 223 backedges. 94 proven. 1 refuted. 0 times theorem prover too weak. 128 trivial. 0 not checked. [2018-11-23 12:16:14,363 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:16:14,364 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 4] total 11 [2018-11-23 12:16:14,364 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 82 [2018-11-23 12:16:14,364 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:14,365 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states. [2018-11-23 12:16:14,462 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:16:14,462 INFO L459 AbstractCegarLoop]: Interpolant automaton has 11 states [2018-11-23 12:16:14,462 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2018-11-23 12:16:14,463 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=41, Invalid=69, Unknown=0, NotChecked=0, Total=110 [2018-11-23 12:16:14,463 INFO L87 Difference]: Start difference. First operand 49 states and 56 transitions. Second operand 11 states. [2018-11-23 12:16:14,858 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:14,858 INFO L93 Difference]: Finished difference Result 85 states and 100 transitions. [2018-11-23 12:16:14,858 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-23 12:16:14,858 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 82 [2018-11-23 12:16:14,858 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:14,858 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-23 12:16:14,860 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 77 transitions. [2018-11-23 12:16:14,860 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-23 12:16:14,862 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 77 transitions. [2018-11-23 12:16:14,862 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 77 transitions. [2018-11-23 12:16:14,953 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:14,955 INFO L225 Difference]: With dead ends: 85 [2018-11-23 12:16:14,956 INFO L226 Difference]: Without dead ends: 55 [2018-11-23 12:16:14,957 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 90 GetRequests, 81 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=41, Invalid=69, Unknown=0, NotChecked=0, Total=110 [2018-11-23 12:16:14,957 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2018-11-23 12:16:14,987 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 53. [2018-11-23 12:16:14,987 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:14,987 INFO L82 GeneralOperation]: Start isEquivalent. First operand 55 states. Second operand 53 states. [2018-11-23 12:16:14,988 INFO L74 IsIncluded]: Start isIncluded. First operand 55 states. Second operand 53 states. [2018-11-23 12:16:14,988 INFO L87 Difference]: Start difference. First operand 55 states. Second operand 53 states. [2018-11-23 12:16:14,990 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:14,991 INFO L93 Difference]: Finished difference Result 55 states and 62 transitions. [2018-11-23 12:16:14,991 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 62 transitions. [2018-11-23 12:16:14,991 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:14,991 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:14,992 INFO L74 IsIncluded]: Start isIncluded. First operand 53 states. Second operand 55 states. [2018-11-23 12:16:14,992 INFO L87 Difference]: Start difference. First operand 53 states. Second operand 55 states. [2018-11-23 12:16:14,994 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:14,994 INFO L93 Difference]: Finished difference Result 55 states and 62 transitions. [2018-11-23 12:16:14,995 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 62 transitions. [2018-11-23 12:16:14,995 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:14,995 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:14,995 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:14,995 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:14,995 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 53 states. [2018-11-23 12:16:14,998 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 60 transitions. [2018-11-23 12:16:14,998 INFO L78 Accepts]: Start accepts. Automaton has 53 states and 60 transitions. Word has length 82 [2018-11-23 12:16:14,998 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:14,998 INFO L480 AbstractCegarLoop]: Abstraction has 53 states and 60 transitions. [2018-11-23 12:16:14,998 INFO L481 AbstractCegarLoop]: Interpolant automaton has 11 states. [2018-11-23 12:16:14,998 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 60 transitions. [2018-11-23 12:16:14,999 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 87 [2018-11-23 12:16:14,999 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:15,000 INFO L402 BasicCegarLoop]: trace histogram [9, 9, 9, 9, 7, 7, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:15,000 INFO L423 AbstractCegarLoop]: === Iteration 10 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:15,000 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:15,000 INFO L82 PathProgramCache]: Analyzing trace with hash 197997542, now seen corresponding path program 7 times [2018-11-23 12:16:15,001 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:15,001 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:15,001 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:15,002 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:16:15,002 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:15,025 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:15,198 INFO L256 TraceCheckUtils]: 0: Hoare triple {3303#true} call ULTIMATE.init(); {3303#true} is VALID [2018-11-23 12:16:15,198 INFO L273 TraceCheckUtils]: 1: Hoare triple {3303#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {3303#true} is VALID [2018-11-23 12:16:15,198 INFO L273 TraceCheckUtils]: 2: Hoare triple {3303#true} assume true; {3303#true} is VALID [2018-11-23 12:16:15,199 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3303#true} {3303#true} #73#return; {3303#true} is VALID [2018-11-23 12:16:15,199 INFO L256 TraceCheckUtils]: 4: Hoare triple {3303#true} call #t~ret14 := main(); {3303#true} is VALID [2018-11-23 12:16:15,199 INFO L273 TraceCheckUtils]: 5: Hoare triple {3303#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {3305#(= main_~i~1 0)} is VALID [2018-11-23 12:16:15,199 INFO L273 TraceCheckUtils]: 6: Hoare triple {3305#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3305#(= main_~i~1 0)} is VALID [2018-11-23 12:16:15,200 INFO L273 TraceCheckUtils]: 7: Hoare triple {3305#(= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3306#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:15,200 INFO L273 TraceCheckUtils]: 8: Hoare triple {3306#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3306#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:15,201 INFO L273 TraceCheckUtils]: 9: Hoare triple {3306#(<= main_~i~1 1)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3307#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:15,201 INFO L273 TraceCheckUtils]: 10: Hoare triple {3307#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3307#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:15,202 INFO L273 TraceCheckUtils]: 11: Hoare triple {3307#(<= main_~i~1 2)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3308#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:15,202 INFO L273 TraceCheckUtils]: 12: Hoare triple {3308#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3308#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:15,202 INFO L273 TraceCheckUtils]: 13: Hoare triple {3308#(<= main_~i~1 3)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3309#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:15,203 INFO L273 TraceCheckUtils]: 14: Hoare triple {3309#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3309#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:15,203 INFO L273 TraceCheckUtils]: 15: Hoare triple {3309#(<= main_~i~1 4)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3310#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:15,204 INFO L273 TraceCheckUtils]: 16: Hoare triple {3310#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3310#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:15,204 INFO L273 TraceCheckUtils]: 17: Hoare triple {3310#(<= main_~i~1 5)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3311#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:15,205 INFO L273 TraceCheckUtils]: 18: Hoare triple {3311#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3311#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:15,206 INFO L273 TraceCheckUtils]: 19: Hoare triple {3311#(<= main_~i~1 6)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3312#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:15,207 INFO L273 TraceCheckUtils]: 20: Hoare triple {3312#(<= main_~i~1 7)} assume !(~i~1 < 20); {3304#false} is VALID [2018-11-23 12:16:15,207 INFO L256 TraceCheckUtils]: 21: Hoare triple {3304#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {3303#true} is VALID [2018-11-23 12:16:15,207 INFO L273 TraceCheckUtils]: 22: Hoare triple {3303#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3303#true} is VALID [2018-11-23 12:16:15,207 INFO L273 TraceCheckUtils]: 23: Hoare triple {3303#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3303#true} is VALID [2018-11-23 12:16:15,207 INFO L273 TraceCheckUtils]: 24: Hoare triple {3303#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3303#true} is VALID [2018-11-23 12:16:15,208 INFO L273 TraceCheckUtils]: 25: Hoare triple {3303#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3303#true} is VALID [2018-11-23 12:16:15,208 INFO L273 TraceCheckUtils]: 26: Hoare triple {3303#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3303#true} is VALID [2018-11-23 12:16:15,208 INFO L273 TraceCheckUtils]: 27: Hoare triple {3303#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3303#true} is VALID [2018-11-23 12:16:15,208 INFO L273 TraceCheckUtils]: 28: Hoare triple {3303#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3303#true} is VALID [2018-11-23 12:16:15,208 INFO L273 TraceCheckUtils]: 29: Hoare triple {3303#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3303#true} is VALID [2018-11-23 12:16:15,209 INFO L273 TraceCheckUtils]: 30: Hoare triple {3303#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3303#true} is VALID [2018-11-23 12:16:15,209 INFO L273 TraceCheckUtils]: 31: Hoare triple {3303#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3303#true} is VALID [2018-11-23 12:16:15,209 INFO L273 TraceCheckUtils]: 32: Hoare triple {3303#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3303#true} is VALID [2018-11-23 12:16:15,209 INFO L273 TraceCheckUtils]: 33: Hoare triple {3303#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3303#true} is VALID [2018-11-23 12:16:15,210 INFO L273 TraceCheckUtils]: 34: Hoare triple {3303#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3303#true} is VALID [2018-11-23 12:16:15,210 INFO L273 TraceCheckUtils]: 35: Hoare triple {3303#true} assume !(~i~0 < 20); {3303#true} is VALID [2018-11-23 12:16:15,210 INFO L273 TraceCheckUtils]: 36: Hoare triple {3303#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {3303#true} is VALID [2018-11-23 12:16:15,210 INFO L273 TraceCheckUtils]: 37: Hoare triple {3303#true} assume true; {3303#true} is VALID [2018-11-23 12:16:15,210 INFO L268 TraceCheckUtils]: 38: Hoare quadruple {3303#true} {3304#false} #77#return; {3304#false} is VALID [2018-11-23 12:16:15,211 INFO L273 TraceCheckUtils]: 39: Hoare triple {3304#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {3304#false} is VALID [2018-11-23 12:16:15,211 INFO L256 TraceCheckUtils]: 40: Hoare triple {3304#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {3303#true} is VALID [2018-11-23 12:16:15,211 INFO L273 TraceCheckUtils]: 41: Hoare triple {3303#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3303#true} is VALID [2018-11-23 12:16:15,211 INFO L273 TraceCheckUtils]: 42: Hoare triple {3303#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3303#true} is VALID [2018-11-23 12:16:15,211 INFO L273 TraceCheckUtils]: 43: Hoare triple {3303#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3303#true} is VALID [2018-11-23 12:16:15,212 INFO L273 TraceCheckUtils]: 44: Hoare triple {3303#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3303#true} is VALID [2018-11-23 12:16:15,212 INFO L273 TraceCheckUtils]: 45: Hoare triple {3303#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3303#true} is VALID [2018-11-23 12:16:15,212 INFO L273 TraceCheckUtils]: 46: Hoare triple {3303#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3303#true} is VALID [2018-11-23 12:16:15,212 INFO L273 TraceCheckUtils]: 47: Hoare triple {3303#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3303#true} is VALID [2018-11-23 12:16:15,212 INFO L273 TraceCheckUtils]: 48: Hoare triple {3303#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3303#true} is VALID [2018-11-23 12:16:15,212 INFO L273 TraceCheckUtils]: 49: Hoare triple {3303#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3303#true} is VALID [2018-11-23 12:16:15,213 INFO L273 TraceCheckUtils]: 50: Hoare triple {3303#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3303#true} is VALID [2018-11-23 12:16:15,213 INFO L273 TraceCheckUtils]: 51: Hoare triple {3303#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3303#true} is VALID [2018-11-23 12:16:15,213 INFO L273 TraceCheckUtils]: 52: Hoare triple {3303#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3303#true} is VALID [2018-11-23 12:16:15,213 INFO L273 TraceCheckUtils]: 53: Hoare triple {3303#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3303#true} is VALID [2018-11-23 12:16:15,213 INFO L273 TraceCheckUtils]: 54: Hoare triple {3303#true} assume !(~i~0 < 20); {3303#true} is VALID [2018-11-23 12:16:15,213 INFO L273 TraceCheckUtils]: 55: Hoare triple {3303#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {3303#true} is VALID [2018-11-23 12:16:15,213 INFO L273 TraceCheckUtils]: 56: Hoare triple {3303#true} assume true; {3303#true} is VALID [2018-11-23 12:16:15,213 INFO L268 TraceCheckUtils]: 57: Hoare quadruple {3303#true} {3304#false} #79#return; {3304#false} is VALID [2018-11-23 12:16:15,213 INFO L273 TraceCheckUtils]: 58: Hoare triple {3304#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {3304#false} is VALID [2018-11-23 12:16:15,214 INFO L273 TraceCheckUtils]: 59: Hoare triple {3304#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {3304#false} is VALID [2018-11-23 12:16:15,214 INFO L273 TraceCheckUtils]: 60: Hoare triple {3304#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {3304#false} is VALID [2018-11-23 12:16:15,214 INFO L273 TraceCheckUtils]: 61: Hoare triple {3304#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {3304#false} is VALID [2018-11-23 12:16:15,214 INFO L273 TraceCheckUtils]: 62: Hoare triple {3304#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {3304#false} is VALID [2018-11-23 12:16:15,214 INFO L273 TraceCheckUtils]: 63: Hoare triple {3304#false} assume !(~i~2 < 19); {3304#false} is VALID [2018-11-23 12:16:15,214 INFO L273 TraceCheckUtils]: 64: Hoare triple {3304#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {3304#false} is VALID [2018-11-23 12:16:15,214 INFO L256 TraceCheckUtils]: 65: Hoare triple {3304#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {3303#true} is VALID [2018-11-23 12:16:15,214 INFO L273 TraceCheckUtils]: 66: Hoare triple {3303#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3303#true} is VALID [2018-11-23 12:16:15,215 INFO L273 TraceCheckUtils]: 67: Hoare triple {3303#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3303#true} is VALID [2018-11-23 12:16:15,215 INFO L273 TraceCheckUtils]: 68: Hoare triple {3303#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3303#true} is VALID [2018-11-23 12:16:15,215 INFO L273 TraceCheckUtils]: 69: Hoare triple {3303#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3303#true} is VALID [2018-11-23 12:16:15,215 INFO L273 TraceCheckUtils]: 70: Hoare triple {3303#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3303#true} is VALID [2018-11-23 12:16:15,215 INFO L273 TraceCheckUtils]: 71: Hoare triple {3303#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3303#true} is VALID [2018-11-23 12:16:15,215 INFO L273 TraceCheckUtils]: 72: Hoare triple {3303#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3303#true} is VALID [2018-11-23 12:16:15,215 INFO L273 TraceCheckUtils]: 73: Hoare triple {3303#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3303#true} is VALID [2018-11-23 12:16:15,215 INFO L273 TraceCheckUtils]: 74: Hoare triple {3303#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3303#true} is VALID [2018-11-23 12:16:15,216 INFO L273 TraceCheckUtils]: 75: Hoare triple {3303#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3303#true} is VALID [2018-11-23 12:16:15,216 INFO L273 TraceCheckUtils]: 76: Hoare triple {3303#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3303#true} is VALID [2018-11-23 12:16:15,216 INFO L273 TraceCheckUtils]: 77: Hoare triple {3303#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3303#true} is VALID [2018-11-23 12:16:15,216 INFO L273 TraceCheckUtils]: 78: Hoare triple {3303#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3303#true} is VALID [2018-11-23 12:16:15,216 INFO L273 TraceCheckUtils]: 79: Hoare triple {3303#true} assume !(~i~0 < 20); {3303#true} is VALID [2018-11-23 12:16:15,216 INFO L273 TraceCheckUtils]: 80: Hoare triple {3303#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {3303#true} is VALID [2018-11-23 12:16:15,216 INFO L273 TraceCheckUtils]: 81: Hoare triple {3303#true} assume true; {3303#true} is VALID [2018-11-23 12:16:15,216 INFO L268 TraceCheckUtils]: 82: Hoare quadruple {3303#true} {3304#false} #81#return; {3304#false} is VALID [2018-11-23 12:16:15,217 INFO L273 TraceCheckUtils]: 83: Hoare triple {3304#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {3304#false} is VALID [2018-11-23 12:16:15,217 INFO L273 TraceCheckUtils]: 84: Hoare triple {3304#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {3304#false} is VALID [2018-11-23 12:16:15,217 INFO L273 TraceCheckUtils]: 85: Hoare triple {3304#false} assume !false; {3304#false} is VALID [2018-11-23 12:16:15,221 INFO L134 CoverageAnalysis]: Checked inductivity of 239 backedges. 0 proven. 49 refuted. 0 times theorem prover too weak. 190 trivial. 0 not checked. [2018-11-23 12:16:15,221 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:16:15,221 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 9 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 9 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:16:15,235 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:16:15,282 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:15,302 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:15,305 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:15,431 INFO L256 TraceCheckUtils]: 0: Hoare triple {3303#true} call ULTIMATE.init(); {3303#true} is VALID [2018-11-23 12:16:15,432 INFO L273 TraceCheckUtils]: 1: Hoare triple {3303#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {3303#true} is VALID [2018-11-23 12:16:15,432 INFO L273 TraceCheckUtils]: 2: Hoare triple {3303#true} assume true; {3303#true} is VALID [2018-11-23 12:16:15,432 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3303#true} {3303#true} #73#return; {3303#true} is VALID [2018-11-23 12:16:15,432 INFO L256 TraceCheckUtils]: 4: Hoare triple {3303#true} call #t~ret14 := main(); {3303#true} is VALID [2018-11-23 12:16:15,433 INFO L273 TraceCheckUtils]: 5: Hoare triple {3303#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {3331#(<= main_~i~1 0)} is VALID [2018-11-23 12:16:15,434 INFO L273 TraceCheckUtils]: 6: Hoare triple {3331#(<= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3331#(<= main_~i~1 0)} is VALID [2018-11-23 12:16:15,434 INFO L273 TraceCheckUtils]: 7: Hoare triple {3331#(<= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3306#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:15,435 INFO L273 TraceCheckUtils]: 8: Hoare triple {3306#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3306#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:15,436 INFO L273 TraceCheckUtils]: 9: Hoare triple {3306#(<= main_~i~1 1)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3307#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:15,436 INFO L273 TraceCheckUtils]: 10: Hoare triple {3307#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3307#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:15,437 INFO L273 TraceCheckUtils]: 11: Hoare triple {3307#(<= main_~i~1 2)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3308#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:15,437 INFO L273 TraceCheckUtils]: 12: Hoare triple {3308#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3308#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:15,438 INFO L273 TraceCheckUtils]: 13: Hoare triple {3308#(<= main_~i~1 3)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3309#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:15,439 INFO L273 TraceCheckUtils]: 14: Hoare triple {3309#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3309#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:15,439 INFO L273 TraceCheckUtils]: 15: Hoare triple {3309#(<= main_~i~1 4)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3310#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:15,440 INFO L273 TraceCheckUtils]: 16: Hoare triple {3310#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3310#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:15,441 INFO L273 TraceCheckUtils]: 17: Hoare triple {3310#(<= main_~i~1 5)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3311#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:15,441 INFO L273 TraceCheckUtils]: 18: Hoare triple {3311#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3311#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:15,442 INFO L273 TraceCheckUtils]: 19: Hoare triple {3311#(<= main_~i~1 6)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3312#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:15,443 INFO L273 TraceCheckUtils]: 20: Hoare triple {3312#(<= main_~i~1 7)} assume !(~i~1 < 20); {3304#false} is VALID [2018-11-23 12:16:15,443 INFO L256 TraceCheckUtils]: 21: Hoare triple {3304#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {3304#false} is VALID [2018-11-23 12:16:15,443 INFO L273 TraceCheckUtils]: 22: Hoare triple {3304#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3304#false} is VALID [2018-11-23 12:16:15,443 INFO L273 TraceCheckUtils]: 23: Hoare triple {3304#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3304#false} is VALID [2018-11-23 12:16:15,444 INFO L273 TraceCheckUtils]: 24: Hoare triple {3304#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3304#false} is VALID [2018-11-23 12:16:15,444 INFO L273 TraceCheckUtils]: 25: Hoare triple {3304#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3304#false} is VALID [2018-11-23 12:16:15,444 INFO L273 TraceCheckUtils]: 26: Hoare triple {3304#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3304#false} is VALID [2018-11-23 12:16:15,444 INFO L273 TraceCheckUtils]: 27: Hoare triple {3304#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3304#false} is VALID [2018-11-23 12:16:15,444 INFO L273 TraceCheckUtils]: 28: Hoare triple {3304#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3304#false} is VALID [2018-11-23 12:16:15,445 INFO L273 TraceCheckUtils]: 29: Hoare triple {3304#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3304#false} is VALID [2018-11-23 12:16:15,445 INFO L273 TraceCheckUtils]: 30: Hoare triple {3304#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3304#false} is VALID [2018-11-23 12:16:15,445 INFO L273 TraceCheckUtils]: 31: Hoare triple {3304#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3304#false} is VALID [2018-11-23 12:16:15,445 INFO L273 TraceCheckUtils]: 32: Hoare triple {3304#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3304#false} is VALID [2018-11-23 12:16:15,445 INFO L273 TraceCheckUtils]: 33: Hoare triple {3304#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3304#false} is VALID [2018-11-23 12:16:15,446 INFO L273 TraceCheckUtils]: 34: Hoare triple {3304#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3304#false} is VALID [2018-11-23 12:16:15,446 INFO L273 TraceCheckUtils]: 35: Hoare triple {3304#false} assume !(~i~0 < 20); {3304#false} is VALID [2018-11-23 12:16:15,446 INFO L273 TraceCheckUtils]: 36: Hoare triple {3304#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {3304#false} is VALID [2018-11-23 12:16:15,446 INFO L273 TraceCheckUtils]: 37: Hoare triple {3304#false} assume true; {3304#false} is VALID [2018-11-23 12:16:15,447 INFO L268 TraceCheckUtils]: 38: Hoare quadruple {3304#false} {3304#false} #77#return; {3304#false} is VALID [2018-11-23 12:16:15,447 INFO L273 TraceCheckUtils]: 39: Hoare triple {3304#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {3304#false} is VALID [2018-11-23 12:16:15,447 INFO L256 TraceCheckUtils]: 40: Hoare triple {3304#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {3304#false} is VALID [2018-11-23 12:16:15,447 INFO L273 TraceCheckUtils]: 41: Hoare triple {3304#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3304#false} is VALID [2018-11-23 12:16:15,448 INFO L273 TraceCheckUtils]: 42: Hoare triple {3304#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3304#false} is VALID [2018-11-23 12:16:15,448 INFO L273 TraceCheckUtils]: 43: Hoare triple {3304#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3304#false} is VALID [2018-11-23 12:16:15,448 INFO L273 TraceCheckUtils]: 44: Hoare triple {3304#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3304#false} is VALID [2018-11-23 12:16:15,448 INFO L273 TraceCheckUtils]: 45: Hoare triple {3304#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3304#false} is VALID [2018-11-23 12:16:15,449 INFO L273 TraceCheckUtils]: 46: Hoare triple {3304#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3304#false} is VALID [2018-11-23 12:16:15,449 INFO L273 TraceCheckUtils]: 47: Hoare triple {3304#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3304#false} is VALID [2018-11-23 12:16:15,449 INFO L273 TraceCheckUtils]: 48: Hoare triple {3304#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3304#false} is VALID [2018-11-23 12:16:15,449 INFO L273 TraceCheckUtils]: 49: Hoare triple {3304#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3304#false} is VALID [2018-11-23 12:16:15,449 INFO L273 TraceCheckUtils]: 50: Hoare triple {3304#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3304#false} is VALID [2018-11-23 12:16:15,449 INFO L273 TraceCheckUtils]: 51: Hoare triple {3304#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3304#false} is VALID [2018-11-23 12:16:15,449 INFO L273 TraceCheckUtils]: 52: Hoare triple {3304#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3304#false} is VALID [2018-11-23 12:16:15,450 INFO L273 TraceCheckUtils]: 53: Hoare triple {3304#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3304#false} is VALID [2018-11-23 12:16:15,450 INFO L273 TraceCheckUtils]: 54: Hoare triple {3304#false} assume !(~i~0 < 20); {3304#false} is VALID [2018-11-23 12:16:15,450 INFO L273 TraceCheckUtils]: 55: Hoare triple {3304#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {3304#false} is VALID [2018-11-23 12:16:15,450 INFO L273 TraceCheckUtils]: 56: Hoare triple {3304#false} assume true; {3304#false} is VALID [2018-11-23 12:16:15,450 INFO L268 TraceCheckUtils]: 57: Hoare quadruple {3304#false} {3304#false} #79#return; {3304#false} is VALID [2018-11-23 12:16:15,450 INFO L273 TraceCheckUtils]: 58: Hoare triple {3304#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {3304#false} is VALID [2018-11-23 12:16:15,451 INFO L273 TraceCheckUtils]: 59: Hoare triple {3304#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {3304#false} is VALID [2018-11-23 12:16:15,451 INFO L273 TraceCheckUtils]: 60: Hoare triple {3304#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {3304#false} is VALID [2018-11-23 12:16:15,451 INFO L273 TraceCheckUtils]: 61: Hoare triple {3304#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {3304#false} is VALID [2018-11-23 12:16:15,451 INFO L273 TraceCheckUtils]: 62: Hoare triple {3304#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {3304#false} is VALID [2018-11-23 12:16:15,451 INFO L273 TraceCheckUtils]: 63: Hoare triple {3304#false} assume !(~i~2 < 19); {3304#false} is VALID [2018-11-23 12:16:15,451 INFO L273 TraceCheckUtils]: 64: Hoare triple {3304#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {3304#false} is VALID [2018-11-23 12:16:15,451 INFO L256 TraceCheckUtils]: 65: Hoare triple {3304#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {3304#false} is VALID [2018-11-23 12:16:15,452 INFO L273 TraceCheckUtils]: 66: Hoare triple {3304#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3304#false} is VALID [2018-11-23 12:16:15,452 INFO L273 TraceCheckUtils]: 67: Hoare triple {3304#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3304#false} is VALID [2018-11-23 12:16:15,452 INFO L273 TraceCheckUtils]: 68: Hoare triple {3304#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3304#false} is VALID [2018-11-23 12:16:15,452 INFO L273 TraceCheckUtils]: 69: Hoare triple {3304#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3304#false} is VALID [2018-11-23 12:16:15,452 INFO L273 TraceCheckUtils]: 70: Hoare triple {3304#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3304#false} is VALID [2018-11-23 12:16:15,452 INFO L273 TraceCheckUtils]: 71: Hoare triple {3304#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3304#false} is VALID [2018-11-23 12:16:15,453 INFO L273 TraceCheckUtils]: 72: Hoare triple {3304#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3304#false} is VALID [2018-11-23 12:16:15,453 INFO L273 TraceCheckUtils]: 73: Hoare triple {3304#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3304#false} is VALID [2018-11-23 12:16:15,453 INFO L273 TraceCheckUtils]: 74: Hoare triple {3304#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3304#false} is VALID [2018-11-23 12:16:15,453 INFO L273 TraceCheckUtils]: 75: Hoare triple {3304#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3304#false} is VALID [2018-11-23 12:16:15,453 INFO L273 TraceCheckUtils]: 76: Hoare triple {3304#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3304#false} is VALID [2018-11-23 12:16:15,453 INFO L273 TraceCheckUtils]: 77: Hoare triple {3304#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3304#false} is VALID [2018-11-23 12:16:15,453 INFO L273 TraceCheckUtils]: 78: Hoare triple {3304#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3304#false} is VALID [2018-11-23 12:16:15,454 INFO L273 TraceCheckUtils]: 79: Hoare triple {3304#false} assume !(~i~0 < 20); {3304#false} is VALID [2018-11-23 12:16:15,454 INFO L273 TraceCheckUtils]: 80: Hoare triple {3304#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {3304#false} is VALID [2018-11-23 12:16:15,454 INFO L273 TraceCheckUtils]: 81: Hoare triple {3304#false} assume true; {3304#false} is VALID [2018-11-23 12:16:15,454 INFO L268 TraceCheckUtils]: 82: Hoare quadruple {3304#false} {3304#false} #81#return; {3304#false} is VALID [2018-11-23 12:16:15,454 INFO L273 TraceCheckUtils]: 83: Hoare triple {3304#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {3304#false} is VALID [2018-11-23 12:16:15,454 INFO L273 TraceCheckUtils]: 84: Hoare triple {3304#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {3304#false} is VALID [2018-11-23 12:16:15,455 INFO L273 TraceCheckUtils]: 85: Hoare triple {3304#false} assume !false; {3304#false} is VALID [2018-11-23 12:16:15,463 INFO L134 CoverageAnalysis]: Checked inductivity of 239 backedges. 0 proven. 49 refuted. 0 times theorem prover too weak. 190 trivial. 0 not checked. [2018-11-23 12:16:15,485 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:16:15,486 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 11 [2018-11-23 12:16:15,486 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 86 [2018-11-23 12:16:15,487 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:15,487 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states. [2018-11-23 12:16:15,555 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:16:15,555 INFO L459 AbstractCegarLoop]: Interpolant automaton has 11 states [2018-11-23 12:16:15,555 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2018-11-23 12:16:15,556 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=55, Invalid=55, Unknown=0, NotChecked=0, Total=110 [2018-11-23 12:16:15,556 INFO L87 Difference]: Start difference. First operand 53 states and 60 transitions. Second operand 11 states. [2018-11-23 12:16:15,746 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:15,746 INFO L93 Difference]: Finished difference Result 88 states and 102 transitions. [2018-11-23 12:16:15,746 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2018-11-23 12:16:15,746 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 86 [2018-11-23 12:16:15,746 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:15,746 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-23 12:16:15,748 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 74 transitions. [2018-11-23 12:16:15,748 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-23 12:16:15,750 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 74 transitions. [2018-11-23 12:16:15,750 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 74 transitions. [2018-11-23 12:16:15,854 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:16:15,856 INFO L225 Difference]: With dead ends: 88 [2018-11-23 12:16:15,857 INFO L226 Difference]: Without dead ends: 56 [2018-11-23 12:16:15,858 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 95 GetRequests, 86 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=55, Invalid=55, Unknown=0, NotChecked=0, Total=110 [2018-11-23 12:16:15,858 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 56 states. [2018-11-23 12:16:15,887 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 56 to 55. [2018-11-23 12:16:15,888 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:15,888 INFO L82 GeneralOperation]: Start isEquivalent. First operand 56 states. Second operand 55 states. [2018-11-23 12:16:15,888 INFO L74 IsIncluded]: Start isIncluded. First operand 56 states. Second operand 55 states. [2018-11-23 12:16:15,888 INFO L87 Difference]: Start difference. First operand 56 states. Second operand 55 states. [2018-11-23 12:16:15,889 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:15,890 INFO L93 Difference]: Finished difference Result 56 states and 63 transitions. [2018-11-23 12:16:15,890 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 63 transitions. [2018-11-23 12:16:15,890 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:15,890 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:15,890 INFO L74 IsIncluded]: Start isIncluded. First operand 55 states. Second operand 56 states. [2018-11-23 12:16:15,891 INFO L87 Difference]: Start difference. First operand 55 states. Second operand 56 states. [2018-11-23 12:16:15,893 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:15,893 INFO L93 Difference]: Finished difference Result 56 states and 63 transitions. [2018-11-23 12:16:15,893 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 63 transitions. [2018-11-23 12:16:15,893 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:15,894 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:15,894 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:15,894 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:15,894 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 55 states. [2018-11-23 12:16:15,895 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 62 transitions. [2018-11-23 12:16:15,896 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 62 transitions. Word has length 86 [2018-11-23 12:16:15,896 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:15,896 INFO L480 AbstractCegarLoop]: Abstraction has 55 states and 62 transitions. [2018-11-23 12:16:15,896 INFO L481 AbstractCegarLoop]: Interpolant automaton has 11 states. [2018-11-23 12:16:15,896 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 62 transitions. [2018-11-23 12:16:15,897 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 89 [2018-11-23 12:16:15,897 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:15,897 INFO L402 BasicCegarLoop]: trace histogram [9, 9, 9, 9, 8, 8, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:15,898 INFO L423 AbstractCegarLoop]: === Iteration 11 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:15,898 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:15,898 INFO L82 PathProgramCache]: Analyzing trace with hash 1074942888, now seen corresponding path program 8 times [2018-11-23 12:16:15,898 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:15,898 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:15,899 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:15,899 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:16:15,899 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:15,920 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:16,161 INFO L256 TraceCheckUtils]: 0: Hoare triple {3885#true} call ULTIMATE.init(); {3885#true} is VALID [2018-11-23 12:16:16,162 INFO L273 TraceCheckUtils]: 1: Hoare triple {3885#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {3885#true} is VALID [2018-11-23 12:16:16,162 INFO L273 TraceCheckUtils]: 2: Hoare triple {3885#true} assume true; {3885#true} is VALID [2018-11-23 12:16:16,162 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3885#true} {3885#true} #73#return; {3885#true} is VALID [2018-11-23 12:16:16,162 INFO L256 TraceCheckUtils]: 4: Hoare triple {3885#true} call #t~ret14 := main(); {3885#true} is VALID [2018-11-23 12:16:16,162 INFO L273 TraceCheckUtils]: 5: Hoare triple {3885#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {3887#(= main_~i~1 0)} is VALID [2018-11-23 12:16:16,163 INFO L273 TraceCheckUtils]: 6: Hoare triple {3887#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3887#(= main_~i~1 0)} is VALID [2018-11-23 12:16:16,164 INFO L273 TraceCheckUtils]: 7: Hoare triple {3887#(= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3888#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:16,164 INFO L273 TraceCheckUtils]: 8: Hoare triple {3888#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3888#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:16,164 INFO L273 TraceCheckUtils]: 9: Hoare triple {3888#(<= main_~i~1 1)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3889#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:16,165 INFO L273 TraceCheckUtils]: 10: Hoare triple {3889#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3889#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:16,165 INFO L273 TraceCheckUtils]: 11: Hoare triple {3889#(<= main_~i~1 2)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3890#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:16,166 INFO L273 TraceCheckUtils]: 12: Hoare triple {3890#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3890#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:16,166 INFO L273 TraceCheckUtils]: 13: Hoare triple {3890#(<= main_~i~1 3)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3891#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:16,167 INFO L273 TraceCheckUtils]: 14: Hoare triple {3891#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3891#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:16,168 INFO L273 TraceCheckUtils]: 15: Hoare triple {3891#(<= main_~i~1 4)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3892#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:16,168 INFO L273 TraceCheckUtils]: 16: Hoare triple {3892#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3892#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:16,169 INFO L273 TraceCheckUtils]: 17: Hoare triple {3892#(<= main_~i~1 5)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3893#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:16,170 INFO L273 TraceCheckUtils]: 18: Hoare triple {3893#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3893#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:16,170 INFO L273 TraceCheckUtils]: 19: Hoare triple {3893#(<= main_~i~1 6)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3894#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:16,171 INFO L273 TraceCheckUtils]: 20: Hoare triple {3894#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3894#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:16,172 INFO L273 TraceCheckUtils]: 21: Hoare triple {3894#(<= main_~i~1 7)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3895#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:16,172 INFO L273 TraceCheckUtils]: 22: Hoare triple {3895#(<= main_~i~1 8)} assume !(~i~1 < 20); {3886#false} is VALID [2018-11-23 12:16:16,173 INFO L256 TraceCheckUtils]: 23: Hoare triple {3886#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {3885#true} is VALID [2018-11-23 12:16:16,173 INFO L273 TraceCheckUtils]: 24: Hoare triple {3885#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3885#true} is VALID [2018-11-23 12:16:16,173 INFO L273 TraceCheckUtils]: 25: Hoare triple {3885#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3885#true} is VALID [2018-11-23 12:16:16,173 INFO L273 TraceCheckUtils]: 26: Hoare triple {3885#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3885#true} is VALID [2018-11-23 12:16:16,173 INFO L273 TraceCheckUtils]: 27: Hoare triple {3885#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3885#true} is VALID [2018-11-23 12:16:16,174 INFO L273 TraceCheckUtils]: 28: Hoare triple {3885#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3885#true} is VALID [2018-11-23 12:16:16,174 INFO L273 TraceCheckUtils]: 29: Hoare triple {3885#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3885#true} is VALID [2018-11-23 12:16:16,174 INFO L273 TraceCheckUtils]: 30: Hoare triple {3885#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3885#true} is VALID [2018-11-23 12:16:16,174 INFO L273 TraceCheckUtils]: 31: Hoare triple {3885#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3885#true} is VALID [2018-11-23 12:16:16,174 INFO L273 TraceCheckUtils]: 32: Hoare triple {3885#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3885#true} is VALID [2018-11-23 12:16:16,175 INFO L273 TraceCheckUtils]: 33: Hoare triple {3885#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3885#true} is VALID [2018-11-23 12:16:16,175 INFO L273 TraceCheckUtils]: 34: Hoare triple {3885#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3885#true} is VALID [2018-11-23 12:16:16,175 INFO L273 TraceCheckUtils]: 35: Hoare triple {3885#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3885#true} is VALID [2018-11-23 12:16:16,175 INFO L273 TraceCheckUtils]: 36: Hoare triple {3885#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3885#true} is VALID [2018-11-23 12:16:16,175 INFO L273 TraceCheckUtils]: 37: Hoare triple {3885#true} assume !(~i~0 < 20); {3885#true} is VALID [2018-11-23 12:16:16,175 INFO L273 TraceCheckUtils]: 38: Hoare triple {3885#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {3885#true} is VALID [2018-11-23 12:16:16,175 INFO L273 TraceCheckUtils]: 39: Hoare triple {3885#true} assume true; {3885#true} is VALID [2018-11-23 12:16:16,176 INFO L268 TraceCheckUtils]: 40: Hoare quadruple {3885#true} {3886#false} #77#return; {3886#false} is VALID [2018-11-23 12:16:16,176 INFO L273 TraceCheckUtils]: 41: Hoare triple {3886#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {3886#false} is VALID [2018-11-23 12:16:16,176 INFO L256 TraceCheckUtils]: 42: Hoare triple {3886#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {3885#true} is VALID [2018-11-23 12:16:16,176 INFO L273 TraceCheckUtils]: 43: Hoare triple {3885#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3885#true} is VALID [2018-11-23 12:16:16,176 INFO L273 TraceCheckUtils]: 44: Hoare triple {3885#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3885#true} is VALID [2018-11-23 12:16:16,176 INFO L273 TraceCheckUtils]: 45: Hoare triple {3885#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3885#true} is VALID [2018-11-23 12:16:16,177 INFO L273 TraceCheckUtils]: 46: Hoare triple {3885#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3885#true} is VALID [2018-11-23 12:16:16,177 INFO L273 TraceCheckUtils]: 47: Hoare triple {3885#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3885#true} is VALID [2018-11-23 12:16:16,177 INFO L273 TraceCheckUtils]: 48: Hoare triple {3885#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3885#true} is VALID [2018-11-23 12:16:16,177 INFO L273 TraceCheckUtils]: 49: Hoare triple {3885#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3885#true} is VALID [2018-11-23 12:16:16,177 INFO L273 TraceCheckUtils]: 50: Hoare triple {3885#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3885#true} is VALID [2018-11-23 12:16:16,177 INFO L273 TraceCheckUtils]: 51: Hoare triple {3885#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3885#true} is VALID [2018-11-23 12:16:16,178 INFO L273 TraceCheckUtils]: 52: Hoare triple {3885#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3885#true} is VALID [2018-11-23 12:16:16,178 INFO L273 TraceCheckUtils]: 53: Hoare triple {3885#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3885#true} is VALID [2018-11-23 12:16:16,178 INFO L273 TraceCheckUtils]: 54: Hoare triple {3885#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3885#true} is VALID [2018-11-23 12:16:16,178 INFO L273 TraceCheckUtils]: 55: Hoare triple {3885#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3885#true} is VALID [2018-11-23 12:16:16,178 INFO L273 TraceCheckUtils]: 56: Hoare triple {3885#true} assume !(~i~0 < 20); {3885#true} is VALID [2018-11-23 12:16:16,179 INFO L273 TraceCheckUtils]: 57: Hoare triple {3885#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {3885#true} is VALID [2018-11-23 12:16:16,179 INFO L273 TraceCheckUtils]: 58: Hoare triple {3885#true} assume true; {3885#true} is VALID [2018-11-23 12:16:16,179 INFO L268 TraceCheckUtils]: 59: Hoare quadruple {3885#true} {3886#false} #79#return; {3886#false} is VALID [2018-11-23 12:16:16,179 INFO L273 TraceCheckUtils]: 60: Hoare triple {3886#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {3886#false} is VALID [2018-11-23 12:16:16,179 INFO L273 TraceCheckUtils]: 61: Hoare triple {3886#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {3886#false} is VALID [2018-11-23 12:16:16,179 INFO L273 TraceCheckUtils]: 62: Hoare triple {3886#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {3886#false} is VALID [2018-11-23 12:16:16,180 INFO L273 TraceCheckUtils]: 63: Hoare triple {3886#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {3886#false} is VALID [2018-11-23 12:16:16,180 INFO L273 TraceCheckUtils]: 64: Hoare triple {3886#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {3886#false} is VALID [2018-11-23 12:16:16,180 INFO L273 TraceCheckUtils]: 65: Hoare triple {3886#false} assume !(~i~2 < 19); {3886#false} is VALID [2018-11-23 12:16:16,180 INFO L273 TraceCheckUtils]: 66: Hoare triple {3886#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {3886#false} is VALID [2018-11-23 12:16:16,180 INFO L256 TraceCheckUtils]: 67: Hoare triple {3886#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {3885#true} is VALID [2018-11-23 12:16:16,180 INFO L273 TraceCheckUtils]: 68: Hoare triple {3885#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3885#true} is VALID [2018-11-23 12:16:16,181 INFO L273 TraceCheckUtils]: 69: Hoare triple {3885#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3885#true} is VALID [2018-11-23 12:16:16,181 INFO L273 TraceCheckUtils]: 70: Hoare triple {3885#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3885#true} is VALID [2018-11-23 12:16:16,181 INFO L273 TraceCheckUtils]: 71: Hoare triple {3885#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3885#true} is VALID [2018-11-23 12:16:16,181 INFO L273 TraceCheckUtils]: 72: Hoare triple {3885#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3885#true} is VALID [2018-11-23 12:16:16,181 INFO L273 TraceCheckUtils]: 73: Hoare triple {3885#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3885#true} is VALID [2018-11-23 12:16:16,182 INFO L273 TraceCheckUtils]: 74: Hoare triple {3885#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3885#true} is VALID [2018-11-23 12:16:16,182 INFO L273 TraceCheckUtils]: 75: Hoare triple {3885#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3885#true} is VALID [2018-11-23 12:16:16,182 INFO L273 TraceCheckUtils]: 76: Hoare triple {3885#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3885#true} is VALID [2018-11-23 12:16:16,182 INFO L273 TraceCheckUtils]: 77: Hoare triple {3885#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3885#true} is VALID [2018-11-23 12:16:16,182 INFO L273 TraceCheckUtils]: 78: Hoare triple {3885#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3885#true} is VALID [2018-11-23 12:16:16,182 INFO L273 TraceCheckUtils]: 79: Hoare triple {3885#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3885#true} is VALID [2018-11-23 12:16:16,182 INFO L273 TraceCheckUtils]: 80: Hoare triple {3885#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3885#true} is VALID [2018-11-23 12:16:16,183 INFO L273 TraceCheckUtils]: 81: Hoare triple {3885#true} assume !(~i~0 < 20); {3885#true} is VALID [2018-11-23 12:16:16,183 INFO L273 TraceCheckUtils]: 82: Hoare triple {3885#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {3885#true} is VALID [2018-11-23 12:16:16,183 INFO L273 TraceCheckUtils]: 83: Hoare triple {3885#true} assume true; {3885#true} is VALID [2018-11-23 12:16:16,183 INFO L268 TraceCheckUtils]: 84: Hoare quadruple {3885#true} {3886#false} #81#return; {3886#false} is VALID [2018-11-23 12:16:16,183 INFO L273 TraceCheckUtils]: 85: Hoare triple {3886#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {3886#false} is VALID [2018-11-23 12:16:16,184 INFO L273 TraceCheckUtils]: 86: Hoare triple {3886#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {3886#false} is VALID [2018-11-23 12:16:16,184 INFO L273 TraceCheckUtils]: 87: Hoare triple {3886#false} assume !false; {3886#false} is VALID [2018-11-23 12:16:16,187 INFO L134 CoverageAnalysis]: Checked inductivity of 254 backedges. 0 proven. 64 refuted. 0 times theorem prover too weak. 190 trivial. 0 not checked. [2018-11-23 12:16:16,187 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:16:16,187 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 10 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 10 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:16:16,197 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:16:16,258 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:16:16,258 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:16:16,282 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:16,283 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:16,413 INFO L256 TraceCheckUtils]: 0: Hoare triple {3885#true} call ULTIMATE.init(); {3885#true} is VALID [2018-11-23 12:16:16,414 INFO L273 TraceCheckUtils]: 1: Hoare triple {3885#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {3885#true} is VALID [2018-11-23 12:16:16,414 INFO L273 TraceCheckUtils]: 2: Hoare triple {3885#true} assume true; {3885#true} is VALID [2018-11-23 12:16:16,414 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3885#true} {3885#true} #73#return; {3885#true} is VALID [2018-11-23 12:16:16,414 INFO L256 TraceCheckUtils]: 4: Hoare triple {3885#true} call #t~ret14 := main(); {3885#true} is VALID [2018-11-23 12:16:16,415 INFO L273 TraceCheckUtils]: 5: Hoare triple {3885#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {3914#(<= main_~i~1 0)} is VALID [2018-11-23 12:16:16,416 INFO L273 TraceCheckUtils]: 6: Hoare triple {3914#(<= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3914#(<= main_~i~1 0)} is VALID [2018-11-23 12:16:16,416 INFO L273 TraceCheckUtils]: 7: Hoare triple {3914#(<= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3888#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:16,417 INFO L273 TraceCheckUtils]: 8: Hoare triple {3888#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3888#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:16,417 INFO L273 TraceCheckUtils]: 9: Hoare triple {3888#(<= main_~i~1 1)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3889#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:16,418 INFO L273 TraceCheckUtils]: 10: Hoare triple {3889#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3889#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:16,418 INFO L273 TraceCheckUtils]: 11: Hoare triple {3889#(<= main_~i~1 2)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3890#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:16,418 INFO L273 TraceCheckUtils]: 12: Hoare triple {3890#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3890#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:16,419 INFO L273 TraceCheckUtils]: 13: Hoare triple {3890#(<= main_~i~1 3)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3891#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:16,420 INFO L273 TraceCheckUtils]: 14: Hoare triple {3891#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3891#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:16,420 INFO L273 TraceCheckUtils]: 15: Hoare triple {3891#(<= main_~i~1 4)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3892#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:16,421 INFO L273 TraceCheckUtils]: 16: Hoare triple {3892#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3892#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:16,422 INFO L273 TraceCheckUtils]: 17: Hoare triple {3892#(<= main_~i~1 5)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3893#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:16,422 INFO L273 TraceCheckUtils]: 18: Hoare triple {3893#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3893#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:16,423 INFO L273 TraceCheckUtils]: 19: Hoare triple {3893#(<= main_~i~1 6)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3894#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:16,424 INFO L273 TraceCheckUtils]: 20: Hoare triple {3894#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {3894#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:16,424 INFO L273 TraceCheckUtils]: 21: Hoare triple {3894#(<= main_~i~1 7)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {3895#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:16,425 INFO L273 TraceCheckUtils]: 22: Hoare triple {3895#(<= main_~i~1 8)} assume !(~i~1 < 20); {3886#false} is VALID [2018-11-23 12:16:16,425 INFO L256 TraceCheckUtils]: 23: Hoare triple {3886#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {3886#false} is VALID [2018-11-23 12:16:16,426 INFO L273 TraceCheckUtils]: 24: Hoare triple {3886#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3886#false} is VALID [2018-11-23 12:16:16,426 INFO L273 TraceCheckUtils]: 25: Hoare triple {3886#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3886#false} is VALID [2018-11-23 12:16:16,426 INFO L273 TraceCheckUtils]: 26: Hoare triple {3886#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3886#false} is VALID [2018-11-23 12:16:16,426 INFO L273 TraceCheckUtils]: 27: Hoare triple {3886#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3886#false} is VALID [2018-11-23 12:16:16,426 INFO L273 TraceCheckUtils]: 28: Hoare triple {3886#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3886#false} is VALID [2018-11-23 12:16:16,427 INFO L273 TraceCheckUtils]: 29: Hoare triple {3886#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3886#false} is VALID [2018-11-23 12:16:16,427 INFO L273 TraceCheckUtils]: 30: Hoare triple {3886#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3886#false} is VALID [2018-11-23 12:16:16,427 INFO L273 TraceCheckUtils]: 31: Hoare triple {3886#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3886#false} is VALID [2018-11-23 12:16:16,427 INFO L273 TraceCheckUtils]: 32: Hoare triple {3886#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3886#false} is VALID [2018-11-23 12:16:16,427 INFO L273 TraceCheckUtils]: 33: Hoare triple {3886#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3886#false} is VALID [2018-11-23 12:16:16,428 INFO L273 TraceCheckUtils]: 34: Hoare triple {3886#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3886#false} is VALID [2018-11-23 12:16:16,428 INFO L273 TraceCheckUtils]: 35: Hoare triple {3886#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3886#false} is VALID [2018-11-23 12:16:16,428 INFO L273 TraceCheckUtils]: 36: Hoare triple {3886#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3886#false} is VALID [2018-11-23 12:16:16,428 INFO L273 TraceCheckUtils]: 37: Hoare triple {3886#false} assume !(~i~0 < 20); {3886#false} is VALID [2018-11-23 12:16:16,429 INFO L273 TraceCheckUtils]: 38: Hoare triple {3886#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {3886#false} is VALID [2018-11-23 12:16:16,429 INFO L273 TraceCheckUtils]: 39: Hoare triple {3886#false} assume true; {3886#false} is VALID [2018-11-23 12:16:16,429 INFO L268 TraceCheckUtils]: 40: Hoare quadruple {3886#false} {3886#false} #77#return; {3886#false} is VALID [2018-11-23 12:16:16,429 INFO L273 TraceCheckUtils]: 41: Hoare triple {3886#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {3886#false} is VALID [2018-11-23 12:16:16,429 INFO L256 TraceCheckUtils]: 42: Hoare triple {3886#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {3886#false} is VALID [2018-11-23 12:16:16,430 INFO L273 TraceCheckUtils]: 43: Hoare triple {3886#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3886#false} is VALID [2018-11-23 12:16:16,430 INFO L273 TraceCheckUtils]: 44: Hoare triple {3886#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3886#false} is VALID [2018-11-23 12:16:16,430 INFO L273 TraceCheckUtils]: 45: Hoare triple {3886#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3886#false} is VALID [2018-11-23 12:16:16,430 INFO L273 TraceCheckUtils]: 46: Hoare triple {3886#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3886#false} is VALID [2018-11-23 12:16:16,430 INFO L273 TraceCheckUtils]: 47: Hoare triple {3886#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3886#false} is VALID [2018-11-23 12:16:16,430 INFO L273 TraceCheckUtils]: 48: Hoare triple {3886#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3886#false} is VALID [2018-11-23 12:16:16,430 INFO L273 TraceCheckUtils]: 49: Hoare triple {3886#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3886#false} is VALID [2018-11-23 12:16:16,430 INFO L273 TraceCheckUtils]: 50: Hoare triple {3886#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3886#false} is VALID [2018-11-23 12:16:16,430 INFO L273 TraceCheckUtils]: 51: Hoare triple {3886#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3886#false} is VALID [2018-11-23 12:16:16,431 INFO L273 TraceCheckUtils]: 52: Hoare triple {3886#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3886#false} is VALID [2018-11-23 12:16:16,431 INFO L273 TraceCheckUtils]: 53: Hoare triple {3886#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3886#false} is VALID [2018-11-23 12:16:16,431 INFO L273 TraceCheckUtils]: 54: Hoare triple {3886#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3886#false} is VALID [2018-11-23 12:16:16,431 INFO L273 TraceCheckUtils]: 55: Hoare triple {3886#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3886#false} is VALID [2018-11-23 12:16:16,431 INFO L273 TraceCheckUtils]: 56: Hoare triple {3886#false} assume !(~i~0 < 20); {3886#false} is VALID [2018-11-23 12:16:16,431 INFO L273 TraceCheckUtils]: 57: Hoare triple {3886#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {3886#false} is VALID [2018-11-23 12:16:16,431 INFO L273 TraceCheckUtils]: 58: Hoare triple {3886#false} assume true; {3886#false} is VALID [2018-11-23 12:16:16,432 INFO L268 TraceCheckUtils]: 59: Hoare quadruple {3886#false} {3886#false} #79#return; {3886#false} is VALID [2018-11-23 12:16:16,432 INFO L273 TraceCheckUtils]: 60: Hoare triple {3886#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {3886#false} is VALID [2018-11-23 12:16:16,432 INFO L273 TraceCheckUtils]: 61: Hoare triple {3886#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {3886#false} is VALID [2018-11-23 12:16:16,432 INFO L273 TraceCheckUtils]: 62: Hoare triple {3886#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {3886#false} is VALID [2018-11-23 12:16:16,432 INFO L273 TraceCheckUtils]: 63: Hoare triple {3886#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {3886#false} is VALID [2018-11-23 12:16:16,432 INFO L273 TraceCheckUtils]: 64: Hoare triple {3886#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {3886#false} is VALID [2018-11-23 12:16:16,433 INFO L273 TraceCheckUtils]: 65: Hoare triple {3886#false} assume !(~i~2 < 19); {3886#false} is VALID [2018-11-23 12:16:16,433 INFO L273 TraceCheckUtils]: 66: Hoare triple {3886#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {3886#false} is VALID [2018-11-23 12:16:16,433 INFO L256 TraceCheckUtils]: 67: Hoare triple {3886#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {3886#false} is VALID [2018-11-23 12:16:16,433 INFO L273 TraceCheckUtils]: 68: Hoare triple {3886#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {3886#false} is VALID [2018-11-23 12:16:16,433 INFO L273 TraceCheckUtils]: 69: Hoare triple {3886#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3886#false} is VALID [2018-11-23 12:16:16,433 INFO L273 TraceCheckUtils]: 70: Hoare triple {3886#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3886#false} is VALID [2018-11-23 12:16:16,434 INFO L273 TraceCheckUtils]: 71: Hoare triple {3886#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3886#false} is VALID [2018-11-23 12:16:16,434 INFO L273 TraceCheckUtils]: 72: Hoare triple {3886#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3886#false} is VALID [2018-11-23 12:16:16,434 INFO L273 TraceCheckUtils]: 73: Hoare triple {3886#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3886#false} is VALID [2018-11-23 12:16:16,434 INFO L273 TraceCheckUtils]: 74: Hoare triple {3886#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3886#false} is VALID [2018-11-23 12:16:16,434 INFO L273 TraceCheckUtils]: 75: Hoare triple {3886#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3886#false} is VALID [2018-11-23 12:16:16,434 INFO L273 TraceCheckUtils]: 76: Hoare triple {3886#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3886#false} is VALID [2018-11-23 12:16:16,435 INFO L273 TraceCheckUtils]: 77: Hoare triple {3886#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {3886#false} is VALID [2018-11-23 12:16:16,435 INFO L273 TraceCheckUtils]: 78: Hoare triple {3886#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {3886#false} is VALID [2018-11-23 12:16:16,435 INFO L273 TraceCheckUtils]: 79: Hoare triple {3886#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {3886#false} is VALID [2018-11-23 12:16:16,435 INFO L273 TraceCheckUtils]: 80: Hoare triple {3886#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {3886#false} is VALID [2018-11-23 12:16:16,435 INFO L273 TraceCheckUtils]: 81: Hoare triple {3886#false} assume !(~i~0 < 20); {3886#false} is VALID [2018-11-23 12:16:16,435 INFO L273 TraceCheckUtils]: 82: Hoare triple {3886#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {3886#false} is VALID [2018-11-23 12:16:16,436 INFO L273 TraceCheckUtils]: 83: Hoare triple {3886#false} assume true; {3886#false} is VALID [2018-11-23 12:16:16,436 INFO L268 TraceCheckUtils]: 84: Hoare quadruple {3886#false} {3886#false} #81#return; {3886#false} is VALID [2018-11-23 12:16:16,436 INFO L273 TraceCheckUtils]: 85: Hoare triple {3886#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {3886#false} is VALID [2018-11-23 12:16:16,436 INFO L273 TraceCheckUtils]: 86: Hoare triple {3886#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {3886#false} is VALID [2018-11-23 12:16:16,436 INFO L273 TraceCheckUtils]: 87: Hoare triple {3886#false} assume !false; {3886#false} is VALID [2018-11-23 12:16:16,444 INFO L134 CoverageAnalysis]: Checked inductivity of 254 backedges. 0 proven. 64 refuted. 0 times theorem prover too weak. 190 trivial. 0 not checked. [2018-11-23 12:16:16,464 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:16:16,464 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 12 [2018-11-23 12:16:16,465 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 88 [2018-11-23 12:16:16,466 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:16,466 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states. [2018-11-23 12:16:16,541 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:16:16,541 INFO L459 AbstractCegarLoop]: Interpolant automaton has 12 states [2018-11-23 12:16:16,541 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2018-11-23 12:16:16,542 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=66, Invalid=66, Unknown=0, NotChecked=0, Total=132 [2018-11-23 12:16:16,542 INFO L87 Difference]: Start difference. First operand 55 states and 62 transitions. Second operand 12 states. [2018-11-23 12:16:16,912 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:16,913 INFO L93 Difference]: Finished difference Result 90 states and 104 transitions. [2018-11-23 12:16:16,913 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-23 12:16:16,913 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 88 [2018-11-23 12:16:16,913 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:16,914 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2018-11-23 12:16:16,915 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 76 transitions. [2018-11-23 12:16:16,915 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2018-11-23 12:16:16,917 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 76 transitions. [2018-11-23 12:16:16,917 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 76 transitions. [2018-11-23 12:16:17,022 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:16:17,023 INFO L225 Difference]: With dead ends: 90 [2018-11-23 12:16:17,023 INFO L226 Difference]: Without dead ends: 58 [2018-11-23 12:16:17,024 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 98 GetRequests, 88 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=66, Invalid=66, Unknown=0, NotChecked=0, Total=132 [2018-11-23 12:16:17,024 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 58 states. [2018-11-23 12:16:17,082 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 58 to 57. [2018-11-23 12:16:17,082 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:17,082 INFO L82 GeneralOperation]: Start isEquivalent. First operand 58 states. Second operand 57 states. [2018-11-23 12:16:17,082 INFO L74 IsIncluded]: Start isIncluded. First operand 58 states. Second operand 57 states. [2018-11-23 12:16:17,082 INFO L87 Difference]: Start difference. First operand 58 states. Second operand 57 states. [2018-11-23 12:16:17,084 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:17,084 INFO L93 Difference]: Finished difference Result 58 states and 65 transitions. [2018-11-23 12:16:17,085 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 65 transitions. [2018-11-23 12:16:17,085 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:17,085 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:17,085 INFO L74 IsIncluded]: Start isIncluded. First operand 57 states. Second operand 58 states. [2018-11-23 12:16:17,085 INFO L87 Difference]: Start difference. First operand 57 states. Second operand 58 states. [2018-11-23 12:16:17,087 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:17,087 INFO L93 Difference]: Finished difference Result 58 states and 65 transitions. [2018-11-23 12:16:17,087 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 65 transitions. [2018-11-23 12:16:17,088 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:17,088 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:17,088 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:17,088 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:17,088 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 57 states. [2018-11-23 12:16:17,090 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 57 states to 57 states and 64 transitions. [2018-11-23 12:16:17,090 INFO L78 Accepts]: Start accepts. Automaton has 57 states and 64 transitions. Word has length 88 [2018-11-23 12:16:17,090 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:17,090 INFO L480 AbstractCegarLoop]: Abstraction has 57 states and 64 transitions. [2018-11-23 12:16:17,090 INFO L481 AbstractCegarLoop]: Interpolant automaton has 12 states. [2018-11-23 12:16:17,091 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 64 transitions. [2018-11-23 12:16:17,092 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 91 [2018-11-23 12:16:17,092 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:17,092 INFO L402 BasicCegarLoop]: trace histogram [9, 9, 9, 9, 9, 9, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:17,092 INFO L423 AbstractCegarLoop]: === Iteration 12 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:17,093 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:17,093 INFO L82 PathProgramCache]: Analyzing trace with hash 2005830378, now seen corresponding path program 9 times [2018-11-23 12:16:17,093 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:17,093 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:17,094 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:17,094 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:16:17,094 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:17,116 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:17,426 INFO L256 TraceCheckUtils]: 0: Hoare triple {4484#true} call ULTIMATE.init(); {4484#true} is VALID [2018-11-23 12:16:17,426 INFO L273 TraceCheckUtils]: 1: Hoare triple {4484#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {4484#true} is VALID [2018-11-23 12:16:17,426 INFO L273 TraceCheckUtils]: 2: Hoare triple {4484#true} assume true; {4484#true} is VALID [2018-11-23 12:16:17,427 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4484#true} {4484#true} #73#return; {4484#true} is VALID [2018-11-23 12:16:17,427 INFO L256 TraceCheckUtils]: 4: Hoare triple {4484#true} call #t~ret14 := main(); {4484#true} is VALID [2018-11-23 12:16:17,428 INFO L273 TraceCheckUtils]: 5: Hoare triple {4484#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {4486#(= main_~i~1 0)} is VALID [2018-11-23 12:16:17,428 INFO L273 TraceCheckUtils]: 6: Hoare triple {4486#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {4486#(= main_~i~1 0)} is VALID [2018-11-23 12:16:17,429 INFO L273 TraceCheckUtils]: 7: Hoare triple {4486#(= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {4487#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:17,430 INFO L273 TraceCheckUtils]: 8: Hoare triple {4487#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {4487#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:17,431 INFO L273 TraceCheckUtils]: 9: Hoare triple {4487#(<= main_~i~1 1)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {4488#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:17,431 INFO L273 TraceCheckUtils]: 10: Hoare triple {4488#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {4488#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:17,432 INFO L273 TraceCheckUtils]: 11: Hoare triple {4488#(<= main_~i~1 2)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {4489#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:17,433 INFO L273 TraceCheckUtils]: 12: Hoare triple {4489#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {4489#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:17,434 INFO L273 TraceCheckUtils]: 13: Hoare triple {4489#(<= main_~i~1 3)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {4490#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:17,434 INFO L273 TraceCheckUtils]: 14: Hoare triple {4490#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {4490#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:17,435 INFO L273 TraceCheckUtils]: 15: Hoare triple {4490#(<= main_~i~1 4)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {4491#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:17,436 INFO L273 TraceCheckUtils]: 16: Hoare triple {4491#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {4491#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:17,437 INFO L273 TraceCheckUtils]: 17: Hoare triple {4491#(<= main_~i~1 5)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {4492#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:17,438 INFO L273 TraceCheckUtils]: 18: Hoare triple {4492#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {4492#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:17,438 INFO L273 TraceCheckUtils]: 19: Hoare triple {4492#(<= main_~i~1 6)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {4493#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:17,439 INFO L273 TraceCheckUtils]: 20: Hoare triple {4493#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {4493#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:17,440 INFO L273 TraceCheckUtils]: 21: Hoare triple {4493#(<= main_~i~1 7)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {4494#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:17,441 INFO L273 TraceCheckUtils]: 22: Hoare triple {4494#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {4494#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:17,442 INFO L273 TraceCheckUtils]: 23: Hoare triple {4494#(<= main_~i~1 8)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {4495#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:17,442 INFO L273 TraceCheckUtils]: 24: Hoare triple {4495#(<= main_~i~1 9)} assume !(~i~1 < 20); {4485#false} is VALID [2018-11-23 12:16:17,443 INFO L256 TraceCheckUtils]: 25: Hoare triple {4485#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {4484#true} is VALID [2018-11-23 12:16:17,443 INFO L273 TraceCheckUtils]: 26: Hoare triple {4484#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {4484#true} is VALID [2018-11-23 12:16:17,443 INFO L273 TraceCheckUtils]: 27: Hoare triple {4484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {4484#true} is VALID [2018-11-23 12:16:17,443 INFO L273 TraceCheckUtils]: 28: Hoare triple {4484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {4484#true} is VALID [2018-11-23 12:16:17,444 INFO L273 TraceCheckUtils]: 29: Hoare triple {4484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {4484#true} is VALID [2018-11-23 12:16:17,444 INFO L273 TraceCheckUtils]: 30: Hoare triple {4484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {4484#true} is VALID [2018-11-23 12:16:17,444 INFO L273 TraceCheckUtils]: 31: Hoare triple {4484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {4484#true} is VALID [2018-11-23 12:16:17,444 INFO L273 TraceCheckUtils]: 32: Hoare triple {4484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {4484#true} is VALID [2018-11-23 12:16:17,445 INFO L273 TraceCheckUtils]: 33: Hoare triple {4484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {4484#true} is VALID [2018-11-23 12:16:17,445 INFO L273 TraceCheckUtils]: 34: Hoare triple {4484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {4484#true} is VALID [2018-11-23 12:16:17,445 INFO L273 TraceCheckUtils]: 35: Hoare triple {4484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {4484#true} is VALID [2018-11-23 12:16:17,445 INFO L273 TraceCheckUtils]: 36: Hoare triple {4484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {4484#true} is VALID [2018-11-23 12:16:17,446 INFO L273 TraceCheckUtils]: 37: Hoare triple {4484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {4484#true} is VALID [2018-11-23 12:16:17,446 INFO L273 TraceCheckUtils]: 38: Hoare triple {4484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {4484#true} is VALID [2018-11-23 12:16:17,446 INFO L273 TraceCheckUtils]: 39: Hoare triple {4484#true} assume !(~i~0 < 20); {4484#true} is VALID [2018-11-23 12:16:17,447 INFO L273 TraceCheckUtils]: 40: Hoare triple {4484#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {4484#true} is VALID [2018-11-23 12:16:17,447 INFO L273 TraceCheckUtils]: 41: Hoare triple {4484#true} assume true; {4484#true} is VALID [2018-11-23 12:16:17,447 INFO L268 TraceCheckUtils]: 42: Hoare quadruple {4484#true} {4485#false} #77#return; {4485#false} is VALID [2018-11-23 12:16:17,447 INFO L273 TraceCheckUtils]: 43: Hoare triple {4485#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {4485#false} is VALID [2018-11-23 12:16:17,448 INFO L256 TraceCheckUtils]: 44: Hoare triple {4485#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {4484#true} is VALID [2018-11-23 12:16:17,448 INFO L273 TraceCheckUtils]: 45: Hoare triple {4484#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {4484#true} is VALID [2018-11-23 12:16:17,448 INFO L273 TraceCheckUtils]: 46: Hoare triple {4484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {4484#true} is VALID [2018-11-23 12:16:17,448 INFO L273 TraceCheckUtils]: 47: Hoare triple {4484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {4484#true} is VALID [2018-11-23 12:16:17,448 INFO L273 TraceCheckUtils]: 48: Hoare triple {4484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {4484#true} is VALID [2018-11-23 12:16:17,449 INFO L273 TraceCheckUtils]: 49: Hoare triple {4484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {4484#true} is VALID [2018-11-23 12:16:17,449 INFO L273 TraceCheckUtils]: 50: Hoare triple {4484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {4484#true} is VALID [2018-11-23 12:16:17,449 INFO L273 TraceCheckUtils]: 51: Hoare triple {4484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {4484#true} is VALID [2018-11-23 12:16:17,449 INFO L273 TraceCheckUtils]: 52: Hoare triple {4484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {4484#true} is VALID [2018-11-23 12:16:17,450 INFO L273 TraceCheckUtils]: 53: Hoare triple {4484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {4484#true} is VALID [2018-11-23 12:16:17,450 INFO L273 TraceCheckUtils]: 54: Hoare triple {4484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {4484#true} is VALID [2018-11-23 12:16:17,450 INFO L273 TraceCheckUtils]: 55: Hoare triple {4484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {4484#true} is VALID [2018-11-23 12:16:17,450 INFO L273 TraceCheckUtils]: 56: Hoare triple {4484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {4484#true} is VALID [2018-11-23 12:16:17,450 INFO L273 TraceCheckUtils]: 57: Hoare triple {4484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {4484#true} is VALID [2018-11-23 12:16:17,451 INFO L273 TraceCheckUtils]: 58: Hoare triple {4484#true} assume !(~i~0 < 20); {4484#true} is VALID [2018-11-23 12:16:17,451 INFO L273 TraceCheckUtils]: 59: Hoare triple {4484#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {4484#true} is VALID [2018-11-23 12:16:17,451 INFO L273 TraceCheckUtils]: 60: Hoare triple {4484#true} assume true; {4484#true} is VALID [2018-11-23 12:16:17,451 INFO L268 TraceCheckUtils]: 61: Hoare quadruple {4484#true} {4485#false} #79#return; {4485#false} is VALID [2018-11-23 12:16:17,451 INFO L273 TraceCheckUtils]: 62: Hoare triple {4485#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {4485#false} is VALID [2018-11-23 12:16:17,452 INFO L273 TraceCheckUtils]: 63: Hoare triple {4485#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {4485#false} is VALID [2018-11-23 12:16:17,452 INFO L273 TraceCheckUtils]: 64: Hoare triple {4485#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {4485#false} is VALID [2018-11-23 12:16:17,452 INFO L273 TraceCheckUtils]: 65: Hoare triple {4485#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {4485#false} is VALID [2018-11-23 12:16:17,452 INFO L273 TraceCheckUtils]: 66: Hoare triple {4485#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {4485#false} is VALID [2018-11-23 12:16:17,452 INFO L273 TraceCheckUtils]: 67: Hoare triple {4485#false} assume !(~i~2 < 19); {4485#false} is VALID [2018-11-23 12:16:17,453 INFO L273 TraceCheckUtils]: 68: Hoare triple {4485#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {4485#false} is VALID [2018-11-23 12:16:17,453 INFO L256 TraceCheckUtils]: 69: Hoare triple {4485#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {4484#true} is VALID [2018-11-23 12:16:17,453 INFO L273 TraceCheckUtils]: 70: Hoare triple {4484#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {4484#true} is VALID [2018-11-23 12:16:17,453 INFO L273 TraceCheckUtils]: 71: Hoare triple {4484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {4484#true} is VALID [2018-11-23 12:16:17,453 INFO L273 TraceCheckUtils]: 72: Hoare triple {4484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {4484#true} is VALID [2018-11-23 12:16:17,454 INFO L273 TraceCheckUtils]: 73: Hoare triple {4484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {4484#true} is VALID [2018-11-23 12:16:17,454 INFO L273 TraceCheckUtils]: 74: Hoare triple {4484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {4484#true} is VALID [2018-11-23 12:16:17,454 INFO L273 TraceCheckUtils]: 75: Hoare triple {4484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {4484#true} is VALID [2018-11-23 12:16:17,454 INFO L273 TraceCheckUtils]: 76: Hoare triple {4484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {4484#true} is VALID [2018-11-23 12:16:17,454 INFO L273 TraceCheckUtils]: 77: Hoare triple {4484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {4484#true} is VALID [2018-11-23 12:16:17,455 INFO L273 TraceCheckUtils]: 78: Hoare triple {4484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {4484#true} is VALID [2018-11-23 12:16:17,455 INFO L273 TraceCheckUtils]: 79: Hoare triple {4484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {4484#true} is VALID [2018-11-23 12:16:17,455 INFO L273 TraceCheckUtils]: 80: Hoare triple {4484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {4484#true} is VALID [2018-11-23 12:16:17,455 INFO L273 TraceCheckUtils]: 81: Hoare triple {4484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {4484#true} is VALID [2018-11-23 12:16:17,455 INFO L273 TraceCheckUtils]: 82: Hoare triple {4484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {4484#true} is VALID [2018-11-23 12:16:17,456 INFO L273 TraceCheckUtils]: 83: Hoare triple {4484#true} assume !(~i~0 < 20); {4484#true} is VALID [2018-11-23 12:16:17,456 INFO L273 TraceCheckUtils]: 84: Hoare triple {4484#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {4484#true} is VALID [2018-11-23 12:16:17,456 INFO L273 TraceCheckUtils]: 85: Hoare triple {4484#true} assume true; {4484#true} is VALID [2018-11-23 12:16:17,456 INFO L268 TraceCheckUtils]: 86: Hoare quadruple {4484#true} {4485#false} #81#return; {4485#false} is VALID [2018-11-23 12:16:17,457 INFO L273 TraceCheckUtils]: 87: Hoare triple {4485#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {4485#false} is VALID [2018-11-23 12:16:17,457 INFO L273 TraceCheckUtils]: 88: Hoare triple {4485#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {4485#false} is VALID [2018-11-23 12:16:17,457 INFO L273 TraceCheckUtils]: 89: Hoare triple {4485#false} assume !false; {4485#false} is VALID [2018-11-23 12:16:17,465 INFO L134 CoverageAnalysis]: Checked inductivity of 271 backedges. 0 proven. 81 refuted. 0 times theorem prover too weak. 190 trivial. 0 not checked. [2018-11-23 12:16:17,465 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:16:17,465 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 11 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 11 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:16:17,492 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:16:17,530 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2018-11-23 12:16:17,531 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:16:17,550 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:17,552 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:17,715 INFO L256 TraceCheckUtils]: 0: Hoare triple {4484#true} call ULTIMATE.init(); {4484#true} is VALID [2018-11-23 12:16:17,715 INFO L273 TraceCheckUtils]: 1: Hoare triple {4484#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {4484#true} is VALID [2018-11-23 12:16:17,715 INFO L273 TraceCheckUtils]: 2: Hoare triple {4484#true} assume true; {4484#true} is VALID [2018-11-23 12:16:17,715 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4484#true} {4484#true} #73#return; {4484#true} is VALID [2018-11-23 12:16:17,716 INFO L256 TraceCheckUtils]: 4: Hoare triple {4484#true} call #t~ret14 := main(); {4484#true} is VALID [2018-11-23 12:16:17,716 INFO L273 TraceCheckUtils]: 5: Hoare triple {4484#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {4484#true} is VALID [2018-11-23 12:16:17,716 INFO L273 TraceCheckUtils]: 6: Hoare triple {4484#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {4484#true} is VALID [2018-11-23 12:16:17,716 INFO L273 TraceCheckUtils]: 7: Hoare triple {4484#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {4484#true} is VALID [2018-11-23 12:16:17,717 INFO L273 TraceCheckUtils]: 8: Hoare triple {4484#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {4484#true} is VALID [2018-11-23 12:16:17,717 INFO L273 TraceCheckUtils]: 9: Hoare triple {4484#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {4484#true} is VALID [2018-11-23 12:16:17,717 INFO L273 TraceCheckUtils]: 10: Hoare triple {4484#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {4484#true} is VALID [2018-11-23 12:16:17,717 INFO L273 TraceCheckUtils]: 11: Hoare triple {4484#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {4484#true} is VALID [2018-11-23 12:16:17,717 INFO L273 TraceCheckUtils]: 12: Hoare triple {4484#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {4484#true} is VALID [2018-11-23 12:16:17,717 INFO L273 TraceCheckUtils]: 13: Hoare triple {4484#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {4484#true} is VALID [2018-11-23 12:16:17,717 INFO L273 TraceCheckUtils]: 14: Hoare triple {4484#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {4484#true} is VALID [2018-11-23 12:16:17,717 INFO L273 TraceCheckUtils]: 15: Hoare triple {4484#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {4484#true} is VALID [2018-11-23 12:16:17,718 INFO L273 TraceCheckUtils]: 16: Hoare triple {4484#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {4484#true} is VALID [2018-11-23 12:16:17,718 INFO L273 TraceCheckUtils]: 17: Hoare triple {4484#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {4484#true} is VALID [2018-11-23 12:16:17,718 INFO L273 TraceCheckUtils]: 18: Hoare triple {4484#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {4484#true} is VALID [2018-11-23 12:16:17,718 INFO L273 TraceCheckUtils]: 19: Hoare triple {4484#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {4484#true} is VALID [2018-11-23 12:16:17,718 INFO L273 TraceCheckUtils]: 20: Hoare triple {4484#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {4484#true} is VALID [2018-11-23 12:16:17,718 INFO L273 TraceCheckUtils]: 21: Hoare triple {4484#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {4484#true} is VALID [2018-11-23 12:16:17,718 INFO L273 TraceCheckUtils]: 22: Hoare triple {4484#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {4484#true} is VALID [2018-11-23 12:16:17,718 INFO L273 TraceCheckUtils]: 23: Hoare triple {4484#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {4484#true} is VALID [2018-11-23 12:16:17,719 INFO L273 TraceCheckUtils]: 24: Hoare triple {4484#true} assume !(~i~1 < 20); {4484#true} is VALID [2018-11-23 12:16:17,719 INFO L256 TraceCheckUtils]: 25: Hoare triple {4484#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {4484#true} is VALID [2018-11-23 12:16:17,719 INFO L273 TraceCheckUtils]: 26: Hoare triple {4484#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {4484#true} is VALID [2018-11-23 12:16:17,719 INFO L273 TraceCheckUtils]: 27: Hoare triple {4484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {4484#true} is VALID [2018-11-23 12:16:17,719 INFO L273 TraceCheckUtils]: 28: Hoare triple {4484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {4484#true} is VALID [2018-11-23 12:16:17,719 INFO L273 TraceCheckUtils]: 29: Hoare triple {4484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {4484#true} is VALID [2018-11-23 12:16:17,719 INFO L273 TraceCheckUtils]: 30: Hoare triple {4484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {4484#true} is VALID [2018-11-23 12:16:17,720 INFO L273 TraceCheckUtils]: 31: Hoare triple {4484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {4484#true} is VALID [2018-11-23 12:16:17,720 INFO L273 TraceCheckUtils]: 32: Hoare triple {4484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {4484#true} is VALID [2018-11-23 12:16:17,720 INFO L273 TraceCheckUtils]: 33: Hoare triple {4484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {4484#true} is VALID [2018-11-23 12:16:17,720 INFO L273 TraceCheckUtils]: 34: Hoare triple {4484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {4484#true} is VALID [2018-11-23 12:16:17,720 INFO L273 TraceCheckUtils]: 35: Hoare triple {4484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {4484#true} is VALID [2018-11-23 12:16:17,720 INFO L273 TraceCheckUtils]: 36: Hoare triple {4484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {4484#true} is VALID [2018-11-23 12:16:17,721 INFO L273 TraceCheckUtils]: 37: Hoare triple {4484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {4484#true} is VALID [2018-11-23 12:16:17,721 INFO L273 TraceCheckUtils]: 38: Hoare triple {4484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {4484#true} is VALID [2018-11-23 12:16:17,721 INFO L273 TraceCheckUtils]: 39: Hoare triple {4484#true} assume !(~i~0 < 20); {4484#true} is VALID [2018-11-23 12:16:17,721 INFO L273 TraceCheckUtils]: 40: Hoare triple {4484#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {4484#true} is VALID [2018-11-23 12:16:17,721 INFO L273 TraceCheckUtils]: 41: Hoare triple {4484#true} assume true; {4484#true} is VALID [2018-11-23 12:16:17,722 INFO L268 TraceCheckUtils]: 42: Hoare quadruple {4484#true} {4484#true} #77#return; {4484#true} is VALID [2018-11-23 12:16:17,722 INFO L273 TraceCheckUtils]: 43: Hoare triple {4484#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {4484#true} is VALID [2018-11-23 12:16:17,722 INFO L256 TraceCheckUtils]: 44: Hoare triple {4484#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {4484#true} is VALID [2018-11-23 12:16:17,722 INFO L273 TraceCheckUtils]: 45: Hoare triple {4484#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {4484#true} is VALID [2018-11-23 12:16:17,722 INFO L273 TraceCheckUtils]: 46: Hoare triple {4484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {4484#true} is VALID [2018-11-23 12:16:17,722 INFO L273 TraceCheckUtils]: 47: Hoare triple {4484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {4484#true} is VALID [2018-11-23 12:16:17,723 INFO L273 TraceCheckUtils]: 48: Hoare triple {4484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {4484#true} is VALID [2018-11-23 12:16:17,723 INFO L273 TraceCheckUtils]: 49: Hoare triple {4484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {4484#true} is VALID [2018-11-23 12:16:17,723 INFO L273 TraceCheckUtils]: 50: Hoare triple {4484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {4484#true} is VALID [2018-11-23 12:16:17,723 INFO L273 TraceCheckUtils]: 51: Hoare triple {4484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {4484#true} is VALID [2018-11-23 12:16:17,723 INFO L273 TraceCheckUtils]: 52: Hoare triple {4484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {4484#true} is VALID [2018-11-23 12:16:17,723 INFO L273 TraceCheckUtils]: 53: Hoare triple {4484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {4484#true} is VALID [2018-11-23 12:16:17,724 INFO L273 TraceCheckUtils]: 54: Hoare triple {4484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {4484#true} is VALID [2018-11-23 12:16:17,724 INFO L273 TraceCheckUtils]: 55: Hoare triple {4484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {4484#true} is VALID [2018-11-23 12:16:17,724 INFO L273 TraceCheckUtils]: 56: Hoare triple {4484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {4484#true} is VALID [2018-11-23 12:16:17,724 INFO L273 TraceCheckUtils]: 57: Hoare triple {4484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {4484#true} is VALID [2018-11-23 12:16:17,724 INFO L273 TraceCheckUtils]: 58: Hoare triple {4484#true} assume !(~i~0 < 20); {4484#true} is VALID [2018-11-23 12:16:17,724 INFO L273 TraceCheckUtils]: 59: Hoare triple {4484#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {4484#true} is VALID [2018-11-23 12:16:17,725 INFO L273 TraceCheckUtils]: 60: Hoare triple {4484#true} assume true; {4484#true} is VALID [2018-11-23 12:16:17,725 INFO L268 TraceCheckUtils]: 61: Hoare quadruple {4484#true} {4484#true} #79#return; {4484#true} is VALID [2018-11-23 12:16:17,738 INFO L273 TraceCheckUtils]: 62: Hoare triple {4484#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {4685#(<= main_~i~2 0)} is VALID [2018-11-23 12:16:17,743 INFO L273 TraceCheckUtils]: 63: Hoare triple {4685#(<= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {4685#(<= main_~i~2 0)} is VALID [2018-11-23 12:16:17,743 INFO L273 TraceCheckUtils]: 64: Hoare triple {4685#(<= main_~i~2 0)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {4692#(<= main_~i~2 1)} is VALID [2018-11-23 12:16:17,744 INFO L273 TraceCheckUtils]: 65: Hoare triple {4692#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {4692#(<= main_~i~2 1)} is VALID [2018-11-23 12:16:17,744 INFO L273 TraceCheckUtils]: 66: Hoare triple {4692#(<= main_~i~2 1)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {4699#(<= main_~i~2 2)} is VALID [2018-11-23 12:16:17,745 INFO L273 TraceCheckUtils]: 67: Hoare triple {4699#(<= main_~i~2 2)} assume !(~i~2 < 19); {4485#false} is VALID [2018-11-23 12:16:17,745 INFO L273 TraceCheckUtils]: 68: Hoare triple {4485#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {4485#false} is VALID [2018-11-23 12:16:17,745 INFO L256 TraceCheckUtils]: 69: Hoare triple {4485#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {4485#false} is VALID [2018-11-23 12:16:17,745 INFO L273 TraceCheckUtils]: 70: Hoare triple {4485#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {4485#false} is VALID [2018-11-23 12:16:17,745 INFO L273 TraceCheckUtils]: 71: Hoare triple {4485#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {4485#false} is VALID [2018-11-23 12:16:17,745 INFO L273 TraceCheckUtils]: 72: Hoare triple {4485#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {4485#false} is VALID [2018-11-23 12:16:17,745 INFO L273 TraceCheckUtils]: 73: Hoare triple {4485#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {4485#false} is VALID [2018-11-23 12:16:17,746 INFO L273 TraceCheckUtils]: 74: Hoare triple {4485#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {4485#false} is VALID [2018-11-23 12:16:17,746 INFO L273 TraceCheckUtils]: 75: Hoare triple {4485#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {4485#false} is VALID [2018-11-23 12:16:17,746 INFO L273 TraceCheckUtils]: 76: Hoare triple {4485#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {4485#false} is VALID [2018-11-23 12:16:17,746 INFO L273 TraceCheckUtils]: 77: Hoare triple {4485#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {4485#false} is VALID [2018-11-23 12:16:17,746 INFO L273 TraceCheckUtils]: 78: Hoare triple {4485#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {4485#false} is VALID [2018-11-23 12:16:17,747 INFO L273 TraceCheckUtils]: 79: Hoare triple {4485#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {4485#false} is VALID [2018-11-23 12:16:17,747 INFO L273 TraceCheckUtils]: 80: Hoare triple {4485#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {4485#false} is VALID [2018-11-23 12:16:17,747 INFO L273 TraceCheckUtils]: 81: Hoare triple {4485#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {4485#false} is VALID [2018-11-23 12:16:17,747 INFO L273 TraceCheckUtils]: 82: Hoare triple {4485#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {4485#false} is VALID [2018-11-23 12:16:17,747 INFO L273 TraceCheckUtils]: 83: Hoare triple {4485#false} assume !(~i~0 < 20); {4485#false} is VALID [2018-11-23 12:16:17,748 INFO L273 TraceCheckUtils]: 84: Hoare triple {4485#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {4485#false} is VALID [2018-11-23 12:16:17,748 INFO L273 TraceCheckUtils]: 85: Hoare triple {4485#false} assume true; {4485#false} is VALID [2018-11-23 12:16:17,748 INFO L268 TraceCheckUtils]: 86: Hoare quadruple {4485#false} {4485#false} #81#return; {4485#false} is VALID [2018-11-23 12:16:17,748 INFO L273 TraceCheckUtils]: 87: Hoare triple {4485#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {4485#false} is VALID [2018-11-23 12:16:17,748 INFO L273 TraceCheckUtils]: 88: Hoare triple {4485#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {4485#false} is VALID [2018-11-23 12:16:17,749 INFO L273 TraceCheckUtils]: 89: Hoare triple {4485#false} assume !false; {4485#false} is VALID [2018-11-23 12:16:17,752 INFO L134 CoverageAnalysis]: Checked inductivity of 271 backedges. 94 proven. 4 refuted. 0 times theorem prover too weak. 173 trivial. 0 not checked. [2018-11-23 12:16:17,771 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:16:17,771 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 5] total 15 [2018-11-23 12:16:17,772 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 90 [2018-11-23 12:16:17,772 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:17,772 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states. [2018-11-23 12:16:17,873 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:17,873 INFO L459 AbstractCegarLoop]: Interpolant automaton has 15 states [2018-11-23 12:16:17,873 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2018-11-23 12:16:17,874 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=75, Invalid=135, Unknown=0, NotChecked=0, Total=210 [2018-11-23 12:16:17,874 INFO L87 Difference]: Start difference. First operand 57 states and 64 transitions. Second operand 15 states. [2018-11-23 12:16:18,380 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:18,380 INFO L93 Difference]: Finished difference Result 95 states and 110 transitions. [2018-11-23 12:16:18,380 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2018-11-23 12:16:18,380 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 90 [2018-11-23 12:16:18,380 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:18,380 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2018-11-23 12:16:18,382 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 85 transitions. [2018-11-23 12:16:18,382 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2018-11-23 12:16:18,383 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 85 transitions. [2018-11-23 12:16:18,383 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 85 transitions. [2018-11-23 12:16:18,504 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:18,506 INFO L225 Difference]: With dead ends: 95 [2018-11-23 12:16:18,507 INFO L226 Difference]: Without dead ends: 63 [2018-11-23 12:16:18,507 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 101 GetRequests, 88 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 27 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=75, Invalid=135, Unknown=0, NotChecked=0, Total=210 [2018-11-23 12:16:18,508 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 63 states. [2018-11-23 12:16:18,534 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 63 to 61. [2018-11-23 12:16:18,534 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:18,534 INFO L82 GeneralOperation]: Start isEquivalent. First operand 63 states. Second operand 61 states. [2018-11-23 12:16:18,534 INFO L74 IsIncluded]: Start isIncluded. First operand 63 states. Second operand 61 states. [2018-11-23 12:16:18,534 INFO L87 Difference]: Start difference. First operand 63 states. Second operand 61 states. [2018-11-23 12:16:18,536 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:18,537 INFO L93 Difference]: Finished difference Result 63 states and 70 transitions. [2018-11-23 12:16:18,537 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 70 transitions. [2018-11-23 12:16:18,537 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:18,537 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:18,538 INFO L74 IsIncluded]: Start isIncluded. First operand 61 states. Second operand 63 states. [2018-11-23 12:16:18,538 INFO L87 Difference]: Start difference. First operand 61 states. Second operand 63 states. [2018-11-23 12:16:18,539 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:18,539 INFO L93 Difference]: Finished difference Result 63 states and 70 transitions. [2018-11-23 12:16:18,540 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 70 transitions. [2018-11-23 12:16:18,540 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:18,540 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:18,540 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:18,540 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:18,541 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 61 states. [2018-11-23 12:16:18,542 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 61 states to 61 states and 68 transitions. [2018-11-23 12:16:18,542 INFO L78 Accepts]: Start accepts. Automaton has 61 states and 68 transitions. Word has length 90 [2018-11-23 12:16:18,543 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:18,543 INFO L480 AbstractCegarLoop]: Abstraction has 61 states and 68 transitions. [2018-11-23 12:16:18,543 INFO L481 AbstractCegarLoop]: Interpolant automaton has 15 states. [2018-11-23 12:16:18,543 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 68 transitions. [2018-11-23 12:16:18,544 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 95 [2018-11-23 12:16:18,544 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:18,544 INFO L402 BasicCegarLoop]: trace histogram [10, 10, 9, 9, 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] [2018-11-23 12:16:18,544 INFO L423 AbstractCegarLoop]: === Iteration 13 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:18,545 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:18,545 INFO L82 PathProgramCache]: Analyzing trace with hash 1656201482, now seen corresponding path program 10 times [2018-11-23 12:16:18,545 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:18,545 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:18,546 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:18,546 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:16:18,546 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:18,566 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:19,345 INFO L256 TraceCheckUtils]: 0: Hoare triple {5115#true} call ULTIMATE.init(); {5115#true} is VALID [2018-11-23 12:16:19,345 INFO L273 TraceCheckUtils]: 1: Hoare triple {5115#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {5115#true} is VALID [2018-11-23 12:16:19,345 INFO L273 TraceCheckUtils]: 2: Hoare triple {5115#true} assume true; {5115#true} is VALID [2018-11-23 12:16:19,346 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5115#true} {5115#true} #73#return; {5115#true} is VALID [2018-11-23 12:16:19,346 INFO L256 TraceCheckUtils]: 4: Hoare triple {5115#true} call #t~ret14 := main(); {5115#true} is VALID [2018-11-23 12:16:19,346 INFO L273 TraceCheckUtils]: 5: Hoare triple {5115#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {5117#(= main_~i~1 0)} is VALID [2018-11-23 12:16:19,347 INFO L273 TraceCheckUtils]: 6: Hoare triple {5117#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5117#(= main_~i~1 0)} is VALID [2018-11-23 12:16:19,348 INFO L273 TraceCheckUtils]: 7: Hoare triple {5117#(= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5118#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:19,348 INFO L273 TraceCheckUtils]: 8: Hoare triple {5118#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5118#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:19,349 INFO L273 TraceCheckUtils]: 9: Hoare triple {5118#(<= main_~i~1 1)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5119#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:19,349 INFO L273 TraceCheckUtils]: 10: Hoare triple {5119#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5119#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:19,350 INFO L273 TraceCheckUtils]: 11: Hoare triple {5119#(<= main_~i~1 2)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5120#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:19,351 INFO L273 TraceCheckUtils]: 12: Hoare triple {5120#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5120#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:19,352 INFO L273 TraceCheckUtils]: 13: Hoare triple {5120#(<= main_~i~1 3)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5121#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:19,352 INFO L273 TraceCheckUtils]: 14: Hoare triple {5121#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5121#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:19,353 INFO L273 TraceCheckUtils]: 15: Hoare triple {5121#(<= main_~i~1 4)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5122#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:19,354 INFO L273 TraceCheckUtils]: 16: Hoare triple {5122#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5122#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:19,354 INFO L273 TraceCheckUtils]: 17: Hoare triple {5122#(<= main_~i~1 5)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5123#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:19,355 INFO L273 TraceCheckUtils]: 18: Hoare triple {5123#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5123#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:19,356 INFO L273 TraceCheckUtils]: 19: Hoare triple {5123#(<= main_~i~1 6)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5124#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:19,356 INFO L273 TraceCheckUtils]: 20: Hoare triple {5124#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5124#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:19,357 INFO L273 TraceCheckUtils]: 21: Hoare triple {5124#(<= main_~i~1 7)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5125#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:19,357 INFO L273 TraceCheckUtils]: 22: Hoare triple {5125#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5125#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:19,358 INFO L273 TraceCheckUtils]: 23: Hoare triple {5125#(<= main_~i~1 8)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5126#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:19,358 INFO L273 TraceCheckUtils]: 24: Hoare triple {5126#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5126#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:19,359 INFO L273 TraceCheckUtils]: 25: Hoare triple {5126#(<= main_~i~1 9)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5127#(<= main_~i~1 10)} is VALID [2018-11-23 12:16:19,360 INFO L273 TraceCheckUtils]: 26: Hoare triple {5127#(<= main_~i~1 10)} assume !(~i~1 < 20); {5116#false} is VALID [2018-11-23 12:16:19,360 INFO L256 TraceCheckUtils]: 27: Hoare triple {5116#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {5115#true} is VALID [2018-11-23 12:16:19,360 INFO L273 TraceCheckUtils]: 28: Hoare triple {5115#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5115#true} is VALID [2018-11-23 12:16:19,360 INFO L273 TraceCheckUtils]: 29: Hoare triple {5115#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5115#true} is VALID [2018-11-23 12:16:19,361 INFO L273 TraceCheckUtils]: 30: Hoare triple {5115#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5115#true} is VALID [2018-11-23 12:16:19,361 INFO L273 TraceCheckUtils]: 31: Hoare triple {5115#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5115#true} is VALID [2018-11-23 12:16:19,361 INFO L273 TraceCheckUtils]: 32: Hoare triple {5115#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5115#true} is VALID [2018-11-23 12:16:19,361 INFO L273 TraceCheckUtils]: 33: Hoare triple {5115#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5115#true} is VALID [2018-11-23 12:16:19,361 INFO L273 TraceCheckUtils]: 34: Hoare triple {5115#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5115#true} is VALID [2018-11-23 12:16:19,362 INFO L273 TraceCheckUtils]: 35: Hoare triple {5115#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5115#true} is VALID [2018-11-23 12:16:19,362 INFO L273 TraceCheckUtils]: 36: Hoare triple {5115#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5115#true} is VALID [2018-11-23 12:16:19,362 INFO L273 TraceCheckUtils]: 37: Hoare triple {5115#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5115#true} is VALID [2018-11-23 12:16:19,362 INFO L273 TraceCheckUtils]: 38: Hoare triple {5115#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5115#true} is VALID [2018-11-23 12:16:19,362 INFO L273 TraceCheckUtils]: 39: Hoare triple {5115#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5115#true} is VALID [2018-11-23 12:16:19,363 INFO L273 TraceCheckUtils]: 40: Hoare triple {5115#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5115#true} is VALID [2018-11-23 12:16:19,363 INFO L273 TraceCheckUtils]: 41: Hoare triple {5115#true} assume !(~i~0 < 20); {5115#true} is VALID [2018-11-23 12:16:19,363 INFO L273 TraceCheckUtils]: 42: Hoare triple {5115#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {5115#true} is VALID [2018-11-23 12:16:19,363 INFO L273 TraceCheckUtils]: 43: Hoare triple {5115#true} assume true; {5115#true} is VALID [2018-11-23 12:16:19,363 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {5115#true} {5116#false} #77#return; {5116#false} is VALID [2018-11-23 12:16:19,363 INFO L273 TraceCheckUtils]: 45: Hoare triple {5116#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {5116#false} is VALID [2018-11-23 12:16:19,364 INFO L256 TraceCheckUtils]: 46: Hoare triple {5116#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {5115#true} is VALID [2018-11-23 12:16:19,364 INFO L273 TraceCheckUtils]: 47: Hoare triple {5115#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5115#true} is VALID [2018-11-23 12:16:19,364 INFO L273 TraceCheckUtils]: 48: Hoare triple {5115#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5115#true} is VALID [2018-11-23 12:16:19,364 INFO L273 TraceCheckUtils]: 49: Hoare triple {5115#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5115#true} is VALID [2018-11-23 12:16:19,364 INFO L273 TraceCheckUtils]: 50: Hoare triple {5115#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5115#true} is VALID [2018-11-23 12:16:19,365 INFO L273 TraceCheckUtils]: 51: Hoare triple {5115#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5115#true} is VALID [2018-11-23 12:16:19,365 INFO L273 TraceCheckUtils]: 52: Hoare triple {5115#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5115#true} is VALID [2018-11-23 12:16:19,365 INFO L273 TraceCheckUtils]: 53: Hoare triple {5115#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5115#true} is VALID [2018-11-23 12:16:19,365 INFO L273 TraceCheckUtils]: 54: Hoare triple {5115#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5115#true} is VALID [2018-11-23 12:16:19,365 INFO L273 TraceCheckUtils]: 55: Hoare triple {5115#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5115#true} is VALID [2018-11-23 12:16:19,365 INFO L273 TraceCheckUtils]: 56: Hoare triple {5115#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5115#true} is VALID [2018-11-23 12:16:19,365 INFO L273 TraceCheckUtils]: 57: Hoare triple {5115#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5115#true} is VALID [2018-11-23 12:16:19,366 INFO L273 TraceCheckUtils]: 58: Hoare triple {5115#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5115#true} is VALID [2018-11-23 12:16:19,366 INFO L273 TraceCheckUtils]: 59: Hoare triple {5115#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5115#true} is VALID [2018-11-23 12:16:19,366 INFO L273 TraceCheckUtils]: 60: Hoare triple {5115#true} assume !(~i~0 < 20); {5115#true} is VALID [2018-11-23 12:16:19,366 INFO L273 TraceCheckUtils]: 61: Hoare triple {5115#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {5115#true} is VALID [2018-11-23 12:16:19,366 INFO L273 TraceCheckUtils]: 62: Hoare triple {5115#true} assume true; {5115#true} is VALID [2018-11-23 12:16:19,366 INFO L268 TraceCheckUtils]: 63: Hoare quadruple {5115#true} {5116#false} #79#return; {5116#false} is VALID [2018-11-23 12:16:19,366 INFO L273 TraceCheckUtils]: 64: Hoare triple {5116#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {5116#false} is VALID [2018-11-23 12:16:19,366 INFO L273 TraceCheckUtils]: 65: Hoare triple {5116#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {5116#false} is VALID [2018-11-23 12:16:19,366 INFO L273 TraceCheckUtils]: 66: Hoare triple {5116#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {5116#false} is VALID [2018-11-23 12:16:19,367 INFO L273 TraceCheckUtils]: 67: Hoare triple {5116#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {5116#false} is VALID [2018-11-23 12:16:19,367 INFO L273 TraceCheckUtils]: 68: Hoare triple {5116#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {5116#false} is VALID [2018-11-23 12:16:19,367 INFO L273 TraceCheckUtils]: 69: Hoare triple {5116#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {5116#false} is VALID [2018-11-23 12:16:19,367 INFO L273 TraceCheckUtils]: 70: Hoare triple {5116#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {5116#false} is VALID [2018-11-23 12:16:19,367 INFO L273 TraceCheckUtils]: 71: Hoare triple {5116#false} assume !(~i~2 < 19); {5116#false} is VALID [2018-11-23 12:16:19,367 INFO L273 TraceCheckUtils]: 72: Hoare triple {5116#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {5116#false} is VALID [2018-11-23 12:16:19,367 INFO L256 TraceCheckUtils]: 73: Hoare triple {5116#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {5115#true} is VALID [2018-11-23 12:16:19,367 INFO L273 TraceCheckUtils]: 74: Hoare triple {5115#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5115#true} is VALID [2018-11-23 12:16:19,368 INFO L273 TraceCheckUtils]: 75: Hoare triple {5115#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5115#true} is VALID [2018-11-23 12:16:19,368 INFO L273 TraceCheckUtils]: 76: Hoare triple {5115#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5115#true} is VALID [2018-11-23 12:16:19,368 INFO L273 TraceCheckUtils]: 77: Hoare triple {5115#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5115#true} is VALID [2018-11-23 12:16:19,368 INFO L273 TraceCheckUtils]: 78: Hoare triple {5115#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5115#true} is VALID [2018-11-23 12:16:19,368 INFO L273 TraceCheckUtils]: 79: Hoare triple {5115#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5115#true} is VALID [2018-11-23 12:16:19,368 INFO L273 TraceCheckUtils]: 80: Hoare triple {5115#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5115#true} is VALID [2018-11-23 12:16:19,368 INFO L273 TraceCheckUtils]: 81: Hoare triple {5115#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5115#true} is VALID [2018-11-23 12:16:19,368 INFO L273 TraceCheckUtils]: 82: Hoare triple {5115#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5115#true} is VALID [2018-11-23 12:16:19,368 INFO L273 TraceCheckUtils]: 83: Hoare triple {5115#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5115#true} is VALID [2018-11-23 12:16:19,369 INFO L273 TraceCheckUtils]: 84: Hoare triple {5115#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5115#true} is VALID [2018-11-23 12:16:19,369 INFO L273 TraceCheckUtils]: 85: Hoare triple {5115#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5115#true} is VALID [2018-11-23 12:16:19,369 INFO L273 TraceCheckUtils]: 86: Hoare triple {5115#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5115#true} is VALID [2018-11-23 12:16:19,369 INFO L273 TraceCheckUtils]: 87: Hoare triple {5115#true} assume !(~i~0 < 20); {5115#true} is VALID [2018-11-23 12:16:19,369 INFO L273 TraceCheckUtils]: 88: Hoare triple {5115#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {5115#true} is VALID [2018-11-23 12:16:19,369 INFO L273 TraceCheckUtils]: 89: Hoare triple {5115#true} assume true; {5115#true} is VALID [2018-11-23 12:16:19,369 INFO L268 TraceCheckUtils]: 90: Hoare quadruple {5115#true} {5116#false} #81#return; {5116#false} is VALID [2018-11-23 12:16:19,369 INFO L273 TraceCheckUtils]: 91: Hoare triple {5116#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {5116#false} is VALID [2018-11-23 12:16:19,370 INFO L273 TraceCheckUtils]: 92: Hoare triple {5116#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {5116#false} is VALID [2018-11-23 12:16:19,370 INFO L273 TraceCheckUtils]: 93: Hoare triple {5116#false} assume !false; {5116#false} is VALID [2018-11-23 12:16:19,373 INFO L134 CoverageAnalysis]: Checked inductivity of 295 backedges. 0 proven. 100 refuted. 0 times theorem prover too weak. 195 trivial. 0 not checked. [2018-11-23 12:16:19,373 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:16:19,373 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 12 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 12 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:16:19,382 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 12:16:19,443 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 12:16:19,443 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:16:19,462 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:19,463 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:19,592 INFO L256 TraceCheckUtils]: 0: Hoare triple {5115#true} call ULTIMATE.init(); {5115#true} is VALID [2018-11-23 12:16:19,592 INFO L273 TraceCheckUtils]: 1: Hoare triple {5115#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {5115#true} is VALID [2018-11-23 12:16:19,593 INFO L273 TraceCheckUtils]: 2: Hoare triple {5115#true} assume true; {5115#true} is VALID [2018-11-23 12:16:19,593 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5115#true} {5115#true} #73#return; {5115#true} is VALID [2018-11-23 12:16:19,593 INFO L256 TraceCheckUtils]: 4: Hoare triple {5115#true} call #t~ret14 := main(); {5115#true} is VALID [2018-11-23 12:16:19,594 INFO L273 TraceCheckUtils]: 5: Hoare triple {5115#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {5146#(<= main_~i~1 0)} is VALID [2018-11-23 12:16:19,594 INFO L273 TraceCheckUtils]: 6: Hoare triple {5146#(<= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5146#(<= main_~i~1 0)} is VALID [2018-11-23 12:16:19,594 INFO L273 TraceCheckUtils]: 7: Hoare triple {5146#(<= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5118#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:19,595 INFO L273 TraceCheckUtils]: 8: Hoare triple {5118#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5118#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:19,595 INFO L273 TraceCheckUtils]: 9: Hoare triple {5118#(<= main_~i~1 1)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5119#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:19,596 INFO L273 TraceCheckUtils]: 10: Hoare triple {5119#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5119#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:19,596 INFO L273 TraceCheckUtils]: 11: Hoare triple {5119#(<= main_~i~1 2)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5120#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:19,596 INFO L273 TraceCheckUtils]: 12: Hoare triple {5120#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5120#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:19,597 INFO L273 TraceCheckUtils]: 13: Hoare triple {5120#(<= main_~i~1 3)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5121#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:19,598 INFO L273 TraceCheckUtils]: 14: Hoare triple {5121#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5121#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:19,599 INFO L273 TraceCheckUtils]: 15: Hoare triple {5121#(<= main_~i~1 4)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5122#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:19,599 INFO L273 TraceCheckUtils]: 16: Hoare triple {5122#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5122#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:19,600 INFO L273 TraceCheckUtils]: 17: Hoare triple {5122#(<= main_~i~1 5)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5123#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:19,600 INFO L273 TraceCheckUtils]: 18: Hoare triple {5123#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5123#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:19,601 INFO L273 TraceCheckUtils]: 19: Hoare triple {5123#(<= main_~i~1 6)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5124#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:19,602 INFO L273 TraceCheckUtils]: 20: Hoare triple {5124#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5124#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:19,602 INFO L273 TraceCheckUtils]: 21: Hoare triple {5124#(<= main_~i~1 7)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5125#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:19,603 INFO L273 TraceCheckUtils]: 22: Hoare triple {5125#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5125#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:19,604 INFO L273 TraceCheckUtils]: 23: Hoare triple {5125#(<= main_~i~1 8)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5126#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:19,604 INFO L273 TraceCheckUtils]: 24: Hoare triple {5126#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5126#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:19,605 INFO L273 TraceCheckUtils]: 25: Hoare triple {5126#(<= main_~i~1 9)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5127#(<= main_~i~1 10)} is VALID [2018-11-23 12:16:19,606 INFO L273 TraceCheckUtils]: 26: Hoare triple {5127#(<= main_~i~1 10)} assume !(~i~1 < 20); {5116#false} is VALID [2018-11-23 12:16:19,606 INFO L256 TraceCheckUtils]: 27: Hoare triple {5116#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {5116#false} is VALID [2018-11-23 12:16:19,606 INFO L273 TraceCheckUtils]: 28: Hoare triple {5116#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5116#false} is VALID [2018-11-23 12:16:19,606 INFO L273 TraceCheckUtils]: 29: Hoare triple {5116#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5116#false} is VALID [2018-11-23 12:16:19,607 INFO L273 TraceCheckUtils]: 30: Hoare triple {5116#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5116#false} is VALID [2018-11-23 12:16:19,607 INFO L273 TraceCheckUtils]: 31: Hoare triple {5116#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5116#false} is VALID [2018-11-23 12:16:19,607 INFO L273 TraceCheckUtils]: 32: Hoare triple {5116#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5116#false} is VALID [2018-11-23 12:16:19,607 INFO L273 TraceCheckUtils]: 33: Hoare triple {5116#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5116#false} is VALID [2018-11-23 12:16:19,607 INFO L273 TraceCheckUtils]: 34: Hoare triple {5116#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5116#false} is VALID [2018-11-23 12:16:19,608 INFO L273 TraceCheckUtils]: 35: Hoare triple {5116#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5116#false} is VALID [2018-11-23 12:16:19,608 INFO L273 TraceCheckUtils]: 36: Hoare triple {5116#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5116#false} is VALID [2018-11-23 12:16:19,608 INFO L273 TraceCheckUtils]: 37: Hoare triple {5116#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5116#false} is VALID [2018-11-23 12:16:19,608 INFO L273 TraceCheckUtils]: 38: Hoare triple {5116#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5116#false} is VALID [2018-11-23 12:16:19,608 INFO L273 TraceCheckUtils]: 39: Hoare triple {5116#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5116#false} is VALID [2018-11-23 12:16:19,608 INFO L273 TraceCheckUtils]: 40: Hoare triple {5116#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5116#false} is VALID [2018-11-23 12:16:19,609 INFO L273 TraceCheckUtils]: 41: Hoare triple {5116#false} assume !(~i~0 < 20); {5116#false} is VALID [2018-11-23 12:16:19,609 INFO L273 TraceCheckUtils]: 42: Hoare triple {5116#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {5116#false} is VALID [2018-11-23 12:16:19,609 INFO L273 TraceCheckUtils]: 43: Hoare triple {5116#false} assume true; {5116#false} is VALID [2018-11-23 12:16:19,609 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {5116#false} {5116#false} #77#return; {5116#false} is VALID [2018-11-23 12:16:19,609 INFO L273 TraceCheckUtils]: 45: Hoare triple {5116#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {5116#false} is VALID [2018-11-23 12:16:19,609 INFO L256 TraceCheckUtils]: 46: Hoare triple {5116#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {5116#false} is VALID [2018-11-23 12:16:19,609 INFO L273 TraceCheckUtils]: 47: Hoare triple {5116#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5116#false} is VALID [2018-11-23 12:16:19,609 INFO L273 TraceCheckUtils]: 48: Hoare triple {5116#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5116#false} is VALID [2018-11-23 12:16:19,610 INFO L273 TraceCheckUtils]: 49: Hoare triple {5116#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5116#false} is VALID [2018-11-23 12:16:19,610 INFO L273 TraceCheckUtils]: 50: Hoare triple {5116#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5116#false} is VALID [2018-11-23 12:16:19,610 INFO L273 TraceCheckUtils]: 51: Hoare triple {5116#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5116#false} is VALID [2018-11-23 12:16:19,610 INFO L273 TraceCheckUtils]: 52: Hoare triple {5116#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5116#false} is VALID [2018-11-23 12:16:19,610 INFO L273 TraceCheckUtils]: 53: Hoare triple {5116#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5116#false} is VALID [2018-11-23 12:16:19,610 INFO L273 TraceCheckUtils]: 54: Hoare triple {5116#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5116#false} is VALID [2018-11-23 12:16:19,610 INFO L273 TraceCheckUtils]: 55: Hoare triple {5116#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5116#false} is VALID [2018-11-23 12:16:19,610 INFO L273 TraceCheckUtils]: 56: Hoare triple {5116#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5116#false} is VALID [2018-11-23 12:16:19,611 INFO L273 TraceCheckUtils]: 57: Hoare triple {5116#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5116#false} is VALID [2018-11-23 12:16:19,611 INFO L273 TraceCheckUtils]: 58: Hoare triple {5116#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5116#false} is VALID [2018-11-23 12:16:19,611 INFO L273 TraceCheckUtils]: 59: Hoare triple {5116#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5116#false} is VALID [2018-11-23 12:16:19,611 INFO L273 TraceCheckUtils]: 60: Hoare triple {5116#false} assume !(~i~0 < 20); {5116#false} is VALID [2018-11-23 12:16:19,611 INFO L273 TraceCheckUtils]: 61: Hoare triple {5116#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {5116#false} is VALID [2018-11-23 12:16:19,611 INFO L273 TraceCheckUtils]: 62: Hoare triple {5116#false} assume true; {5116#false} is VALID [2018-11-23 12:16:19,611 INFO L268 TraceCheckUtils]: 63: Hoare quadruple {5116#false} {5116#false} #79#return; {5116#false} is VALID [2018-11-23 12:16:19,611 INFO L273 TraceCheckUtils]: 64: Hoare triple {5116#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {5116#false} is VALID [2018-11-23 12:16:19,612 INFO L273 TraceCheckUtils]: 65: Hoare triple {5116#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {5116#false} is VALID [2018-11-23 12:16:19,612 INFO L273 TraceCheckUtils]: 66: Hoare triple {5116#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {5116#false} is VALID [2018-11-23 12:16:19,612 INFO L273 TraceCheckUtils]: 67: Hoare triple {5116#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {5116#false} is VALID [2018-11-23 12:16:19,612 INFO L273 TraceCheckUtils]: 68: Hoare triple {5116#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {5116#false} is VALID [2018-11-23 12:16:19,612 INFO L273 TraceCheckUtils]: 69: Hoare triple {5116#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {5116#false} is VALID [2018-11-23 12:16:19,612 INFO L273 TraceCheckUtils]: 70: Hoare triple {5116#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {5116#false} is VALID [2018-11-23 12:16:19,612 INFO L273 TraceCheckUtils]: 71: Hoare triple {5116#false} assume !(~i~2 < 19); {5116#false} is VALID [2018-11-23 12:16:19,612 INFO L273 TraceCheckUtils]: 72: Hoare triple {5116#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {5116#false} is VALID [2018-11-23 12:16:19,613 INFO L256 TraceCheckUtils]: 73: Hoare triple {5116#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {5116#false} is VALID [2018-11-23 12:16:19,613 INFO L273 TraceCheckUtils]: 74: Hoare triple {5116#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5116#false} is VALID [2018-11-23 12:16:19,613 INFO L273 TraceCheckUtils]: 75: Hoare triple {5116#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5116#false} is VALID [2018-11-23 12:16:19,613 INFO L273 TraceCheckUtils]: 76: Hoare triple {5116#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5116#false} is VALID [2018-11-23 12:16:19,613 INFO L273 TraceCheckUtils]: 77: Hoare triple {5116#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5116#false} is VALID [2018-11-23 12:16:19,613 INFO L273 TraceCheckUtils]: 78: Hoare triple {5116#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5116#false} is VALID [2018-11-23 12:16:19,613 INFO L273 TraceCheckUtils]: 79: Hoare triple {5116#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5116#false} is VALID [2018-11-23 12:16:19,613 INFO L273 TraceCheckUtils]: 80: Hoare triple {5116#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5116#false} is VALID [2018-11-23 12:16:19,613 INFO L273 TraceCheckUtils]: 81: Hoare triple {5116#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5116#false} is VALID [2018-11-23 12:16:19,614 INFO L273 TraceCheckUtils]: 82: Hoare triple {5116#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5116#false} is VALID [2018-11-23 12:16:19,614 INFO L273 TraceCheckUtils]: 83: Hoare triple {5116#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5116#false} is VALID [2018-11-23 12:16:19,614 INFO L273 TraceCheckUtils]: 84: Hoare triple {5116#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5116#false} is VALID [2018-11-23 12:16:19,614 INFO L273 TraceCheckUtils]: 85: Hoare triple {5116#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5116#false} is VALID [2018-11-23 12:16:19,614 INFO L273 TraceCheckUtils]: 86: Hoare triple {5116#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5116#false} is VALID [2018-11-23 12:16:19,614 INFO L273 TraceCheckUtils]: 87: Hoare triple {5116#false} assume !(~i~0 < 20); {5116#false} is VALID [2018-11-23 12:16:19,614 INFO L273 TraceCheckUtils]: 88: Hoare triple {5116#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {5116#false} is VALID [2018-11-23 12:16:19,614 INFO L273 TraceCheckUtils]: 89: Hoare triple {5116#false} assume true; {5116#false} is VALID [2018-11-23 12:16:19,615 INFO L268 TraceCheckUtils]: 90: Hoare quadruple {5116#false} {5116#false} #81#return; {5116#false} is VALID [2018-11-23 12:16:19,615 INFO L273 TraceCheckUtils]: 91: Hoare triple {5116#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {5116#false} is VALID [2018-11-23 12:16:19,615 INFO L273 TraceCheckUtils]: 92: Hoare triple {5116#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {5116#false} is VALID [2018-11-23 12:16:19,615 INFO L273 TraceCheckUtils]: 93: Hoare triple {5116#false} assume !false; {5116#false} is VALID [2018-11-23 12:16:19,619 INFO L134 CoverageAnalysis]: Checked inductivity of 295 backedges. 0 proven. 100 refuted. 0 times theorem prover too weak. 195 trivial. 0 not checked. [2018-11-23 12:16:19,638 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:16:19,638 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 14 [2018-11-23 12:16:19,638 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 94 [2018-11-23 12:16:19,639 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:19,639 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states. [2018-11-23 12:16:19,709 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:16:19,710 INFO L459 AbstractCegarLoop]: Interpolant automaton has 14 states [2018-11-23 12:16:19,710 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2018-11-23 12:16:19,710 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=91, Invalid=91, Unknown=0, NotChecked=0, Total=182 [2018-11-23 12:16:19,711 INFO L87 Difference]: Start difference. First operand 61 states and 68 transitions. Second operand 14 states. [2018-11-23 12:16:20,009 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:20,010 INFO L93 Difference]: Finished difference Result 98 states and 112 transitions. [2018-11-23 12:16:20,010 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2018-11-23 12:16:20,010 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 94 [2018-11-23 12:16:20,010 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:20,011 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-23 12:16:20,012 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 80 transitions. [2018-11-23 12:16:20,012 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-23 12:16:20,013 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 80 transitions. [2018-11-23 12:16:20,013 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 80 transitions. [2018-11-23 12:16:20,621 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:16:20,624 INFO L225 Difference]: With dead ends: 98 [2018-11-23 12:16:20,624 INFO L226 Difference]: Without dead ends: 64 [2018-11-23 12:16:20,625 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 106 GetRequests, 94 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 18 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=91, Invalid=91, Unknown=0, NotChecked=0, Total=182 [2018-11-23 12:16:20,625 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 64 states. [2018-11-23 12:16:21,104 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 64 to 63. [2018-11-23 12:16:21,105 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:21,105 INFO L82 GeneralOperation]: Start isEquivalent. First operand 64 states. Second operand 63 states. [2018-11-23 12:16:21,105 INFO L74 IsIncluded]: Start isIncluded. First operand 64 states. Second operand 63 states. [2018-11-23 12:16:21,105 INFO L87 Difference]: Start difference. First operand 64 states. Second operand 63 states. [2018-11-23 12:16:21,107 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:21,108 INFO L93 Difference]: Finished difference Result 64 states and 71 transitions. [2018-11-23 12:16:21,108 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 71 transitions. [2018-11-23 12:16:21,108 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:21,108 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:21,108 INFO L74 IsIncluded]: Start isIncluded. First operand 63 states. Second operand 64 states. [2018-11-23 12:16:21,109 INFO L87 Difference]: Start difference. First operand 63 states. Second operand 64 states. [2018-11-23 12:16:21,110 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:21,111 INFO L93 Difference]: Finished difference Result 64 states and 71 transitions. [2018-11-23 12:16:21,111 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 71 transitions. [2018-11-23 12:16:21,111 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:21,111 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:21,111 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:21,112 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:21,112 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 63 states. [2018-11-23 12:16:21,113 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 63 states to 63 states and 70 transitions. [2018-11-23 12:16:21,113 INFO L78 Accepts]: Start accepts. Automaton has 63 states and 70 transitions. Word has length 94 [2018-11-23 12:16:21,114 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:21,114 INFO L480 AbstractCegarLoop]: Abstraction has 63 states and 70 transitions. [2018-11-23 12:16:21,114 INFO L481 AbstractCegarLoop]: Interpolant automaton has 14 states. [2018-11-23 12:16:21,114 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 70 transitions. [2018-11-23 12:16:21,115 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 97 [2018-11-23 12:16:21,115 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:21,115 INFO L402 BasicCegarLoop]: trace histogram [11, 11, 9, 9, 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] [2018-11-23 12:16:21,116 INFO L423 AbstractCegarLoop]: === Iteration 14 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:21,116 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:21,116 INFO L82 PathProgramCache]: Analyzing trace with hash 659152588, now seen corresponding path program 11 times [2018-11-23 12:16:21,116 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:21,116 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:21,117 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:21,117 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:16:21,117 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:21,139 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:21,677 INFO L256 TraceCheckUtils]: 0: Hoare triple {5767#true} call ULTIMATE.init(); {5767#true} is VALID [2018-11-23 12:16:21,678 INFO L273 TraceCheckUtils]: 1: Hoare triple {5767#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {5767#true} is VALID [2018-11-23 12:16:21,678 INFO L273 TraceCheckUtils]: 2: Hoare triple {5767#true} assume true; {5767#true} is VALID [2018-11-23 12:16:21,678 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5767#true} {5767#true} #73#return; {5767#true} is VALID [2018-11-23 12:16:21,678 INFO L256 TraceCheckUtils]: 4: Hoare triple {5767#true} call #t~ret14 := main(); {5767#true} is VALID [2018-11-23 12:16:21,679 INFO L273 TraceCheckUtils]: 5: Hoare triple {5767#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {5769#(= main_~i~1 0)} is VALID [2018-11-23 12:16:21,679 INFO L273 TraceCheckUtils]: 6: Hoare triple {5769#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5769#(= main_~i~1 0)} is VALID [2018-11-23 12:16:21,680 INFO L273 TraceCheckUtils]: 7: Hoare triple {5769#(= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5770#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:21,680 INFO L273 TraceCheckUtils]: 8: Hoare triple {5770#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5770#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:21,681 INFO L273 TraceCheckUtils]: 9: Hoare triple {5770#(<= main_~i~1 1)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5771#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:21,682 INFO L273 TraceCheckUtils]: 10: Hoare triple {5771#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5771#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:21,683 INFO L273 TraceCheckUtils]: 11: Hoare triple {5771#(<= main_~i~1 2)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5772#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:21,683 INFO L273 TraceCheckUtils]: 12: Hoare triple {5772#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5772#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:21,684 INFO L273 TraceCheckUtils]: 13: Hoare triple {5772#(<= main_~i~1 3)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5773#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:21,685 INFO L273 TraceCheckUtils]: 14: Hoare triple {5773#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5773#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:21,685 INFO L273 TraceCheckUtils]: 15: Hoare triple {5773#(<= main_~i~1 4)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5774#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:21,686 INFO L273 TraceCheckUtils]: 16: Hoare triple {5774#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5774#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:21,687 INFO L273 TraceCheckUtils]: 17: Hoare triple {5774#(<= main_~i~1 5)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5775#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:21,687 INFO L273 TraceCheckUtils]: 18: Hoare triple {5775#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5775#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:21,688 INFO L273 TraceCheckUtils]: 19: Hoare triple {5775#(<= main_~i~1 6)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5776#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:21,689 INFO L273 TraceCheckUtils]: 20: Hoare triple {5776#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5776#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:21,689 INFO L273 TraceCheckUtils]: 21: Hoare triple {5776#(<= main_~i~1 7)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5777#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:21,690 INFO L273 TraceCheckUtils]: 22: Hoare triple {5777#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5777#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:21,691 INFO L273 TraceCheckUtils]: 23: Hoare triple {5777#(<= main_~i~1 8)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5778#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:21,691 INFO L273 TraceCheckUtils]: 24: Hoare triple {5778#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5778#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:21,692 INFO L273 TraceCheckUtils]: 25: Hoare triple {5778#(<= main_~i~1 9)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5779#(<= main_~i~1 10)} is VALID [2018-11-23 12:16:21,693 INFO L273 TraceCheckUtils]: 26: Hoare triple {5779#(<= main_~i~1 10)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5779#(<= main_~i~1 10)} is VALID [2018-11-23 12:16:21,693 INFO L273 TraceCheckUtils]: 27: Hoare triple {5779#(<= main_~i~1 10)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5780#(<= main_~i~1 11)} is VALID [2018-11-23 12:16:21,694 INFO L273 TraceCheckUtils]: 28: Hoare triple {5780#(<= main_~i~1 11)} assume !(~i~1 < 20); {5768#false} is VALID [2018-11-23 12:16:21,694 INFO L256 TraceCheckUtils]: 29: Hoare triple {5768#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {5767#true} is VALID [2018-11-23 12:16:21,694 INFO L273 TraceCheckUtils]: 30: Hoare triple {5767#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5767#true} is VALID [2018-11-23 12:16:21,695 INFO L273 TraceCheckUtils]: 31: Hoare triple {5767#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5767#true} is VALID [2018-11-23 12:16:21,695 INFO L273 TraceCheckUtils]: 32: Hoare triple {5767#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5767#true} is VALID [2018-11-23 12:16:21,695 INFO L273 TraceCheckUtils]: 33: Hoare triple {5767#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5767#true} is VALID [2018-11-23 12:16:21,695 INFO L273 TraceCheckUtils]: 34: Hoare triple {5767#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5767#true} is VALID [2018-11-23 12:16:21,695 INFO L273 TraceCheckUtils]: 35: Hoare triple {5767#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5767#true} is VALID [2018-11-23 12:16:21,696 INFO L273 TraceCheckUtils]: 36: Hoare triple {5767#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5767#true} is VALID [2018-11-23 12:16:21,696 INFO L273 TraceCheckUtils]: 37: Hoare triple {5767#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5767#true} is VALID [2018-11-23 12:16:21,696 INFO L273 TraceCheckUtils]: 38: Hoare triple {5767#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5767#true} is VALID [2018-11-23 12:16:21,696 INFO L273 TraceCheckUtils]: 39: Hoare triple {5767#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5767#true} is VALID [2018-11-23 12:16:21,696 INFO L273 TraceCheckUtils]: 40: Hoare triple {5767#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5767#true} is VALID [2018-11-23 12:16:21,697 INFO L273 TraceCheckUtils]: 41: Hoare triple {5767#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5767#true} is VALID [2018-11-23 12:16:21,697 INFO L273 TraceCheckUtils]: 42: Hoare triple {5767#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5767#true} is VALID [2018-11-23 12:16:21,697 INFO L273 TraceCheckUtils]: 43: Hoare triple {5767#true} assume !(~i~0 < 20); {5767#true} is VALID [2018-11-23 12:16:21,697 INFO L273 TraceCheckUtils]: 44: Hoare triple {5767#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {5767#true} is VALID [2018-11-23 12:16:21,697 INFO L273 TraceCheckUtils]: 45: Hoare triple {5767#true} assume true; {5767#true} is VALID [2018-11-23 12:16:21,697 INFO L268 TraceCheckUtils]: 46: Hoare quadruple {5767#true} {5768#false} #77#return; {5768#false} is VALID [2018-11-23 12:16:21,697 INFO L273 TraceCheckUtils]: 47: Hoare triple {5768#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {5768#false} is VALID [2018-11-23 12:16:21,697 INFO L256 TraceCheckUtils]: 48: Hoare triple {5768#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {5767#true} is VALID [2018-11-23 12:16:21,697 INFO L273 TraceCheckUtils]: 49: Hoare triple {5767#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5767#true} is VALID [2018-11-23 12:16:21,698 INFO L273 TraceCheckUtils]: 50: Hoare triple {5767#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5767#true} is VALID [2018-11-23 12:16:21,698 INFO L273 TraceCheckUtils]: 51: Hoare triple {5767#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5767#true} is VALID [2018-11-23 12:16:21,698 INFO L273 TraceCheckUtils]: 52: Hoare triple {5767#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5767#true} is VALID [2018-11-23 12:16:21,698 INFO L273 TraceCheckUtils]: 53: Hoare triple {5767#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5767#true} is VALID [2018-11-23 12:16:21,698 INFO L273 TraceCheckUtils]: 54: Hoare triple {5767#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5767#true} is VALID [2018-11-23 12:16:21,698 INFO L273 TraceCheckUtils]: 55: Hoare triple {5767#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5767#true} is VALID [2018-11-23 12:16:21,698 INFO L273 TraceCheckUtils]: 56: Hoare triple {5767#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5767#true} is VALID [2018-11-23 12:16:21,698 INFO L273 TraceCheckUtils]: 57: Hoare triple {5767#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5767#true} is VALID [2018-11-23 12:16:21,699 INFO L273 TraceCheckUtils]: 58: Hoare triple {5767#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5767#true} is VALID [2018-11-23 12:16:21,699 INFO L273 TraceCheckUtils]: 59: Hoare triple {5767#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5767#true} is VALID [2018-11-23 12:16:21,699 INFO L273 TraceCheckUtils]: 60: Hoare triple {5767#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5767#true} is VALID [2018-11-23 12:16:21,699 INFO L273 TraceCheckUtils]: 61: Hoare triple {5767#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5767#true} is VALID [2018-11-23 12:16:21,699 INFO L273 TraceCheckUtils]: 62: Hoare triple {5767#true} assume !(~i~0 < 20); {5767#true} is VALID [2018-11-23 12:16:21,700 INFO L273 TraceCheckUtils]: 63: Hoare triple {5767#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {5767#true} is VALID [2018-11-23 12:16:21,700 INFO L273 TraceCheckUtils]: 64: Hoare triple {5767#true} assume true; {5767#true} is VALID [2018-11-23 12:16:21,700 INFO L268 TraceCheckUtils]: 65: Hoare quadruple {5767#true} {5768#false} #79#return; {5768#false} is VALID [2018-11-23 12:16:21,700 INFO L273 TraceCheckUtils]: 66: Hoare triple {5768#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {5768#false} is VALID [2018-11-23 12:16:21,700 INFO L273 TraceCheckUtils]: 67: Hoare triple {5768#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {5768#false} is VALID [2018-11-23 12:16:21,700 INFO L273 TraceCheckUtils]: 68: Hoare triple {5768#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {5768#false} is VALID [2018-11-23 12:16:21,701 INFO L273 TraceCheckUtils]: 69: Hoare triple {5768#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {5768#false} is VALID [2018-11-23 12:16:21,701 INFO L273 TraceCheckUtils]: 70: Hoare triple {5768#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {5768#false} is VALID [2018-11-23 12:16:21,701 INFO L273 TraceCheckUtils]: 71: Hoare triple {5768#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {5768#false} is VALID [2018-11-23 12:16:21,701 INFO L273 TraceCheckUtils]: 72: Hoare triple {5768#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {5768#false} is VALID [2018-11-23 12:16:21,701 INFO L273 TraceCheckUtils]: 73: Hoare triple {5768#false} assume !(~i~2 < 19); {5768#false} is VALID [2018-11-23 12:16:21,701 INFO L273 TraceCheckUtils]: 74: Hoare triple {5768#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {5768#false} is VALID [2018-11-23 12:16:21,702 INFO L256 TraceCheckUtils]: 75: Hoare triple {5768#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {5767#true} is VALID [2018-11-23 12:16:21,702 INFO L273 TraceCheckUtils]: 76: Hoare triple {5767#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5767#true} is VALID [2018-11-23 12:16:21,702 INFO L273 TraceCheckUtils]: 77: Hoare triple {5767#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5767#true} is VALID [2018-11-23 12:16:21,702 INFO L273 TraceCheckUtils]: 78: Hoare triple {5767#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5767#true} is VALID [2018-11-23 12:16:21,702 INFO L273 TraceCheckUtils]: 79: Hoare triple {5767#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5767#true} is VALID [2018-11-23 12:16:21,703 INFO L273 TraceCheckUtils]: 80: Hoare triple {5767#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5767#true} is VALID [2018-11-23 12:16:21,703 INFO L273 TraceCheckUtils]: 81: Hoare triple {5767#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5767#true} is VALID [2018-11-23 12:16:21,703 INFO L273 TraceCheckUtils]: 82: Hoare triple {5767#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5767#true} is VALID [2018-11-23 12:16:21,703 INFO L273 TraceCheckUtils]: 83: Hoare triple {5767#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5767#true} is VALID [2018-11-23 12:16:21,703 INFO L273 TraceCheckUtils]: 84: Hoare triple {5767#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5767#true} is VALID [2018-11-23 12:16:21,703 INFO L273 TraceCheckUtils]: 85: Hoare triple {5767#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5767#true} is VALID [2018-11-23 12:16:21,704 INFO L273 TraceCheckUtils]: 86: Hoare triple {5767#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5767#true} is VALID [2018-11-23 12:16:21,704 INFO L273 TraceCheckUtils]: 87: Hoare triple {5767#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5767#true} is VALID [2018-11-23 12:16:21,704 INFO L273 TraceCheckUtils]: 88: Hoare triple {5767#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5767#true} is VALID [2018-11-23 12:16:21,704 INFO L273 TraceCheckUtils]: 89: Hoare triple {5767#true} assume !(~i~0 < 20); {5767#true} is VALID [2018-11-23 12:16:21,704 INFO L273 TraceCheckUtils]: 90: Hoare triple {5767#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {5767#true} is VALID [2018-11-23 12:16:21,705 INFO L273 TraceCheckUtils]: 91: Hoare triple {5767#true} assume true; {5767#true} is VALID [2018-11-23 12:16:21,705 INFO L268 TraceCheckUtils]: 92: Hoare quadruple {5767#true} {5768#false} #81#return; {5768#false} is VALID [2018-11-23 12:16:21,705 INFO L273 TraceCheckUtils]: 93: Hoare triple {5768#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {5768#false} is VALID [2018-11-23 12:16:21,705 INFO L273 TraceCheckUtils]: 94: Hoare triple {5768#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {5768#false} is VALID [2018-11-23 12:16:21,705 INFO L273 TraceCheckUtils]: 95: Hoare triple {5768#false} assume !false; {5768#false} is VALID [2018-11-23 12:16:21,710 INFO L134 CoverageAnalysis]: Checked inductivity of 316 backedges. 0 proven. 121 refuted. 0 times theorem prover too weak. 195 trivial. 0 not checked. [2018-11-23 12:16:21,711 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:16:21,711 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 13 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 13 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:16:21,726 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 12:16:21,995 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 11 check-sat command(s) [2018-11-23 12:16:21,995 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:16:22,017 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:22,019 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:22,231 INFO L256 TraceCheckUtils]: 0: Hoare triple {5767#true} call ULTIMATE.init(); {5767#true} is VALID [2018-11-23 12:16:22,231 INFO L273 TraceCheckUtils]: 1: Hoare triple {5767#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {5767#true} is VALID [2018-11-23 12:16:22,231 INFO L273 TraceCheckUtils]: 2: Hoare triple {5767#true} assume true; {5767#true} is VALID [2018-11-23 12:16:22,231 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5767#true} {5767#true} #73#return; {5767#true} is VALID [2018-11-23 12:16:22,232 INFO L256 TraceCheckUtils]: 4: Hoare triple {5767#true} call #t~ret14 := main(); {5767#true} is VALID [2018-11-23 12:16:22,232 INFO L273 TraceCheckUtils]: 5: Hoare triple {5767#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {5767#true} is VALID [2018-11-23 12:16:22,232 INFO L273 TraceCheckUtils]: 6: Hoare triple {5767#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5767#true} is VALID [2018-11-23 12:16:22,232 INFO L273 TraceCheckUtils]: 7: Hoare triple {5767#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5767#true} is VALID [2018-11-23 12:16:22,232 INFO L273 TraceCheckUtils]: 8: Hoare triple {5767#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5767#true} is VALID [2018-11-23 12:16:22,232 INFO L273 TraceCheckUtils]: 9: Hoare triple {5767#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5767#true} is VALID [2018-11-23 12:16:22,232 INFO L273 TraceCheckUtils]: 10: Hoare triple {5767#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5767#true} is VALID [2018-11-23 12:16:22,232 INFO L273 TraceCheckUtils]: 11: Hoare triple {5767#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5767#true} is VALID [2018-11-23 12:16:22,233 INFO L273 TraceCheckUtils]: 12: Hoare triple {5767#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5767#true} is VALID [2018-11-23 12:16:22,233 INFO L273 TraceCheckUtils]: 13: Hoare triple {5767#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5767#true} is VALID [2018-11-23 12:16:22,233 INFO L273 TraceCheckUtils]: 14: Hoare triple {5767#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5767#true} is VALID [2018-11-23 12:16:22,233 INFO L273 TraceCheckUtils]: 15: Hoare triple {5767#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5767#true} is VALID [2018-11-23 12:16:22,233 INFO L273 TraceCheckUtils]: 16: Hoare triple {5767#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5767#true} is VALID [2018-11-23 12:16:22,233 INFO L273 TraceCheckUtils]: 17: Hoare triple {5767#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5767#true} is VALID [2018-11-23 12:16:22,234 INFO L273 TraceCheckUtils]: 18: Hoare triple {5767#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5767#true} is VALID [2018-11-23 12:16:22,234 INFO L273 TraceCheckUtils]: 19: Hoare triple {5767#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5767#true} is VALID [2018-11-23 12:16:22,234 INFO L273 TraceCheckUtils]: 20: Hoare triple {5767#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5767#true} is VALID [2018-11-23 12:16:22,234 INFO L273 TraceCheckUtils]: 21: Hoare triple {5767#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5767#true} is VALID [2018-11-23 12:16:22,234 INFO L273 TraceCheckUtils]: 22: Hoare triple {5767#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5767#true} is VALID [2018-11-23 12:16:22,234 INFO L273 TraceCheckUtils]: 23: Hoare triple {5767#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5767#true} is VALID [2018-11-23 12:16:22,235 INFO L273 TraceCheckUtils]: 24: Hoare triple {5767#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5767#true} is VALID [2018-11-23 12:16:22,235 INFO L273 TraceCheckUtils]: 25: Hoare triple {5767#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5767#true} is VALID [2018-11-23 12:16:22,235 INFO L273 TraceCheckUtils]: 26: Hoare triple {5767#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {5767#true} is VALID [2018-11-23 12:16:22,235 INFO L273 TraceCheckUtils]: 27: Hoare triple {5767#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {5767#true} is VALID [2018-11-23 12:16:22,235 INFO L273 TraceCheckUtils]: 28: Hoare triple {5767#true} assume !(~i~1 < 20); {5767#true} is VALID [2018-11-23 12:16:22,235 INFO L256 TraceCheckUtils]: 29: Hoare triple {5767#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {5767#true} is VALID [2018-11-23 12:16:22,243 INFO L273 TraceCheckUtils]: 30: Hoare triple {5767#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5874#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:22,244 INFO L273 TraceCheckUtils]: 31: Hoare triple {5874#(<= max_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5874#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:22,244 INFO L273 TraceCheckUtils]: 32: Hoare triple {5874#(<= max_~i~0 0)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5874#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:22,246 INFO L273 TraceCheckUtils]: 33: Hoare triple {5874#(<= max_~i~0 0)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5874#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:22,246 INFO L273 TraceCheckUtils]: 34: Hoare triple {5874#(<= max_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5887#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:22,248 INFO L273 TraceCheckUtils]: 35: Hoare triple {5887#(<= max_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5887#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:22,248 INFO L273 TraceCheckUtils]: 36: Hoare triple {5887#(<= max_~i~0 1)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5887#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:22,250 INFO L273 TraceCheckUtils]: 37: Hoare triple {5887#(<= max_~i~0 1)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5887#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:22,250 INFO L273 TraceCheckUtils]: 38: Hoare triple {5887#(<= max_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5900#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:22,252 INFO L273 TraceCheckUtils]: 39: Hoare triple {5900#(<= max_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5900#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:22,252 INFO L273 TraceCheckUtils]: 40: Hoare triple {5900#(<= max_~i~0 2)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5900#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:22,254 INFO L273 TraceCheckUtils]: 41: Hoare triple {5900#(<= max_~i~0 2)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5900#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:22,254 INFO L273 TraceCheckUtils]: 42: Hoare triple {5900#(<= max_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5913#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:22,256 INFO L273 TraceCheckUtils]: 43: Hoare triple {5913#(<= max_~i~0 3)} assume !(~i~0 < 20); {5768#false} is VALID [2018-11-23 12:16:22,256 INFO L273 TraceCheckUtils]: 44: Hoare triple {5768#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {5768#false} is VALID [2018-11-23 12:16:22,256 INFO L273 TraceCheckUtils]: 45: Hoare triple {5768#false} assume true; {5768#false} is VALID [2018-11-23 12:16:22,256 INFO L268 TraceCheckUtils]: 46: Hoare quadruple {5768#false} {5767#true} #77#return; {5768#false} is VALID [2018-11-23 12:16:22,256 INFO L273 TraceCheckUtils]: 47: Hoare triple {5768#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {5768#false} is VALID [2018-11-23 12:16:22,256 INFO L256 TraceCheckUtils]: 48: Hoare triple {5768#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {5768#false} is VALID [2018-11-23 12:16:22,256 INFO L273 TraceCheckUtils]: 49: Hoare triple {5768#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5768#false} is VALID [2018-11-23 12:16:22,257 INFO L273 TraceCheckUtils]: 50: Hoare triple {5768#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5768#false} is VALID [2018-11-23 12:16:22,257 INFO L273 TraceCheckUtils]: 51: Hoare triple {5768#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5768#false} is VALID [2018-11-23 12:16:22,257 INFO L273 TraceCheckUtils]: 52: Hoare triple {5768#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5768#false} is VALID [2018-11-23 12:16:22,257 INFO L273 TraceCheckUtils]: 53: Hoare triple {5768#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5768#false} is VALID [2018-11-23 12:16:22,257 INFO L273 TraceCheckUtils]: 54: Hoare triple {5768#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5768#false} is VALID [2018-11-23 12:16:22,257 INFO L273 TraceCheckUtils]: 55: Hoare triple {5768#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5768#false} is VALID [2018-11-23 12:16:22,257 INFO L273 TraceCheckUtils]: 56: Hoare triple {5768#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5768#false} is VALID [2018-11-23 12:16:22,257 INFO L273 TraceCheckUtils]: 57: Hoare triple {5768#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5768#false} is VALID [2018-11-23 12:16:22,257 INFO L273 TraceCheckUtils]: 58: Hoare triple {5768#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5768#false} is VALID [2018-11-23 12:16:22,258 INFO L273 TraceCheckUtils]: 59: Hoare triple {5768#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5768#false} is VALID [2018-11-23 12:16:22,258 INFO L273 TraceCheckUtils]: 60: Hoare triple {5768#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5768#false} is VALID [2018-11-23 12:16:22,258 INFO L273 TraceCheckUtils]: 61: Hoare triple {5768#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5768#false} is VALID [2018-11-23 12:16:22,258 INFO L273 TraceCheckUtils]: 62: Hoare triple {5768#false} assume !(~i~0 < 20); {5768#false} is VALID [2018-11-23 12:16:22,258 INFO L273 TraceCheckUtils]: 63: Hoare triple {5768#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {5768#false} is VALID [2018-11-23 12:16:22,258 INFO L273 TraceCheckUtils]: 64: Hoare triple {5768#false} assume true; {5768#false} is VALID [2018-11-23 12:16:22,258 INFO L268 TraceCheckUtils]: 65: Hoare quadruple {5768#false} {5768#false} #79#return; {5768#false} is VALID [2018-11-23 12:16:22,258 INFO L273 TraceCheckUtils]: 66: Hoare triple {5768#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {5768#false} is VALID [2018-11-23 12:16:22,259 INFO L273 TraceCheckUtils]: 67: Hoare triple {5768#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {5768#false} is VALID [2018-11-23 12:16:22,259 INFO L273 TraceCheckUtils]: 68: Hoare triple {5768#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {5768#false} is VALID [2018-11-23 12:16:22,259 INFO L273 TraceCheckUtils]: 69: Hoare triple {5768#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {5768#false} is VALID [2018-11-23 12:16:22,259 INFO L273 TraceCheckUtils]: 70: Hoare triple {5768#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {5768#false} is VALID [2018-11-23 12:16:22,259 INFO L273 TraceCheckUtils]: 71: Hoare triple {5768#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {5768#false} is VALID [2018-11-23 12:16:22,259 INFO L273 TraceCheckUtils]: 72: Hoare triple {5768#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {5768#false} is VALID [2018-11-23 12:16:22,259 INFO L273 TraceCheckUtils]: 73: Hoare triple {5768#false} assume !(~i~2 < 19); {5768#false} is VALID [2018-11-23 12:16:22,259 INFO L273 TraceCheckUtils]: 74: Hoare triple {5768#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {5768#false} is VALID [2018-11-23 12:16:22,259 INFO L256 TraceCheckUtils]: 75: Hoare triple {5768#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {5768#false} is VALID [2018-11-23 12:16:22,260 INFO L273 TraceCheckUtils]: 76: Hoare triple {5768#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {5768#false} is VALID [2018-11-23 12:16:22,260 INFO L273 TraceCheckUtils]: 77: Hoare triple {5768#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5768#false} is VALID [2018-11-23 12:16:22,260 INFO L273 TraceCheckUtils]: 78: Hoare triple {5768#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5768#false} is VALID [2018-11-23 12:16:22,260 INFO L273 TraceCheckUtils]: 79: Hoare triple {5768#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5768#false} is VALID [2018-11-23 12:16:22,260 INFO L273 TraceCheckUtils]: 80: Hoare triple {5768#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5768#false} is VALID [2018-11-23 12:16:22,260 INFO L273 TraceCheckUtils]: 81: Hoare triple {5768#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5768#false} is VALID [2018-11-23 12:16:22,260 INFO L273 TraceCheckUtils]: 82: Hoare triple {5768#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5768#false} is VALID [2018-11-23 12:16:22,260 INFO L273 TraceCheckUtils]: 83: Hoare triple {5768#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5768#false} is VALID [2018-11-23 12:16:22,261 INFO L273 TraceCheckUtils]: 84: Hoare triple {5768#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5768#false} is VALID [2018-11-23 12:16:22,261 INFO L273 TraceCheckUtils]: 85: Hoare triple {5768#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {5768#false} is VALID [2018-11-23 12:16:22,261 INFO L273 TraceCheckUtils]: 86: Hoare triple {5768#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {5768#false} is VALID [2018-11-23 12:16:22,261 INFO L273 TraceCheckUtils]: 87: Hoare triple {5768#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {5768#false} is VALID [2018-11-23 12:16:22,261 INFO L273 TraceCheckUtils]: 88: Hoare triple {5768#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {5768#false} is VALID [2018-11-23 12:16:22,261 INFO L273 TraceCheckUtils]: 89: Hoare triple {5768#false} assume !(~i~0 < 20); {5768#false} is VALID [2018-11-23 12:16:22,261 INFO L273 TraceCheckUtils]: 90: Hoare triple {5768#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {5768#false} is VALID [2018-11-23 12:16:22,261 INFO L273 TraceCheckUtils]: 91: Hoare triple {5768#false} assume true; {5768#false} is VALID [2018-11-23 12:16:22,261 INFO L268 TraceCheckUtils]: 92: Hoare quadruple {5768#false} {5768#false} #81#return; {5768#false} is VALID [2018-11-23 12:16:22,262 INFO L273 TraceCheckUtils]: 93: Hoare triple {5768#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {5768#false} is VALID [2018-11-23 12:16:22,262 INFO L273 TraceCheckUtils]: 94: Hoare triple {5768#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {5768#false} is VALID [2018-11-23 12:16:22,262 INFO L273 TraceCheckUtils]: 95: Hoare triple {5768#false} assume !false; {5768#false} is VALID [2018-11-23 12:16:22,265 INFO L134 CoverageAnalysis]: Checked inductivity of 316 backedges. 88 proven. 15 refuted. 0 times theorem prover too weak. 213 trivial. 0 not checked. [2018-11-23 12:16:22,285 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:16:22,285 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 6] total 18 [2018-11-23 12:16:22,286 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 96 [2018-11-23 12:16:22,287 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:22,287 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states. [2018-11-23 12:16:22,390 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:16:22,390 INFO L459 AbstractCegarLoop]: Interpolant automaton has 18 states [2018-11-23 12:16:22,390 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2018-11-23 12:16:22,391 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=105, Invalid=201, Unknown=0, NotChecked=0, Total=306 [2018-11-23 12:16:22,391 INFO L87 Difference]: Start difference. First operand 63 states and 70 transitions. Second operand 18 states. [2018-11-23 12:16:23,015 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:23,016 INFO L93 Difference]: Finished difference Result 107 states and 127 transitions. [2018-11-23 12:16:23,016 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2018-11-23 12:16:23,016 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 96 [2018-11-23 12:16:23,016 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:23,016 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-23 12:16:23,018 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 106 transitions. [2018-11-23 12:16:23,018 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-23 12:16:23,020 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 106 transitions. [2018-11-23 12:16:23,020 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states and 106 transitions. [2018-11-23 12:16:24,301 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:16:24,303 INFO L225 Difference]: With dead ends: 107 [2018-11-23 12:16:24,303 INFO L226 Difference]: Without dead ends: 73 [2018-11-23 12:16:24,306 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 109 GetRequests, 93 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 44 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=105, Invalid=201, Unknown=0, NotChecked=0, Total=306 [2018-11-23 12:16:24,306 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 73 states. [2018-11-23 12:16:24,341 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 73 to 69. [2018-11-23 12:16:24,341 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:24,341 INFO L82 GeneralOperation]: Start isEquivalent. First operand 73 states. Second operand 69 states. [2018-11-23 12:16:24,341 INFO L74 IsIncluded]: Start isIncluded. First operand 73 states. Second operand 69 states. [2018-11-23 12:16:24,342 INFO L87 Difference]: Start difference. First operand 73 states. Second operand 69 states. [2018-11-23 12:16:24,344 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:24,344 INFO L93 Difference]: Finished difference Result 73 states and 82 transitions. [2018-11-23 12:16:24,344 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 82 transitions. [2018-11-23 12:16:24,344 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:24,344 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:24,345 INFO L74 IsIncluded]: Start isIncluded. First operand 69 states. Second operand 73 states. [2018-11-23 12:16:24,345 INFO L87 Difference]: Start difference. First operand 69 states. Second operand 73 states. [2018-11-23 12:16:24,347 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:24,347 INFO L93 Difference]: Finished difference Result 73 states and 82 transitions. [2018-11-23 12:16:24,347 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 82 transitions. [2018-11-23 12:16:24,348 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:24,348 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:24,348 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:24,348 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:24,348 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 69 states. [2018-11-23 12:16:24,350 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 69 states to 69 states and 77 transitions. [2018-11-23 12:16:24,350 INFO L78 Accepts]: Start accepts. Automaton has 69 states and 77 transitions. Word has length 96 [2018-11-23 12:16:24,350 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:24,350 INFO L480 AbstractCegarLoop]: Abstraction has 69 states and 77 transitions. [2018-11-23 12:16:24,350 INFO L481 AbstractCegarLoop]: Interpolant automaton has 18 states. [2018-11-23 12:16:24,350 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 77 transitions. [2018-11-23 12:16:24,351 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 111 [2018-11-23 12:16:24,351 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:24,352 INFO L402 BasicCegarLoop]: trace histogram [12, 12, 12, 12, 12, 12, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:24,352 INFO L423 AbstractCegarLoop]: === Iteration 15 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:24,352 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:24,352 INFO L82 PathProgramCache]: Analyzing trace with hash 1708395305, now seen corresponding path program 12 times [2018-11-23 12:16:24,352 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:24,352 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:24,353 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:24,353 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:16:24,353 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:24,375 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:25,048 INFO L256 TraceCheckUtils]: 0: Hoare triple {6466#true} call ULTIMATE.init(); {6466#true} is VALID [2018-11-23 12:16:25,049 INFO L273 TraceCheckUtils]: 1: Hoare triple {6466#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {6466#true} is VALID [2018-11-23 12:16:25,049 INFO L273 TraceCheckUtils]: 2: Hoare triple {6466#true} assume true; {6466#true} is VALID [2018-11-23 12:16:25,049 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6466#true} {6466#true} #73#return; {6466#true} is VALID [2018-11-23 12:16:25,049 INFO L256 TraceCheckUtils]: 4: Hoare triple {6466#true} call #t~ret14 := main(); {6466#true} is VALID [2018-11-23 12:16:25,050 INFO L273 TraceCheckUtils]: 5: Hoare triple {6466#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {6468#(= main_~i~1 0)} is VALID [2018-11-23 12:16:25,050 INFO L273 TraceCheckUtils]: 6: Hoare triple {6468#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {6468#(= main_~i~1 0)} is VALID [2018-11-23 12:16:25,051 INFO L273 TraceCheckUtils]: 7: Hoare triple {6468#(= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {6469#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:25,051 INFO L273 TraceCheckUtils]: 8: Hoare triple {6469#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {6469#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:25,052 INFO L273 TraceCheckUtils]: 9: Hoare triple {6469#(<= main_~i~1 1)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {6470#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:25,052 INFO L273 TraceCheckUtils]: 10: Hoare triple {6470#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {6470#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:25,052 INFO L273 TraceCheckUtils]: 11: Hoare triple {6470#(<= main_~i~1 2)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {6471#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:25,053 INFO L273 TraceCheckUtils]: 12: Hoare triple {6471#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {6471#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:25,054 INFO L273 TraceCheckUtils]: 13: Hoare triple {6471#(<= main_~i~1 3)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {6472#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:25,054 INFO L273 TraceCheckUtils]: 14: Hoare triple {6472#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {6472#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:25,055 INFO L273 TraceCheckUtils]: 15: Hoare triple {6472#(<= main_~i~1 4)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {6473#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:25,055 INFO L273 TraceCheckUtils]: 16: Hoare triple {6473#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {6473#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:25,056 INFO L273 TraceCheckUtils]: 17: Hoare triple {6473#(<= main_~i~1 5)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {6474#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:25,057 INFO L273 TraceCheckUtils]: 18: Hoare triple {6474#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {6474#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:25,057 INFO L273 TraceCheckUtils]: 19: Hoare triple {6474#(<= main_~i~1 6)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {6475#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:25,058 INFO L273 TraceCheckUtils]: 20: Hoare triple {6475#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {6475#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:25,059 INFO L273 TraceCheckUtils]: 21: Hoare triple {6475#(<= main_~i~1 7)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {6476#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:25,059 INFO L273 TraceCheckUtils]: 22: Hoare triple {6476#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {6476#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:25,060 INFO L273 TraceCheckUtils]: 23: Hoare triple {6476#(<= main_~i~1 8)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {6477#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:25,061 INFO L273 TraceCheckUtils]: 24: Hoare triple {6477#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {6477#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:25,061 INFO L273 TraceCheckUtils]: 25: Hoare triple {6477#(<= main_~i~1 9)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {6478#(<= main_~i~1 10)} is VALID [2018-11-23 12:16:25,062 INFO L273 TraceCheckUtils]: 26: Hoare triple {6478#(<= main_~i~1 10)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {6478#(<= main_~i~1 10)} is VALID [2018-11-23 12:16:25,063 INFO L273 TraceCheckUtils]: 27: Hoare triple {6478#(<= main_~i~1 10)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {6479#(<= main_~i~1 11)} is VALID [2018-11-23 12:16:25,063 INFO L273 TraceCheckUtils]: 28: Hoare triple {6479#(<= main_~i~1 11)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {6479#(<= main_~i~1 11)} is VALID [2018-11-23 12:16:25,064 INFO L273 TraceCheckUtils]: 29: Hoare triple {6479#(<= main_~i~1 11)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {6480#(<= main_~i~1 12)} is VALID [2018-11-23 12:16:25,064 INFO L273 TraceCheckUtils]: 30: Hoare triple {6480#(<= main_~i~1 12)} assume !(~i~1 < 20); {6467#false} is VALID [2018-11-23 12:16:25,065 INFO L256 TraceCheckUtils]: 31: Hoare triple {6467#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {6466#true} is VALID [2018-11-23 12:16:25,065 INFO L273 TraceCheckUtils]: 32: Hoare triple {6466#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {6466#true} is VALID [2018-11-23 12:16:25,065 INFO L273 TraceCheckUtils]: 33: Hoare triple {6466#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {6466#true} is VALID [2018-11-23 12:16:25,065 INFO L273 TraceCheckUtils]: 34: Hoare triple {6466#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {6466#true} is VALID [2018-11-23 12:16:25,065 INFO L273 TraceCheckUtils]: 35: Hoare triple {6466#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {6466#true} is VALID [2018-11-23 12:16:25,066 INFO L273 TraceCheckUtils]: 36: Hoare triple {6466#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6466#true} is VALID [2018-11-23 12:16:25,066 INFO L273 TraceCheckUtils]: 37: Hoare triple {6466#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {6466#true} is VALID [2018-11-23 12:16:25,066 INFO L273 TraceCheckUtils]: 38: Hoare triple {6466#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {6466#true} is VALID [2018-11-23 12:16:25,066 INFO L273 TraceCheckUtils]: 39: Hoare triple {6466#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {6466#true} is VALID [2018-11-23 12:16:25,066 INFO L273 TraceCheckUtils]: 40: Hoare triple {6466#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6466#true} is VALID [2018-11-23 12:16:25,067 INFO L273 TraceCheckUtils]: 41: Hoare triple {6466#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {6466#true} is VALID [2018-11-23 12:16:25,067 INFO L273 TraceCheckUtils]: 42: Hoare triple {6466#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {6466#true} is VALID [2018-11-23 12:16:25,067 INFO L273 TraceCheckUtils]: 43: Hoare triple {6466#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {6466#true} is VALID [2018-11-23 12:16:25,067 INFO L273 TraceCheckUtils]: 44: Hoare triple {6466#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6466#true} is VALID [2018-11-23 12:16:25,067 INFO L273 TraceCheckUtils]: 45: Hoare triple {6466#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {6466#true} is VALID [2018-11-23 12:16:25,068 INFO L273 TraceCheckUtils]: 46: Hoare triple {6466#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {6466#true} is VALID [2018-11-23 12:16:25,068 INFO L273 TraceCheckUtils]: 47: Hoare triple {6466#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {6466#true} is VALID [2018-11-23 12:16:25,068 INFO L273 TraceCheckUtils]: 48: Hoare triple {6466#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6466#true} is VALID [2018-11-23 12:16:25,068 INFO L273 TraceCheckUtils]: 49: Hoare triple {6466#true} assume !(~i~0 < 20); {6466#true} is VALID [2018-11-23 12:16:25,068 INFO L273 TraceCheckUtils]: 50: Hoare triple {6466#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {6466#true} is VALID [2018-11-23 12:16:25,068 INFO L273 TraceCheckUtils]: 51: Hoare triple {6466#true} assume true; {6466#true} is VALID [2018-11-23 12:16:25,069 INFO L268 TraceCheckUtils]: 52: Hoare quadruple {6466#true} {6467#false} #77#return; {6467#false} is VALID [2018-11-23 12:16:25,069 INFO L273 TraceCheckUtils]: 53: Hoare triple {6467#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {6467#false} is VALID [2018-11-23 12:16:25,069 INFO L256 TraceCheckUtils]: 54: Hoare triple {6467#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {6466#true} is VALID [2018-11-23 12:16:25,069 INFO L273 TraceCheckUtils]: 55: Hoare triple {6466#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {6466#true} is VALID [2018-11-23 12:16:25,069 INFO L273 TraceCheckUtils]: 56: Hoare triple {6466#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {6466#true} is VALID [2018-11-23 12:16:25,069 INFO L273 TraceCheckUtils]: 57: Hoare triple {6466#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {6466#true} is VALID [2018-11-23 12:16:25,069 INFO L273 TraceCheckUtils]: 58: Hoare triple {6466#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {6466#true} is VALID [2018-11-23 12:16:25,069 INFO L273 TraceCheckUtils]: 59: Hoare triple {6466#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6466#true} is VALID [2018-11-23 12:16:25,070 INFO L273 TraceCheckUtils]: 60: Hoare triple {6466#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {6466#true} is VALID [2018-11-23 12:16:25,070 INFO L273 TraceCheckUtils]: 61: Hoare triple {6466#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {6466#true} is VALID [2018-11-23 12:16:25,070 INFO L273 TraceCheckUtils]: 62: Hoare triple {6466#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {6466#true} is VALID [2018-11-23 12:16:25,070 INFO L273 TraceCheckUtils]: 63: Hoare triple {6466#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6466#true} is VALID [2018-11-23 12:16:25,070 INFO L273 TraceCheckUtils]: 64: Hoare triple {6466#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {6466#true} is VALID [2018-11-23 12:16:25,070 INFO L273 TraceCheckUtils]: 65: Hoare triple {6466#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {6466#true} is VALID [2018-11-23 12:16:25,070 INFO L273 TraceCheckUtils]: 66: Hoare triple {6466#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {6466#true} is VALID [2018-11-23 12:16:25,070 INFO L273 TraceCheckUtils]: 67: Hoare triple {6466#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6466#true} is VALID [2018-11-23 12:16:25,071 INFO L273 TraceCheckUtils]: 68: Hoare triple {6466#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {6466#true} is VALID [2018-11-23 12:16:25,071 INFO L273 TraceCheckUtils]: 69: Hoare triple {6466#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {6466#true} is VALID [2018-11-23 12:16:25,071 INFO L273 TraceCheckUtils]: 70: Hoare triple {6466#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {6466#true} is VALID [2018-11-23 12:16:25,071 INFO L273 TraceCheckUtils]: 71: Hoare triple {6466#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6466#true} is VALID [2018-11-23 12:16:25,071 INFO L273 TraceCheckUtils]: 72: Hoare triple {6466#true} assume !(~i~0 < 20); {6466#true} is VALID [2018-11-23 12:16:25,071 INFO L273 TraceCheckUtils]: 73: Hoare triple {6466#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {6466#true} is VALID [2018-11-23 12:16:25,071 INFO L273 TraceCheckUtils]: 74: Hoare triple {6466#true} assume true; {6466#true} is VALID [2018-11-23 12:16:25,071 INFO L268 TraceCheckUtils]: 75: Hoare quadruple {6466#true} {6467#false} #79#return; {6467#false} is VALID [2018-11-23 12:16:25,071 INFO L273 TraceCheckUtils]: 76: Hoare triple {6467#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {6467#false} is VALID [2018-11-23 12:16:25,072 INFO L273 TraceCheckUtils]: 77: Hoare triple {6467#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {6467#false} is VALID [2018-11-23 12:16:25,072 INFO L273 TraceCheckUtils]: 78: Hoare triple {6467#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {6467#false} is VALID [2018-11-23 12:16:25,072 INFO L273 TraceCheckUtils]: 79: Hoare triple {6467#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {6467#false} is VALID [2018-11-23 12:16:25,072 INFO L273 TraceCheckUtils]: 80: Hoare triple {6467#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {6467#false} is VALID [2018-11-23 12:16:25,072 INFO L273 TraceCheckUtils]: 81: Hoare triple {6467#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {6467#false} is VALID [2018-11-23 12:16:25,072 INFO L273 TraceCheckUtils]: 82: Hoare triple {6467#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {6467#false} is VALID [2018-11-23 12:16:25,072 INFO L273 TraceCheckUtils]: 83: Hoare triple {6467#false} assume !(~i~2 < 19); {6467#false} is VALID [2018-11-23 12:16:25,072 INFO L273 TraceCheckUtils]: 84: Hoare triple {6467#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {6467#false} is VALID [2018-11-23 12:16:25,072 INFO L256 TraceCheckUtils]: 85: Hoare triple {6467#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {6466#true} is VALID [2018-11-23 12:16:25,073 INFO L273 TraceCheckUtils]: 86: Hoare triple {6466#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {6466#true} is VALID [2018-11-23 12:16:25,073 INFO L273 TraceCheckUtils]: 87: Hoare triple {6466#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {6466#true} is VALID [2018-11-23 12:16:25,073 INFO L273 TraceCheckUtils]: 88: Hoare triple {6466#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {6466#true} is VALID [2018-11-23 12:16:25,073 INFO L273 TraceCheckUtils]: 89: Hoare triple {6466#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {6466#true} is VALID [2018-11-23 12:16:25,073 INFO L273 TraceCheckUtils]: 90: Hoare triple {6466#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6466#true} is VALID [2018-11-23 12:16:25,073 INFO L273 TraceCheckUtils]: 91: Hoare triple {6466#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {6466#true} is VALID [2018-11-23 12:16:25,073 INFO L273 TraceCheckUtils]: 92: Hoare triple {6466#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {6466#true} is VALID [2018-11-23 12:16:25,073 INFO L273 TraceCheckUtils]: 93: Hoare triple {6466#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {6466#true} is VALID [2018-11-23 12:16:25,074 INFO L273 TraceCheckUtils]: 94: Hoare triple {6466#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6466#true} is VALID [2018-11-23 12:16:25,074 INFO L273 TraceCheckUtils]: 95: Hoare triple {6466#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {6466#true} is VALID [2018-11-23 12:16:25,074 INFO L273 TraceCheckUtils]: 96: Hoare triple {6466#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {6466#true} is VALID [2018-11-23 12:16:25,074 INFO L273 TraceCheckUtils]: 97: Hoare triple {6466#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {6466#true} is VALID [2018-11-23 12:16:25,074 INFO L273 TraceCheckUtils]: 98: Hoare triple {6466#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6466#true} is VALID [2018-11-23 12:16:25,074 INFO L273 TraceCheckUtils]: 99: Hoare triple {6466#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {6466#true} is VALID [2018-11-23 12:16:25,074 INFO L273 TraceCheckUtils]: 100: Hoare triple {6466#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {6466#true} is VALID [2018-11-23 12:16:25,074 INFO L273 TraceCheckUtils]: 101: Hoare triple {6466#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {6466#true} is VALID [2018-11-23 12:16:25,074 INFO L273 TraceCheckUtils]: 102: Hoare triple {6466#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6466#true} is VALID [2018-11-23 12:16:25,075 INFO L273 TraceCheckUtils]: 103: Hoare triple {6466#true} assume !(~i~0 < 20); {6466#true} is VALID [2018-11-23 12:16:25,075 INFO L273 TraceCheckUtils]: 104: Hoare triple {6466#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {6466#true} is VALID [2018-11-23 12:16:25,075 INFO L273 TraceCheckUtils]: 105: Hoare triple {6466#true} assume true; {6466#true} is VALID [2018-11-23 12:16:25,075 INFO L268 TraceCheckUtils]: 106: Hoare quadruple {6466#true} {6467#false} #81#return; {6467#false} is VALID [2018-11-23 12:16:25,075 INFO L273 TraceCheckUtils]: 107: Hoare triple {6467#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {6467#false} is VALID [2018-11-23 12:16:25,075 INFO L273 TraceCheckUtils]: 108: Hoare triple {6467#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {6467#false} is VALID [2018-11-23 12:16:25,075 INFO L273 TraceCheckUtils]: 109: Hoare triple {6467#false} assume !false; {6467#false} is VALID [2018-11-23 12:16:25,080 INFO L134 CoverageAnalysis]: Checked inductivity of 468 backedges. 0 proven. 144 refuted. 0 times theorem prover too weak. 324 trivial. 0 not checked. [2018-11-23 12:16:25,080 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:16:25,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 14 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 14 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:16:25,089 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 12:16:25,202 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 9 check-sat command(s) [2018-11-23 12:16:25,202 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:16:25,227 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:25,228 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:25,547 INFO L256 TraceCheckUtils]: 0: Hoare triple {6466#true} call ULTIMATE.init(); {6466#true} is VALID [2018-11-23 12:16:25,548 INFO L273 TraceCheckUtils]: 1: Hoare triple {6466#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {6466#true} is VALID [2018-11-23 12:16:25,548 INFO L273 TraceCheckUtils]: 2: Hoare triple {6466#true} assume true; {6466#true} is VALID [2018-11-23 12:16:25,548 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6466#true} {6466#true} #73#return; {6466#true} is VALID [2018-11-23 12:16:25,548 INFO L256 TraceCheckUtils]: 4: Hoare triple {6466#true} call #t~ret14 := main(); {6466#true} is VALID [2018-11-23 12:16:25,548 INFO L273 TraceCheckUtils]: 5: Hoare triple {6466#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {6466#true} is VALID [2018-11-23 12:16:25,549 INFO L273 TraceCheckUtils]: 6: Hoare triple {6466#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {6466#true} is VALID [2018-11-23 12:16:25,549 INFO L273 TraceCheckUtils]: 7: Hoare triple {6466#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {6466#true} is VALID [2018-11-23 12:16:25,549 INFO L273 TraceCheckUtils]: 8: Hoare triple {6466#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {6466#true} is VALID [2018-11-23 12:16:25,549 INFO L273 TraceCheckUtils]: 9: Hoare triple {6466#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {6466#true} is VALID [2018-11-23 12:16:25,549 INFO L273 TraceCheckUtils]: 10: Hoare triple {6466#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {6466#true} is VALID [2018-11-23 12:16:25,550 INFO L273 TraceCheckUtils]: 11: Hoare triple {6466#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {6466#true} is VALID [2018-11-23 12:16:25,550 INFO L273 TraceCheckUtils]: 12: Hoare triple {6466#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {6466#true} is VALID [2018-11-23 12:16:25,550 INFO L273 TraceCheckUtils]: 13: Hoare triple {6466#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {6466#true} is VALID [2018-11-23 12:16:25,550 INFO L273 TraceCheckUtils]: 14: Hoare triple {6466#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {6466#true} is VALID [2018-11-23 12:16:25,550 INFO L273 TraceCheckUtils]: 15: Hoare triple {6466#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {6466#true} is VALID [2018-11-23 12:16:25,550 INFO L273 TraceCheckUtils]: 16: Hoare triple {6466#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {6466#true} is VALID [2018-11-23 12:16:25,550 INFO L273 TraceCheckUtils]: 17: Hoare triple {6466#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {6466#true} is VALID [2018-11-23 12:16:25,550 INFO L273 TraceCheckUtils]: 18: Hoare triple {6466#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {6466#true} is VALID [2018-11-23 12:16:25,551 INFO L273 TraceCheckUtils]: 19: Hoare triple {6466#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {6466#true} is VALID [2018-11-23 12:16:25,551 INFO L273 TraceCheckUtils]: 20: Hoare triple {6466#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {6466#true} is VALID [2018-11-23 12:16:25,551 INFO L273 TraceCheckUtils]: 21: Hoare triple {6466#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {6466#true} is VALID [2018-11-23 12:16:25,551 INFO L273 TraceCheckUtils]: 22: Hoare triple {6466#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {6466#true} is VALID [2018-11-23 12:16:25,551 INFO L273 TraceCheckUtils]: 23: Hoare triple {6466#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {6466#true} is VALID [2018-11-23 12:16:25,551 INFO L273 TraceCheckUtils]: 24: Hoare triple {6466#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {6466#true} is VALID [2018-11-23 12:16:25,551 INFO L273 TraceCheckUtils]: 25: Hoare triple {6466#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {6466#true} is VALID [2018-11-23 12:16:25,551 INFO L273 TraceCheckUtils]: 26: Hoare triple {6466#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {6466#true} is VALID [2018-11-23 12:16:25,551 INFO L273 TraceCheckUtils]: 27: Hoare triple {6466#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {6466#true} is VALID [2018-11-23 12:16:25,552 INFO L273 TraceCheckUtils]: 28: Hoare triple {6466#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {6466#true} is VALID [2018-11-23 12:16:25,552 INFO L273 TraceCheckUtils]: 29: Hoare triple {6466#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {6466#true} is VALID [2018-11-23 12:16:25,552 INFO L273 TraceCheckUtils]: 30: Hoare triple {6466#true} assume !(~i~1 < 20); {6466#true} is VALID [2018-11-23 12:16:25,552 INFO L256 TraceCheckUtils]: 31: Hoare triple {6466#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {6466#true} is VALID [2018-11-23 12:16:25,552 INFO L273 TraceCheckUtils]: 32: Hoare triple {6466#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {6466#true} is VALID [2018-11-23 12:16:25,552 INFO L273 TraceCheckUtils]: 33: Hoare triple {6466#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {6466#true} is VALID [2018-11-23 12:16:25,552 INFO L273 TraceCheckUtils]: 34: Hoare triple {6466#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {6466#true} is VALID [2018-11-23 12:16:25,552 INFO L273 TraceCheckUtils]: 35: Hoare triple {6466#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {6466#true} is VALID [2018-11-23 12:16:25,552 INFO L273 TraceCheckUtils]: 36: Hoare triple {6466#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6466#true} is VALID [2018-11-23 12:16:25,553 INFO L273 TraceCheckUtils]: 37: Hoare triple {6466#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {6466#true} is VALID [2018-11-23 12:16:25,553 INFO L273 TraceCheckUtils]: 38: Hoare triple {6466#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {6466#true} is VALID [2018-11-23 12:16:25,553 INFO L273 TraceCheckUtils]: 39: Hoare triple {6466#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {6466#true} is VALID [2018-11-23 12:16:25,553 INFO L273 TraceCheckUtils]: 40: Hoare triple {6466#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6466#true} is VALID [2018-11-23 12:16:25,553 INFO L273 TraceCheckUtils]: 41: Hoare triple {6466#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {6466#true} is VALID [2018-11-23 12:16:25,553 INFO L273 TraceCheckUtils]: 42: Hoare triple {6466#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {6466#true} is VALID [2018-11-23 12:16:25,553 INFO L273 TraceCheckUtils]: 43: Hoare triple {6466#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {6466#true} is VALID [2018-11-23 12:16:25,553 INFO L273 TraceCheckUtils]: 44: Hoare triple {6466#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6466#true} is VALID [2018-11-23 12:16:25,553 INFO L273 TraceCheckUtils]: 45: Hoare triple {6466#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {6466#true} is VALID [2018-11-23 12:16:25,554 INFO L273 TraceCheckUtils]: 46: Hoare triple {6466#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {6466#true} is VALID [2018-11-23 12:16:25,554 INFO L273 TraceCheckUtils]: 47: Hoare triple {6466#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {6466#true} is VALID [2018-11-23 12:16:25,554 INFO L273 TraceCheckUtils]: 48: Hoare triple {6466#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6466#true} is VALID [2018-11-23 12:16:25,554 INFO L273 TraceCheckUtils]: 49: Hoare triple {6466#true} assume !(~i~0 < 20); {6466#true} is VALID [2018-11-23 12:16:25,554 INFO L273 TraceCheckUtils]: 50: Hoare triple {6466#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {6466#true} is VALID [2018-11-23 12:16:25,554 INFO L273 TraceCheckUtils]: 51: Hoare triple {6466#true} assume true; {6466#true} is VALID [2018-11-23 12:16:25,554 INFO L268 TraceCheckUtils]: 52: Hoare quadruple {6466#true} {6466#true} #77#return; {6466#true} is VALID [2018-11-23 12:16:25,554 INFO L273 TraceCheckUtils]: 53: Hoare triple {6466#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {6466#true} is VALID [2018-11-23 12:16:25,555 INFO L256 TraceCheckUtils]: 54: Hoare triple {6466#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {6466#true} is VALID [2018-11-23 12:16:25,555 INFO L273 TraceCheckUtils]: 55: Hoare triple {6466#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {6466#true} is VALID [2018-11-23 12:16:25,555 INFO L273 TraceCheckUtils]: 56: Hoare triple {6466#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {6466#true} is VALID [2018-11-23 12:16:25,555 INFO L273 TraceCheckUtils]: 57: Hoare triple {6466#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {6466#true} is VALID [2018-11-23 12:16:25,555 INFO L273 TraceCheckUtils]: 58: Hoare triple {6466#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {6466#true} is VALID [2018-11-23 12:16:25,555 INFO L273 TraceCheckUtils]: 59: Hoare triple {6466#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6466#true} is VALID [2018-11-23 12:16:25,555 INFO L273 TraceCheckUtils]: 60: Hoare triple {6466#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {6466#true} is VALID [2018-11-23 12:16:25,555 INFO L273 TraceCheckUtils]: 61: Hoare triple {6466#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {6466#true} is VALID [2018-11-23 12:16:25,555 INFO L273 TraceCheckUtils]: 62: Hoare triple {6466#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {6466#true} is VALID [2018-11-23 12:16:25,556 INFO L273 TraceCheckUtils]: 63: Hoare triple {6466#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6466#true} is VALID [2018-11-23 12:16:25,556 INFO L273 TraceCheckUtils]: 64: Hoare triple {6466#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {6466#true} is VALID [2018-11-23 12:16:25,556 INFO L273 TraceCheckUtils]: 65: Hoare triple {6466#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {6466#true} is VALID [2018-11-23 12:16:25,556 INFO L273 TraceCheckUtils]: 66: Hoare triple {6466#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {6466#true} is VALID [2018-11-23 12:16:25,556 INFO L273 TraceCheckUtils]: 67: Hoare triple {6466#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6466#true} is VALID [2018-11-23 12:16:25,556 INFO L273 TraceCheckUtils]: 68: Hoare triple {6466#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {6466#true} is VALID [2018-11-23 12:16:25,556 INFO L273 TraceCheckUtils]: 69: Hoare triple {6466#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {6466#true} is VALID [2018-11-23 12:16:25,556 INFO L273 TraceCheckUtils]: 70: Hoare triple {6466#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {6466#true} is VALID [2018-11-23 12:16:25,557 INFO L273 TraceCheckUtils]: 71: Hoare triple {6466#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6466#true} is VALID [2018-11-23 12:16:25,557 INFO L273 TraceCheckUtils]: 72: Hoare triple {6466#true} assume !(~i~0 < 20); {6466#true} is VALID [2018-11-23 12:16:25,557 INFO L273 TraceCheckUtils]: 73: Hoare triple {6466#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {6466#true} is VALID [2018-11-23 12:16:25,557 INFO L273 TraceCheckUtils]: 74: Hoare triple {6466#true} assume true; {6466#true} is VALID [2018-11-23 12:16:25,557 INFO L268 TraceCheckUtils]: 75: Hoare quadruple {6466#true} {6466#true} #79#return; {6466#true} is VALID [2018-11-23 12:16:25,558 INFO L273 TraceCheckUtils]: 76: Hoare triple {6466#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {6712#(<= main_~i~2 0)} is VALID [2018-11-23 12:16:25,558 INFO L273 TraceCheckUtils]: 77: Hoare triple {6712#(<= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {6712#(<= main_~i~2 0)} is VALID [2018-11-23 12:16:25,559 INFO L273 TraceCheckUtils]: 78: Hoare triple {6712#(<= main_~i~2 0)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {6719#(<= main_~i~2 1)} is VALID [2018-11-23 12:16:25,559 INFO L273 TraceCheckUtils]: 79: Hoare triple {6719#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {6719#(<= main_~i~2 1)} is VALID [2018-11-23 12:16:25,559 INFO L273 TraceCheckUtils]: 80: Hoare triple {6719#(<= main_~i~2 1)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {6726#(<= main_~i~2 2)} is VALID [2018-11-23 12:16:25,560 INFO L273 TraceCheckUtils]: 81: Hoare triple {6726#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {6726#(<= main_~i~2 2)} is VALID [2018-11-23 12:16:25,561 INFO L273 TraceCheckUtils]: 82: Hoare triple {6726#(<= main_~i~2 2)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {6733#(<= main_~i~2 3)} is VALID [2018-11-23 12:16:25,561 INFO L273 TraceCheckUtils]: 83: Hoare triple {6733#(<= main_~i~2 3)} assume !(~i~2 < 19); {6467#false} is VALID [2018-11-23 12:16:25,562 INFO L273 TraceCheckUtils]: 84: Hoare triple {6467#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {6467#false} is VALID [2018-11-23 12:16:25,562 INFO L256 TraceCheckUtils]: 85: Hoare triple {6467#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {6467#false} is VALID [2018-11-23 12:16:25,562 INFO L273 TraceCheckUtils]: 86: Hoare triple {6467#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {6467#false} is VALID [2018-11-23 12:16:25,562 INFO L273 TraceCheckUtils]: 87: Hoare triple {6467#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {6467#false} is VALID [2018-11-23 12:16:25,562 INFO L273 TraceCheckUtils]: 88: Hoare triple {6467#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {6467#false} is VALID [2018-11-23 12:16:25,563 INFO L273 TraceCheckUtils]: 89: Hoare triple {6467#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {6467#false} is VALID [2018-11-23 12:16:25,563 INFO L273 TraceCheckUtils]: 90: Hoare triple {6467#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6467#false} is VALID [2018-11-23 12:16:25,563 INFO L273 TraceCheckUtils]: 91: Hoare triple {6467#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {6467#false} is VALID [2018-11-23 12:16:25,563 INFO L273 TraceCheckUtils]: 92: Hoare triple {6467#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {6467#false} is VALID [2018-11-23 12:16:25,563 INFO L273 TraceCheckUtils]: 93: Hoare triple {6467#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {6467#false} is VALID [2018-11-23 12:16:25,564 INFO L273 TraceCheckUtils]: 94: Hoare triple {6467#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6467#false} is VALID [2018-11-23 12:16:25,564 INFO L273 TraceCheckUtils]: 95: Hoare triple {6467#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {6467#false} is VALID [2018-11-23 12:16:25,564 INFO L273 TraceCheckUtils]: 96: Hoare triple {6467#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {6467#false} is VALID [2018-11-23 12:16:25,564 INFO L273 TraceCheckUtils]: 97: Hoare triple {6467#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {6467#false} is VALID [2018-11-23 12:16:25,564 INFO L273 TraceCheckUtils]: 98: Hoare triple {6467#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6467#false} is VALID [2018-11-23 12:16:25,565 INFO L273 TraceCheckUtils]: 99: Hoare triple {6467#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {6467#false} is VALID [2018-11-23 12:16:25,565 INFO L273 TraceCheckUtils]: 100: Hoare triple {6467#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {6467#false} is VALID [2018-11-23 12:16:25,565 INFO L273 TraceCheckUtils]: 101: Hoare triple {6467#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {6467#false} is VALID [2018-11-23 12:16:25,565 INFO L273 TraceCheckUtils]: 102: Hoare triple {6467#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {6467#false} is VALID [2018-11-23 12:16:25,565 INFO L273 TraceCheckUtils]: 103: Hoare triple {6467#false} assume !(~i~0 < 20); {6467#false} is VALID [2018-11-23 12:16:25,566 INFO L273 TraceCheckUtils]: 104: Hoare triple {6467#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {6467#false} is VALID [2018-11-23 12:16:25,566 INFO L273 TraceCheckUtils]: 105: Hoare triple {6467#false} assume true; {6467#false} is VALID [2018-11-23 12:16:25,566 INFO L268 TraceCheckUtils]: 106: Hoare quadruple {6467#false} {6467#false} #81#return; {6467#false} is VALID [2018-11-23 12:16:25,566 INFO L273 TraceCheckUtils]: 107: Hoare triple {6467#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {6467#false} is VALID [2018-11-23 12:16:25,566 INFO L273 TraceCheckUtils]: 108: Hoare triple {6467#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {6467#false} is VALID [2018-11-23 12:16:25,567 INFO L273 TraceCheckUtils]: 109: Hoare triple {6467#false} assume !false; {6467#false} is VALID [2018-11-23 12:16:25,571 INFO L134 CoverageAnalysis]: Checked inductivity of 468 backedges. 154 proven. 9 refuted. 0 times theorem prover too weak. 305 trivial. 0 not checked. [2018-11-23 12:16:25,591 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:16:25,591 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 6] total 19 [2018-11-23 12:16:25,591 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 110 [2018-11-23 12:16:25,592 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:25,592 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states. [2018-11-23 12:16:25,717 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:16:25,717 INFO L459 AbstractCegarLoop]: Interpolant automaton has 19 states [2018-11-23 12:16:25,717 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2018-11-23 12:16:25,718 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=119, Invalid=223, Unknown=0, NotChecked=0, Total=342 [2018-11-23 12:16:25,718 INFO L87 Difference]: Start difference. First operand 69 states and 77 transitions. Second operand 19 states. [2018-11-23 12:16:26,778 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:26,778 INFO L93 Difference]: Finished difference Result 113 states and 130 transitions. [2018-11-23 12:16:26,778 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2018-11-23 12:16:26,778 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 110 [2018-11-23 12:16:26,778 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:26,778 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-23 12:16:26,780 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 93 transitions. [2018-11-23 12:16:26,781 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-23 12:16:26,782 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 93 transitions. [2018-11-23 12:16:26,782 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states and 93 transitions. [2018-11-23 12:16:26,894 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 93 edges. 93 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:16:26,897 INFO L225 Difference]: With dead ends: 113 [2018-11-23 12:16:26,897 INFO L226 Difference]: Without dead ends: 75 [2018-11-23 12:16:26,898 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 124 GetRequests, 107 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 48 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=119, Invalid=223, Unknown=0, NotChecked=0, Total=342 [2018-11-23 12:16:26,898 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 75 states. [2018-11-23 12:16:26,935 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 75 to 73. [2018-11-23 12:16:26,935 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:26,936 INFO L82 GeneralOperation]: Start isEquivalent. First operand 75 states. Second operand 73 states. [2018-11-23 12:16:26,936 INFO L74 IsIncluded]: Start isIncluded. First operand 75 states. Second operand 73 states. [2018-11-23 12:16:26,936 INFO L87 Difference]: Start difference. First operand 75 states. Second operand 73 states. [2018-11-23 12:16:26,938 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:26,939 INFO L93 Difference]: Finished difference Result 75 states and 83 transitions. [2018-11-23 12:16:26,939 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 83 transitions. [2018-11-23 12:16:26,940 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:26,940 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:26,940 INFO L74 IsIncluded]: Start isIncluded. First operand 73 states. Second operand 75 states. [2018-11-23 12:16:26,940 INFO L87 Difference]: Start difference. First operand 73 states. Second operand 75 states. [2018-11-23 12:16:26,942 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:26,943 INFO L93 Difference]: Finished difference Result 75 states and 83 transitions. [2018-11-23 12:16:26,943 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 83 transitions. [2018-11-23 12:16:26,943 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:26,943 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:26,944 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:26,944 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:26,944 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 73 states. [2018-11-23 12:16:26,946 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 73 states to 73 states and 81 transitions. [2018-11-23 12:16:26,946 INFO L78 Accepts]: Start accepts. Automaton has 73 states and 81 transitions. Word has length 110 [2018-11-23 12:16:26,946 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:26,946 INFO L480 AbstractCegarLoop]: Abstraction has 73 states and 81 transitions. [2018-11-23 12:16:26,946 INFO L481 AbstractCegarLoop]: Interpolant automaton has 19 states. [2018-11-23 12:16:26,947 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 81 transitions. [2018-11-23 12:16:26,948 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 115 [2018-11-23 12:16:26,948 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:26,948 INFO L402 BasicCegarLoop]: trace histogram [13, 13, 12, 12, 12, 12, 4, 4, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:26,948 INFO L423 AbstractCegarLoop]: === Iteration 16 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:26,949 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:26,949 INFO L82 PathProgramCache]: Analyzing trace with hash -356697015, now seen corresponding path program 13 times [2018-11-23 12:16:26,949 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:26,949 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:26,950 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:26,950 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:16:26,950 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:26,973 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:27,386 INFO L256 TraceCheckUtils]: 0: Hoare triple {7227#true} call ULTIMATE.init(); {7227#true} is VALID [2018-11-23 12:16:27,386 INFO L273 TraceCheckUtils]: 1: Hoare triple {7227#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {7227#true} is VALID [2018-11-23 12:16:27,386 INFO L273 TraceCheckUtils]: 2: Hoare triple {7227#true} assume true; {7227#true} is VALID [2018-11-23 12:16:27,387 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {7227#true} {7227#true} #73#return; {7227#true} is VALID [2018-11-23 12:16:27,387 INFO L256 TraceCheckUtils]: 4: Hoare triple {7227#true} call #t~ret14 := main(); {7227#true} is VALID [2018-11-23 12:16:27,388 INFO L273 TraceCheckUtils]: 5: Hoare triple {7227#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {7229#(= main_~i~1 0)} is VALID [2018-11-23 12:16:27,388 INFO L273 TraceCheckUtils]: 6: Hoare triple {7229#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {7229#(= main_~i~1 0)} is VALID [2018-11-23 12:16:27,390 INFO L273 TraceCheckUtils]: 7: Hoare triple {7229#(= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {7230#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:27,390 INFO L273 TraceCheckUtils]: 8: Hoare triple {7230#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {7230#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:27,392 INFO L273 TraceCheckUtils]: 9: Hoare triple {7230#(<= main_~i~1 1)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {7231#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:27,392 INFO L273 TraceCheckUtils]: 10: Hoare triple {7231#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {7231#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:27,394 INFO L273 TraceCheckUtils]: 11: Hoare triple {7231#(<= main_~i~1 2)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {7232#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:27,396 INFO L273 TraceCheckUtils]: 12: Hoare triple {7232#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {7232#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:27,396 INFO L273 TraceCheckUtils]: 13: Hoare triple {7232#(<= main_~i~1 3)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {7233#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:27,398 INFO L273 TraceCheckUtils]: 14: Hoare triple {7233#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {7233#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:27,398 INFO L273 TraceCheckUtils]: 15: Hoare triple {7233#(<= main_~i~1 4)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {7234#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:27,401 INFO L273 TraceCheckUtils]: 16: Hoare triple {7234#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {7234#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:27,401 INFO L273 TraceCheckUtils]: 17: Hoare triple {7234#(<= main_~i~1 5)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {7235#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:27,403 INFO L273 TraceCheckUtils]: 18: Hoare triple {7235#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {7235#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:27,403 INFO L273 TraceCheckUtils]: 19: Hoare triple {7235#(<= main_~i~1 6)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {7236#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:27,405 INFO L273 TraceCheckUtils]: 20: Hoare triple {7236#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {7236#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:27,405 INFO L273 TraceCheckUtils]: 21: Hoare triple {7236#(<= main_~i~1 7)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {7237#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:27,408 INFO L273 TraceCheckUtils]: 22: Hoare triple {7237#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {7237#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:27,408 INFO L273 TraceCheckUtils]: 23: Hoare triple {7237#(<= main_~i~1 8)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {7238#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:27,410 INFO L273 TraceCheckUtils]: 24: Hoare triple {7238#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {7238#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:27,410 INFO L273 TraceCheckUtils]: 25: Hoare triple {7238#(<= main_~i~1 9)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {7239#(<= main_~i~1 10)} is VALID [2018-11-23 12:16:27,412 INFO L273 TraceCheckUtils]: 26: Hoare triple {7239#(<= main_~i~1 10)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {7239#(<= main_~i~1 10)} is VALID [2018-11-23 12:16:27,412 INFO L273 TraceCheckUtils]: 27: Hoare triple {7239#(<= main_~i~1 10)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {7240#(<= main_~i~1 11)} is VALID [2018-11-23 12:16:27,414 INFO L273 TraceCheckUtils]: 28: Hoare triple {7240#(<= main_~i~1 11)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {7240#(<= main_~i~1 11)} is VALID [2018-11-23 12:16:27,414 INFO L273 TraceCheckUtils]: 29: Hoare triple {7240#(<= main_~i~1 11)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {7241#(<= main_~i~1 12)} is VALID [2018-11-23 12:16:27,416 INFO L273 TraceCheckUtils]: 30: Hoare triple {7241#(<= main_~i~1 12)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {7241#(<= main_~i~1 12)} is VALID [2018-11-23 12:16:27,416 INFO L273 TraceCheckUtils]: 31: Hoare triple {7241#(<= main_~i~1 12)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {7242#(<= main_~i~1 13)} is VALID [2018-11-23 12:16:27,418 INFO L273 TraceCheckUtils]: 32: Hoare triple {7242#(<= main_~i~1 13)} assume !(~i~1 < 20); {7228#false} is VALID [2018-11-23 12:16:27,418 INFO L256 TraceCheckUtils]: 33: Hoare triple {7228#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {7227#true} is VALID [2018-11-23 12:16:27,418 INFO L273 TraceCheckUtils]: 34: Hoare triple {7227#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {7227#true} is VALID [2018-11-23 12:16:27,418 INFO L273 TraceCheckUtils]: 35: Hoare triple {7227#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {7227#true} is VALID [2018-11-23 12:16:27,418 INFO L273 TraceCheckUtils]: 36: Hoare triple {7227#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {7227#true} is VALID [2018-11-23 12:16:27,418 INFO L273 TraceCheckUtils]: 37: Hoare triple {7227#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {7227#true} is VALID [2018-11-23 12:16:27,418 INFO L273 TraceCheckUtils]: 38: Hoare triple {7227#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7227#true} is VALID [2018-11-23 12:16:27,419 INFO L273 TraceCheckUtils]: 39: Hoare triple {7227#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {7227#true} is VALID [2018-11-23 12:16:27,419 INFO L273 TraceCheckUtils]: 40: Hoare triple {7227#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {7227#true} is VALID [2018-11-23 12:16:27,419 INFO L273 TraceCheckUtils]: 41: Hoare triple {7227#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {7227#true} is VALID [2018-11-23 12:16:27,419 INFO L273 TraceCheckUtils]: 42: Hoare triple {7227#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7227#true} is VALID [2018-11-23 12:16:27,419 INFO L273 TraceCheckUtils]: 43: Hoare triple {7227#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {7227#true} is VALID [2018-11-23 12:16:27,419 INFO L273 TraceCheckUtils]: 44: Hoare triple {7227#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {7227#true} is VALID [2018-11-23 12:16:27,419 INFO L273 TraceCheckUtils]: 45: Hoare triple {7227#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {7227#true} is VALID [2018-11-23 12:16:27,419 INFO L273 TraceCheckUtils]: 46: Hoare triple {7227#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7227#true} is VALID [2018-11-23 12:16:27,419 INFO L273 TraceCheckUtils]: 47: Hoare triple {7227#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {7227#true} is VALID [2018-11-23 12:16:27,420 INFO L273 TraceCheckUtils]: 48: Hoare triple {7227#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {7227#true} is VALID [2018-11-23 12:16:27,420 INFO L273 TraceCheckUtils]: 49: Hoare triple {7227#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {7227#true} is VALID [2018-11-23 12:16:27,420 INFO L273 TraceCheckUtils]: 50: Hoare triple {7227#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7227#true} is VALID [2018-11-23 12:16:27,420 INFO L273 TraceCheckUtils]: 51: Hoare triple {7227#true} assume !(~i~0 < 20); {7227#true} is VALID [2018-11-23 12:16:27,420 INFO L273 TraceCheckUtils]: 52: Hoare triple {7227#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {7227#true} is VALID [2018-11-23 12:16:27,420 INFO L273 TraceCheckUtils]: 53: Hoare triple {7227#true} assume true; {7227#true} is VALID [2018-11-23 12:16:27,420 INFO L268 TraceCheckUtils]: 54: Hoare quadruple {7227#true} {7228#false} #77#return; {7228#false} is VALID [2018-11-23 12:16:27,420 INFO L273 TraceCheckUtils]: 55: Hoare triple {7228#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {7228#false} is VALID [2018-11-23 12:16:27,421 INFO L256 TraceCheckUtils]: 56: Hoare triple {7228#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {7227#true} is VALID [2018-11-23 12:16:27,421 INFO L273 TraceCheckUtils]: 57: Hoare triple {7227#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {7227#true} is VALID [2018-11-23 12:16:27,421 INFO L273 TraceCheckUtils]: 58: Hoare triple {7227#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {7227#true} is VALID [2018-11-23 12:16:27,421 INFO L273 TraceCheckUtils]: 59: Hoare triple {7227#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {7227#true} is VALID [2018-11-23 12:16:27,421 INFO L273 TraceCheckUtils]: 60: Hoare triple {7227#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {7227#true} is VALID [2018-11-23 12:16:27,421 INFO L273 TraceCheckUtils]: 61: Hoare triple {7227#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7227#true} is VALID [2018-11-23 12:16:27,421 INFO L273 TraceCheckUtils]: 62: Hoare triple {7227#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {7227#true} is VALID [2018-11-23 12:16:27,421 INFO L273 TraceCheckUtils]: 63: Hoare triple {7227#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {7227#true} is VALID [2018-11-23 12:16:27,421 INFO L273 TraceCheckUtils]: 64: Hoare triple {7227#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {7227#true} is VALID [2018-11-23 12:16:27,422 INFO L273 TraceCheckUtils]: 65: Hoare triple {7227#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7227#true} is VALID [2018-11-23 12:16:27,422 INFO L273 TraceCheckUtils]: 66: Hoare triple {7227#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {7227#true} is VALID [2018-11-23 12:16:27,422 INFO L273 TraceCheckUtils]: 67: Hoare triple {7227#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {7227#true} is VALID [2018-11-23 12:16:27,422 INFO L273 TraceCheckUtils]: 68: Hoare triple {7227#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {7227#true} is VALID [2018-11-23 12:16:27,422 INFO L273 TraceCheckUtils]: 69: Hoare triple {7227#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7227#true} is VALID [2018-11-23 12:16:27,422 INFO L273 TraceCheckUtils]: 70: Hoare triple {7227#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {7227#true} is VALID [2018-11-23 12:16:27,422 INFO L273 TraceCheckUtils]: 71: Hoare triple {7227#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {7227#true} is VALID [2018-11-23 12:16:27,422 INFO L273 TraceCheckUtils]: 72: Hoare triple {7227#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {7227#true} is VALID [2018-11-23 12:16:27,422 INFO L273 TraceCheckUtils]: 73: Hoare triple {7227#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7227#true} is VALID [2018-11-23 12:16:27,423 INFO L273 TraceCheckUtils]: 74: Hoare triple {7227#true} assume !(~i~0 < 20); {7227#true} is VALID [2018-11-23 12:16:27,423 INFO L273 TraceCheckUtils]: 75: Hoare triple {7227#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {7227#true} is VALID [2018-11-23 12:16:27,423 INFO L273 TraceCheckUtils]: 76: Hoare triple {7227#true} assume true; {7227#true} is VALID [2018-11-23 12:16:27,423 INFO L268 TraceCheckUtils]: 77: Hoare quadruple {7227#true} {7228#false} #79#return; {7228#false} is VALID [2018-11-23 12:16:27,423 INFO L273 TraceCheckUtils]: 78: Hoare triple {7228#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {7228#false} is VALID [2018-11-23 12:16:27,423 INFO L273 TraceCheckUtils]: 79: Hoare triple {7228#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {7228#false} is VALID [2018-11-23 12:16:27,423 INFO L273 TraceCheckUtils]: 80: Hoare triple {7228#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {7228#false} is VALID [2018-11-23 12:16:27,423 INFO L273 TraceCheckUtils]: 81: Hoare triple {7228#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {7228#false} is VALID [2018-11-23 12:16:27,424 INFO L273 TraceCheckUtils]: 82: Hoare triple {7228#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {7228#false} is VALID [2018-11-23 12:16:27,424 INFO L273 TraceCheckUtils]: 83: Hoare triple {7228#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {7228#false} is VALID [2018-11-23 12:16:27,424 INFO L273 TraceCheckUtils]: 84: Hoare triple {7228#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {7228#false} is VALID [2018-11-23 12:16:27,424 INFO L273 TraceCheckUtils]: 85: Hoare triple {7228#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {7228#false} is VALID [2018-11-23 12:16:27,424 INFO L273 TraceCheckUtils]: 86: Hoare triple {7228#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {7228#false} is VALID [2018-11-23 12:16:27,424 INFO L273 TraceCheckUtils]: 87: Hoare triple {7228#false} assume !(~i~2 < 19); {7228#false} is VALID [2018-11-23 12:16:27,424 INFO L273 TraceCheckUtils]: 88: Hoare triple {7228#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {7228#false} is VALID [2018-11-23 12:16:27,424 INFO L256 TraceCheckUtils]: 89: Hoare triple {7228#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {7227#true} is VALID [2018-11-23 12:16:27,424 INFO L273 TraceCheckUtils]: 90: Hoare triple {7227#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {7227#true} is VALID [2018-11-23 12:16:27,425 INFO L273 TraceCheckUtils]: 91: Hoare triple {7227#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {7227#true} is VALID [2018-11-23 12:16:27,425 INFO L273 TraceCheckUtils]: 92: Hoare triple {7227#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {7227#true} is VALID [2018-11-23 12:16:27,425 INFO L273 TraceCheckUtils]: 93: Hoare triple {7227#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {7227#true} is VALID [2018-11-23 12:16:27,425 INFO L273 TraceCheckUtils]: 94: Hoare triple {7227#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7227#true} is VALID [2018-11-23 12:16:27,425 INFO L273 TraceCheckUtils]: 95: Hoare triple {7227#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {7227#true} is VALID [2018-11-23 12:16:27,425 INFO L273 TraceCheckUtils]: 96: Hoare triple {7227#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {7227#true} is VALID [2018-11-23 12:16:27,425 INFO L273 TraceCheckUtils]: 97: Hoare triple {7227#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {7227#true} is VALID [2018-11-23 12:16:27,425 INFO L273 TraceCheckUtils]: 98: Hoare triple {7227#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7227#true} is VALID [2018-11-23 12:16:27,426 INFO L273 TraceCheckUtils]: 99: Hoare triple {7227#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {7227#true} is VALID [2018-11-23 12:16:27,426 INFO L273 TraceCheckUtils]: 100: Hoare triple {7227#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {7227#true} is VALID [2018-11-23 12:16:27,426 INFO L273 TraceCheckUtils]: 101: Hoare triple {7227#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {7227#true} is VALID [2018-11-23 12:16:27,426 INFO L273 TraceCheckUtils]: 102: Hoare triple {7227#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7227#true} is VALID [2018-11-23 12:16:27,426 INFO L273 TraceCheckUtils]: 103: Hoare triple {7227#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {7227#true} is VALID [2018-11-23 12:16:27,426 INFO L273 TraceCheckUtils]: 104: Hoare triple {7227#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {7227#true} is VALID [2018-11-23 12:16:27,426 INFO L273 TraceCheckUtils]: 105: Hoare triple {7227#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {7227#true} is VALID [2018-11-23 12:16:27,426 INFO L273 TraceCheckUtils]: 106: Hoare triple {7227#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7227#true} is VALID [2018-11-23 12:16:27,426 INFO L273 TraceCheckUtils]: 107: Hoare triple {7227#true} assume !(~i~0 < 20); {7227#true} is VALID [2018-11-23 12:16:27,427 INFO L273 TraceCheckUtils]: 108: Hoare triple {7227#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {7227#true} is VALID [2018-11-23 12:16:27,427 INFO L273 TraceCheckUtils]: 109: Hoare triple {7227#true} assume true; {7227#true} is VALID [2018-11-23 12:16:27,427 INFO L268 TraceCheckUtils]: 110: Hoare quadruple {7227#true} {7228#false} #81#return; {7228#false} is VALID [2018-11-23 12:16:27,427 INFO L273 TraceCheckUtils]: 111: Hoare triple {7228#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {7228#false} is VALID [2018-11-23 12:16:27,427 INFO L273 TraceCheckUtils]: 112: Hoare triple {7228#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {7228#false} is VALID [2018-11-23 12:16:27,427 INFO L273 TraceCheckUtils]: 113: Hoare triple {7228#false} assume !false; {7228#false} is VALID [2018-11-23 12:16:27,432 INFO L134 CoverageAnalysis]: Checked inductivity of 500 backedges. 0 proven. 169 refuted. 0 times theorem prover too weak. 331 trivial. 0 not checked. [2018-11-23 12:16:27,433 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:16:27,433 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 15 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 15 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:16:27,441 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:16:27,499 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:27,520 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:27,522 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:27,807 INFO L256 TraceCheckUtils]: 0: Hoare triple {7227#true} call ULTIMATE.init(); {7227#true} is VALID [2018-11-23 12:16:27,807 INFO L273 TraceCheckUtils]: 1: Hoare triple {7227#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {7227#true} is VALID [2018-11-23 12:16:27,807 INFO L273 TraceCheckUtils]: 2: Hoare triple {7227#true} assume true; {7227#true} is VALID [2018-11-23 12:16:27,807 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {7227#true} {7227#true} #73#return; {7227#true} is VALID [2018-11-23 12:16:27,808 INFO L256 TraceCheckUtils]: 4: Hoare triple {7227#true} call #t~ret14 := main(); {7227#true} is VALID [2018-11-23 12:16:27,808 INFO L273 TraceCheckUtils]: 5: Hoare triple {7227#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {7261#(<= main_~i~1 0)} is VALID [2018-11-23 12:16:27,809 INFO L273 TraceCheckUtils]: 6: Hoare triple {7261#(<= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {7261#(<= main_~i~1 0)} is VALID [2018-11-23 12:16:27,809 INFO L273 TraceCheckUtils]: 7: Hoare triple {7261#(<= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {7230#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:27,810 INFO L273 TraceCheckUtils]: 8: Hoare triple {7230#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {7230#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:27,810 INFO L273 TraceCheckUtils]: 9: Hoare triple {7230#(<= main_~i~1 1)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {7231#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:27,811 INFO L273 TraceCheckUtils]: 10: Hoare triple {7231#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {7231#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:27,811 INFO L273 TraceCheckUtils]: 11: Hoare triple {7231#(<= main_~i~1 2)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {7232#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:27,812 INFO L273 TraceCheckUtils]: 12: Hoare triple {7232#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {7232#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:27,812 INFO L273 TraceCheckUtils]: 13: Hoare triple {7232#(<= main_~i~1 3)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {7233#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:27,813 INFO L273 TraceCheckUtils]: 14: Hoare triple {7233#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {7233#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:27,813 INFO L273 TraceCheckUtils]: 15: Hoare triple {7233#(<= main_~i~1 4)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {7234#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:27,814 INFO L273 TraceCheckUtils]: 16: Hoare triple {7234#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {7234#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:27,815 INFO L273 TraceCheckUtils]: 17: Hoare triple {7234#(<= main_~i~1 5)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {7235#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:27,815 INFO L273 TraceCheckUtils]: 18: Hoare triple {7235#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {7235#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:27,816 INFO L273 TraceCheckUtils]: 19: Hoare triple {7235#(<= main_~i~1 6)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {7236#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:27,816 INFO L273 TraceCheckUtils]: 20: Hoare triple {7236#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {7236#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:27,817 INFO L273 TraceCheckUtils]: 21: Hoare triple {7236#(<= main_~i~1 7)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {7237#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:27,818 INFO L273 TraceCheckUtils]: 22: Hoare triple {7237#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {7237#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:27,818 INFO L273 TraceCheckUtils]: 23: Hoare triple {7237#(<= main_~i~1 8)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {7238#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:27,819 INFO L273 TraceCheckUtils]: 24: Hoare triple {7238#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {7238#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:27,820 INFO L273 TraceCheckUtils]: 25: Hoare triple {7238#(<= main_~i~1 9)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {7239#(<= main_~i~1 10)} is VALID [2018-11-23 12:16:27,820 INFO L273 TraceCheckUtils]: 26: Hoare triple {7239#(<= main_~i~1 10)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {7239#(<= main_~i~1 10)} is VALID [2018-11-23 12:16:27,820 INFO L273 TraceCheckUtils]: 27: Hoare triple {7239#(<= main_~i~1 10)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {7240#(<= main_~i~1 11)} is VALID [2018-11-23 12:16:27,821 INFO L273 TraceCheckUtils]: 28: Hoare triple {7240#(<= main_~i~1 11)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {7240#(<= main_~i~1 11)} is VALID [2018-11-23 12:16:27,821 INFO L273 TraceCheckUtils]: 29: Hoare triple {7240#(<= main_~i~1 11)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {7241#(<= main_~i~1 12)} is VALID [2018-11-23 12:16:27,821 INFO L273 TraceCheckUtils]: 30: Hoare triple {7241#(<= main_~i~1 12)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {7241#(<= main_~i~1 12)} is VALID [2018-11-23 12:16:27,822 INFO L273 TraceCheckUtils]: 31: Hoare triple {7241#(<= main_~i~1 12)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {7242#(<= main_~i~1 13)} is VALID [2018-11-23 12:16:27,823 INFO L273 TraceCheckUtils]: 32: Hoare triple {7242#(<= main_~i~1 13)} assume !(~i~1 < 20); {7228#false} is VALID [2018-11-23 12:16:27,823 INFO L256 TraceCheckUtils]: 33: Hoare triple {7228#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {7228#false} is VALID [2018-11-23 12:16:27,823 INFO L273 TraceCheckUtils]: 34: Hoare triple {7228#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {7228#false} is VALID [2018-11-23 12:16:27,823 INFO L273 TraceCheckUtils]: 35: Hoare triple {7228#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {7228#false} is VALID [2018-11-23 12:16:27,824 INFO L273 TraceCheckUtils]: 36: Hoare triple {7228#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {7228#false} is VALID [2018-11-23 12:16:27,824 INFO L273 TraceCheckUtils]: 37: Hoare triple {7228#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {7228#false} is VALID [2018-11-23 12:16:27,824 INFO L273 TraceCheckUtils]: 38: Hoare triple {7228#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7228#false} is VALID [2018-11-23 12:16:27,824 INFO L273 TraceCheckUtils]: 39: Hoare triple {7228#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {7228#false} is VALID [2018-11-23 12:16:27,824 INFO L273 TraceCheckUtils]: 40: Hoare triple {7228#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {7228#false} is VALID [2018-11-23 12:16:27,825 INFO L273 TraceCheckUtils]: 41: Hoare triple {7228#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {7228#false} is VALID [2018-11-23 12:16:27,825 INFO L273 TraceCheckUtils]: 42: Hoare triple {7228#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7228#false} is VALID [2018-11-23 12:16:27,825 INFO L273 TraceCheckUtils]: 43: Hoare triple {7228#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {7228#false} is VALID [2018-11-23 12:16:27,825 INFO L273 TraceCheckUtils]: 44: Hoare triple {7228#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {7228#false} is VALID [2018-11-23 12:16:27,825 INFO L273 TraceCheckUtils]: 45: Hoare triple {7228#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {7228#false} is VALID [2018-11-23 12:16:27,825 INFO L273 TraceCheckUtils]: 46: Hoare triple {7228#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7228#false} is VALID [2018-11-23 12:16:27,826 INFO L273 TraceCheckUtils]: 47: Hoare triple {7228#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {7228#false} is VALID [2018-11-23 12:16:27,826 INFO L273 TraceCheckUtils]: 48: Hoare triple {7228#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {7228#false} is VALID [2018-11-23 12:16:27,826 INFO L273 TraceCheckUtils]: 49: Hoare triple {7228#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {7228#false} is VALID [2018-11-23 12:16:27,826 INFO L273 TraceCheckUtils]: 50: Hoare triple {7228#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7228#false} is VALID [2018-11-23 12:16:27,826 INFO L273 TraceCheckUtils]: 51: Hoare triple {7228#false} assume !(~i~0 < 20); {7228#false} is VALID [2018-11-23 12:16:27,827 INFO L273 TraceCheckUtils]: 52: Hoare triple {7228#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {7228#false} is VALID [2018-11-23 12:16:27,827 INFO L273 TraceCheckUtils]: 53: Hoare triple {7228#false} assume true; {7228#false} is VALID [2018-11-23 12:16:27,827 INFO L268 TraceCheckUtils]: 54: Hoare quadruple {7228#false} {7228#false} #77#return; {7228#false} is VALID [2018-11-23 12:16:27,827 INFO L273 TraceCheckUtils]: 55: Hoare triple {7228#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {7228#false} is VALID [2018-11-23 12:16:27,827 INFO L256 TraceCheckUtils]: 56: Hoare triple {7228#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {7228#false} is VALID [2018-11-23 12:16:27,828 INFO L273 TraceCheckUtils]: 57: Hoare triple {7228#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {7228#false} is VALID [2018-11-23 12:16:27,828 INFO L273 TraceCheckUtils]: 58: Hoare triple {7228#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {7228#false} is VALID [2018-11-23 12:16:27,828 INFO L273 TraceCheckUtils]: 59: Hoare triple {7228#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {7228#false} is VALID [2018-11-23 12:16:27,828 INFO L273 TraceCheckUtils]: 60: Hoare triple {7228#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {7228#false} is VALID [2018-11-23 12:16:27,828 INFO L273 TraceCheckUtils]: 61: Hoare triple {7228#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7228#false} is VALID [2018-11-23 12:16:27,828 INFO L273 TraceCheckUtils]: 62: Hoare triple {7228#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {7228#false} is VALID [2018-11-23 12:16:27,828 INFO L273 TraceCheckUtils]: 63: Hoare triple {7228#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {7228#false} is VALID [2018-11-23 12:16:27,829 INFO L273 TraceCheckUtils]: 64: Hoare triple {7228#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {7228#false} is VALID [2018-11-23 12:16:27,829 INFO L273 TraceCheckUtils]: 65: Hoare triple {7228#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7228#false} is VALID [2018-11-23 12:16:27,829 INFO L273 TraceCheckUtils]: 66: Hoare triple {7228#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {7228#false} is VALID [2018-11-23 12:16:27,829 INFO L273 TraceCheckUtils]: 67: Hoare triple {7228#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {7228#false} is VALID [2018-11-23 12:16:27,829 INFO L273 TraceCheckUtils]: 68: Hoare triple {7228#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {7228#false} is VALID [2018-11-23 12:16:27,829 INFO L273 TraceCheckUtils]: 69: Hoare triple {7228#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7228#false} is VALID [2018-11-23 12:16:27,829 INFO L273 TraceCheckUtils]: 70: Hoare triple {7228#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {7228#false} is VALID [2018-11-23 12:16:27,829 INFO L273 TraceCheckUtils]: 71: Hoare triple {7228#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {7228#false} is VALID [2018-11-23 12:16:27,829 INFO L273 TraceCheckUtils]: 72: Hoare triple {7228#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {7228#false} is VALID [2018-11-23 12:16:27,830 INFO L273 TraceCheckUtils]: 73: Hoare triple {7228#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7228#false} is VALID [2018-11-23 12:16:27,830 INFO L273 TraceCheckUtils]: 74: Hoare triple {7228#false} assume !(~i~0 < 20); {7228#false} is VALID [2018-11-23 12:16:27,830 INFO L273 TraceCheckUtils]: 75: Hoare triple {7228#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {7228#false} is VALID [2018-11-23 12:16:27,830 INFO L273 TraceCheckUtils]: 76: Hoare triple {7228#false} assume true; {7228#false} is VALID [2018-11-23 12:16:27,830 INFO L268 TraceCheckUtils]: 77: Hoare quadruple {7228#false} {7228#false} #79#return; {7228#false} is VALID [2018-11-23 12:16:27,830 INFO L273 TraceCheckUtils]: 78: Hoare triple {7228#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {7228#false} is VALID [2018-11-23 12:16:27,830 INFO L273 TraceCheckUtils]: 79: Hoare triple {7228#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {7228#false} is VALID [2018-11-23 12:16:27,830 INFO L273 TraceCheckUtils]: 80: Hoare triple {7228#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {7228#false} is VALID [2018-11-23 12:16:27,831 INFO L273 TraceCheckUtils]: 81: Hoare triple {7228#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {7228#false} is VALID [2018-11-23 12:16:27,831 INFO L273 TraceCheckUtils]: 82: Hoare triple {7228#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {7228#false} is VALID [2018-11-23 12:16:27,831 INFO L273 TraceCheckUtils]: 83: Hoare triple {7228#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {7228#false} is VALID [2018-11-23 12:16:27,831 INFO L273 TraceCheckUtils]: 84: Hoare triple {7228#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {7228#false} is VALID [2018-11-23 12:16:27,831 INFO L273 TraceCheckUtils]: 85: Hoare triple {7228#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {7228#false} is VALID [2018-11-23 12:16:27,831 INFO L273 TraceCheckUtils]: 86: Hoare triple {7228#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {7228#false} is VALID [2018-11-23 12:16:27,831 INFO L273 TraceCheckUtils]: 87: Hoare triple {7228#false} assume !(~i~2 < 19); {7228#false} is VALID [2018-11-23 12:16:27,831 INFO L273 TraceCheckUtils]: 88: Hoare triple {7228#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {7228#false} is VALID [2018-11-23 12:16:27,831 INFO L256 TraceCheckUtils]: 89: Hoare triple {7228#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {7228#false} is VALID [2018-11-23 12:16:27,832 INFO L273 TraceCheckUtils]: 90: Hoare triple {7228#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {7228#false} is VALID [2018-11-23 12:16:27,832 INFO L273 TraceCheckUtils]: 91: Hoare triple {7228#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {7228#false} is VALID [2018-11-23 12:16:27,832 INFO L273 TraceCheckUtils]: 92: Hoare triple {7228#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {7228#false} is VALID [2018-11-23 12:16:27,832 INFO L273 TraceCheckUtils]: 93: Hoare triple {7228#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {7228#false} is VALID [2018-11-23 12:16:27,832 INFO L273 TraceCheckUtils]: 94: Hoare triple {7228#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7228#false} is VALID [2018-11-23 12:16:27,832 INFO L273 TraceCheckUtils]: 95: Hoare triple {7228#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {7228#false} is VALID [2018-11-23 12:16:27,832 INFO L273 TraceCheckUtils]: 96: Hoare triple {7228#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {7228#false} is VALID [2018-11-23 12:16:27,832 INFO L273 TraceCheckUtils]: 97: Hoare triple {7228#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {7228#false} is VALID [2018-11-23 12:16:27,832 INFO L273 TraceCheckUtils]: 98: Hoare triple {7228#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7228#false} is VALID [2018-11-23 12:16:27,833 INFO L273 TraceCheckUtils]: 99: Hoare triple {7228#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {7228#false} is VALID [2018-11-23 12:16:27,833 INFO L273 TraceCheckUtils]: 100: Hoare triple {7228#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {7228#false} is VALID [2018-11-23 12:16:27,833 INFO L273 TraceCheckUtils]: 101: Hoare triple {7228#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {7228#false} is VALID [2018-11-23 12:16:27,833 INFO L273 TraceCheckUtils]: 102: Hoare triple {7228#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7228#false} is VALID [2018-11-23 12:16:27,833 INFO L273 TraceCheckUtils]: 103: Hoare triple {7228#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {7228#false} is VALID [2018-11-23 12:16:27,833 INFO L273 TraceCheckUtils]: 104: Hoare triple {7228#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {7228#false} is VALID [2018-11-23 12:16:27,833 INFO L273 TraceCheckUtils]: 105: Hoare triple {7228#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {7228#false} is VALID [2018-11-23 12:16:27,833 INFO L273 TraceCheckUtils]: 106: Hoare triple {7228#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {7228#false} is VALID [2018-11-23 12:16:27,833 INFO L273 TraceCheckUtils]: 107: Hoare triple {7228#false} assume !(~i~0 < 20); {7228#false} is VALID [2018-11-23 12:16:27,834 INFO L273 TraceCheckUtils]: 108: Hoare triple {7228#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {7228#false} is VALID [2018-11-23 12:16:27,834 INFO L273 TraceCheckUtils]: 109: Hoare triple {7228#false} assume true; {7228#false} is VALID [2018-11-23 12:16:27,834 INFO L268 TraceCheckUtils]: 110: Hoare quadruple {7228#false} {7228#false} #81#return; {7228#false} is VALID [2018-11-23 12:16:27,834 INFO L273 TraceCheckUtils]: 111: Hoare triple {7228#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {7228#false} is VALID [2018-11-23 12:16:27,834 INFO L273 TraceCheckUtils]: 112: Hoare triple {7228#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {7228#false} is VALID [2018-11-23 12:16:27,834 INFO L273 TraceCheckUtils]: 113: Hoare triple {7228#false} assume !false; {7228#false} is VALID [2018-11-23 12:16:27,839 INFO L134 CoverageAnalysis]: Checked inductivity of 500 backedges. 0 proven. 169 refuted. 0 times theorem prover too weak. 331 trivial. 0 not checked. [2018-11-23 12:16:27,858 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:16:27,858 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 16] total 17 [2018-11-23 12:16:27,858 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 114 [2018-11-23 12:16:27,859 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:27,859 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states. [2018-11-23 12:16:27,922 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:27,922 INFO L459 AbstractCegarLoop]: Interpolant automaton has 17 states [2018-11-23 12:16:27,922 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2018-11-23 12:16:27,923 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=136, Invalid=136, Unknown=0, NotChecked=0, Total=272 [2018-11-23 12:16:27,923 INFO L87 Difference]: Start difference. First operand 73 states and 81 transitions. Second operand 17 states. [2018-11-23 12:16:28,297 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:28,297 INFO L93 Difference]: Finished difference Result 116 states and 132 transitions. [2018-11-23 12:16:28,297 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2018-11-23 12:16:28,298 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 114 [2018-11-23 12:16:28,298 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:28,298 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-23 12:16:28,299 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 86 transitions. [2018-11-23 12:16:28,299 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-23 12:16:28,300 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 86 transitions. [2018-11-23 12:16:28,300 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 86 transitions. [2018-11-23 12:16:28,378 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:28,380 INFO L225 Difference]: With dead ends: 116 [2018-11-23 12:16:28,380 INFO L226 Difference]: Without dead ends: 76 [2018-11-23 12:16:28,381 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 129 GetRequests, 114 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 24 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=136, Invalid=136, Unknown=0, NotChecked=0, Total=272 [2018-11-23 12:16:28,382 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 76 states. [2018-11-23 12:16:28,414 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 76 to 75. [2018-11-23 12:16:28,415 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:28,415 INFO L82 GeneralOperation]: Start isEquivalent. First operand 76 states. Second operand 75 states. [2018-11-23 12:16:28,415 INFO L74 IsIncluded]: Start isIncluded. First operand 76 states. Second operand 75 states. [2018-11-23 12:16:28,415 INFO L87 Difference]: Start difference. First operand 76 states. Second operand 75 states. [2018-11-23 12:16:28,417 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:28,417 INFO L93 Difference]: Finished difference Result 76 states and 84 transitions. [2018-11-23 12:16:28,418 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 84 transitions. [2018-11-23 12:16:28,418 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:28,418 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:28,418 INFO L74 IsIncluded]: Start isIncluded. First operand 75 states. Second operand 76 states. [2018-11-23 12:16:28,418 INFO L87 Difference]: Start difference. First operand 75 states. Second operand 76 states. [2018-11-23 12:16:28,420 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:28,420 INFO L93 Difference]: Finished difference Result 76 states and 84 transitions. [2018-11-23 12:16:28,420 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 84 transitions. [2018-11-23 12:16:28,421 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:28,421 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:28,421 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:28,421 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:28,421 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 75 states. [2018-11-23 12:16:28,423 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 75 states to 75 states and 83 transitions. [2018-11-23 12:16:28,423 INFO L78 Accepts]: Start accepts. Automaton has 75 states and 83 transitions. Word has length 114 [2018-11-23 12:16:28,423 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:28,423 INFO L480 AbstractCegarLoop]: Abstraction has 75 states and 83 transitions. [2018-11-23 12:16:28,424 INFO L481 AbstractCegarLoop]: Interpolant automaton has 17 states. [2018-11-23 12:16:28,424 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 83 transitions. [2018-11-23 12:16:28,425 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 117 [2018-11-23 12:16:28,425 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:28,425 INFO L402 BasicCegarLoop]: trace histogram [14, 14, 12, 12, 12, 12, 4, 4, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:28,425 INFO L423 AbstractCegarLoop]: === Iteration 17 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:28,425 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:28,426 INFO L82 PathProgramCache]: Analyzing trace with hash -1330051829, now seen corresponding path program 14 times [2018-11-23 12:16:28,426 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:28,426 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:28,426 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:28,427 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:16:28,427 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:28,447 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:29,249 INFO L256 TraceCheckUtils]: 0: Hoare triple {8008#true} call ULTIMATE.init(); {8008#true} is VALID [2018-11-23 12:16:29,249 INFO L273 TraceCheckUtils]: 1: Hoare triple {8008#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {8008#true} is VALID [2018-11-23 12:16:29,250 INFO L273 TraceCheckUtils]: 2: Hoare triple {8008#true} assume true; {8008#true} is VALID [2018-11-23 12:16:29,250 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {8008#true} {8008#true} #73#return; {8008#true} is VALID [2018-11-23 12:16:29,250 INFO L256 TraceCheckUtils]: 4: Hoare triple {8008#true} call #t~ret14 := main(); {8008#true} is VALID [2018-11-23 12:16:29,251 INFO L273 TraceCheckUtils]: 5: Hoare triple {8008#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {8010#(= main_~i~1 0)} is VALID [2018-11-23 12:16:29,251 INFO L273 TraceCheckUtils]: 6: Hoare triple {8010#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8010#(= main_~i~1 0)} is VALID [2018-11-23 12:16:29,252 INFO L273 TraceCheckUtils]: 7: Hoare triple {8010#(= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8011#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:29,253 INFO L273 TraceCheckUtils]: 8: Hoare triple {8011#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8011#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:29,253 INFO L273 TraceCheckUtils]: 9: Hoare triple {8011#(<= main_~i~1 1)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8012#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:29,254 INFO L273 TraceCheckUtils]: 10: Hoare triple {8012#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8012#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:29,255 INFO L273 TraceCheckUtils]: 11: Hoare triple {8012#(<= main_~i~1 2)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8013#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:29,255 INFO L273 TraceCheckUtils]: 12: Hoare triple {8013#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8013#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:29,256 INFO L273 TraceCheckUtils]: 13: Hoare triple {8013#(<= main_~i~1 3)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8014#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:29,257 INFO L273 TraceCheckUtils]: 14: Hoare triple {8014#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8014#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:29,257 INFO L273 TraceCheckUtils]: 15: Hoare triple {8014#(<= main_~i~1 4)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8015#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:29,258 INFO L273 TraceCheckUtils]: 16: Hoare triple {8015#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8015#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:29,259 INFO L273 TraceCheckUtils]: 17: Hoare triple {8015#(<= main_~i~1 5)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8016#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:29,259 INFO L273 TraceCheckUtils]: 18: Hoare triple {8016#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8016#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:29,260 INFO L273 TraceCheckUtils]: 19: Hoare triple {8016#(<= main_~i~1 6)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8017#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:29,261 INFO L273 TraceCheckUtils]: 20: Hoare triple {8017#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8017#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:29,262 INFO L273 TraceCheckUtils]: 21: Hoare triple {8017#(<= main_~i~1 7)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8018#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:29,262 INFO L273 TraceCheckUtils]: 22: Hoare triple {8018#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8018#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:29,263 INFO L273 TraceCheckUtils]: 23: Hoare triple {8018#(<= main_~i~1 8)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8019#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:29,263 INFO L273 TraceCheckUtils]: 24: Hoare triple {8019#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8019#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:29,264 INFO L273 TraceCheckUtils]: 25: Hoare triple {8019#(<= main_~i~1 9)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8020#(<= main_~i~1 10)} is VALID [2018-11-23 12:16:29,265 INFO L273 TraceCheckUtils]: 26: Hoare triple {8020#(<= main_~i~1 10)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8020#(<= main_~i~1 10)} is VALID [2018-11-23 12:16:29,266 INFO L273 TraceCheckUtils]: 27: Hoare triple {8020#(<= main_~i~1 10)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8021#(<= main_~i~1 11)} is VALID [2018-11-23 12:16:29,266 INFO L273 TraceCheckUtils]: 28: Hoare triple {8021#(<= main_~i~1 11)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8021#(<= main_~i~1 11)} is VALID [2018-11-23 12:16:29,267 INFO L273 TraceCheckUtils]: 29: Hoare triple {8021#(<= main_~i~1 11)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8022#(<= main_~i~1 12)} is VALID [2018-11-23 12:16:29,267 INFO L273 TraceCheckUtils]: 30: Hoare triple {8022#(<= main_~i~1 12)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8022#(<= main_~i~1 12)} is VALID [2018-11-23 12:16:29,268 INFO L273 TraceCheckUtils]: 31: Hoare triple {8022#(<= main_~i~1 12)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8023#(<= main_~i~1 13)} is VALID [2018-11-23 12:16:29,269 INFO L273 TraceCheckUtils]: 32: Hoare triple {8023#(<= main_~i~1 13)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8023#(<= main_~i~1 13)} is VALID [2018-11-23 12:16:29,270 INFO L273 TraceCheckUtils]: 33: Hoare triple {8023#(<= main_~i~1 13)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8024#(<= main_~i~1 14)} is VALID [2018-11-23 12:16:29,270 INFO L273 TraceCheckUtils]: 34: Hoare triple {8024#(<= main_~i~1 14)} assume !(~i~1 < 20); {8009#false} is VALID [2018-11-23 12:16:29,270 INFO L256 TraceCheckUtils]: 35: Hoare triple {8009#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {8008#true} is VALID [2018-11-23 12:16:29,271 INFO L273 TraceCheckUtils]: 36: Hoare triple {8008#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {8008#true} is VALID [2018-11-23 12:16:29,271 INFO L273 TraceCheckUtils]: 37: Hoare triple {8008#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8008#true} is VALID [2018-11-23 12:16:29,271 INFO L273 TraceCheckUtils]: 38: Hoare triple {8008#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8008#true} is VALID [2018-11-23 12:16:29,271 INFO L273 TraceCheckUtils]: 39: Hoare triple {8008#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8008#true} is VALID [2018-11-23 12:16:29,271 INFO L273 TraceCheckUtils]: 40: Hoare triple {8008#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8008#true} is VALID [2018-11-23 12:16:29,272 INFO L273 TraceCheckUtils]: 41: Hoare triple {8008#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8008#true} is VALID [2018-11-23 12:16:29,272 INFO L273 TraceCheckUtils]: 42: Hoare triple {8008#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8008#true} is VALID [2018-11-23 12:16:29,272 INFO L273 TraceCheckUtils]: 43: Hoare triple {8008#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8008#true} is VALID [2018-11-23 12:16:29,272 INFO L273 TraceCheckUtils]: 44: Hoare triple {8008#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8008#true} is VALID [2018-11-23 12:16:29,272 INFO L273 TraceCheckUtils]: 45: Hoare triple {8008#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8008#true} is VALID [2018-11-23 12:16:29,273 INFO L273 TraceCheckUtils]: 46: Hoare triple {8008#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8008#true} is VALID [2018-11-23 12:16:29,273 INFO L273 TraceCheckUtils]: 47: Hoare triple {8008#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8008#true} is VALID [2018-11-23 12:16:29,273 INFO L273 TraceCheckUtils]: 48: Hoare triple {8008#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8008#true} is VALID [2018-11-23 12:16:29,273 INFO L273 TraceCheckUtils]: 49: Hoare triple {8008#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8008#true} is VALID [2018-11-23 12:16:29,274 INFO L273 TraceCheckUtils]: 50: Hoare triple {8008#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8008#true} is VALID [2018-11-23 12:16:29,274 INFO L273 TraceCheckUtils]: 51: Hoare triple {8008#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8008#true} is VALID [2018-11-23 12:16:29,274 INFO L273 TraceCheckUtils]: 52: Hoare triple {8008#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8008#true} is VALID [2018-11-23 12:16:29,274 INFO L273 TraceCheckUtils]: 53: Hoare triple {8008#true} assume !(~i~0 < 20); {8008#true} is VALID [2018-11-23 12:16:29,274 INFO L273 TraceCheckUtils]: 54: Hoare triple {8008#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {8008#true} is VALID [2018-11-23 12:16:29,274 INFO L273 TraceCheckUtils]: 55: Hoare triple {8008#true} assume true; {8008#true} is VALID [2018-11-23 12:16:29,274 INFO L268 TraceCheckUtils]: 56: Hoare quadruple {8008#true} {8009#false} #77#return; {8009#false} is VALID [2018-11-23 12:16:29,274 INFO L273 TraceCheckUtils]: 57: Hoare triple {8009#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {8009#false} is VALID [2018-11-23 12:16:29,274 INFO L256 TraceCheckUtils]: 58: Hoare triple {8009#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {8008#true} is VALID [2018-11-23 12:16:29,275 INFO L273 TraceCheckUtils]: 59: Hoare triple {8008#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {8008#true} is VALID [2018-11-23 12:16:29,275 INFO L273 TraceCheckUtils]: 60: Hoare triple {8008#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8008#true} is VALID [2018-11-23 12:16:29,275 INFO L273 TraceCheckUtils]: 61: Hoare triple {8008#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8008#true} is VALID [2018-11-23 12:16:29,275 INFO L273 TraceCheckUtils]: 62: Hoare triple {8008#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8008#true} is VALID [2018-11-23 12:16:29,275 INFO L273 TraceCheckUtils]: 63: Hoare triple {8008#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8008#true} is VALID [2018-11-23 12:16:29,275 INFO L273 TraceCheckUtils]: 64: Hoare triple {8008#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8008#true} is VALID [2018-11-23 12:16:29,275 INFO L273 TraceCheckUtils]: 65: Hoare triple {8008#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8008#true} is VALID [2018-11-23 12:16:29,275 INFO L273 TraceCheckUtils]: 66: Hoare triple {8008#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8008#true} is VALID [2018-11-23 12:16:29,276 INFO L273 TraceCheckUtils]: 67: Hoare triple {8008#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8008#true} is VALID [2018-11-23 12:16:29,276 INFO L273 TraceCheckUtils]: 68: Hoare triple {8008#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8008#true} is VALID [2018-11-23 12:16:29,276 INFO L273 TraceCheckUtils]: 69: Hoare triple {8008#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8008#true} is VALID [2018-11-23 12:16:29,276 INFO L273 TraceCheckUtils]: 70: Hoare triple {8008#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8008#true} is VALID [2018-11-23 12:16:29,276 INFO L273 TraceCheckUtils]: 71: Hoare triple {8008#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8008#true} is VALID [2018-11-23 12:16:29,276 INFO L273 TraceCheckUtils]: 72: Hoare triple {8008#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8008#true} is VALID [2018-11-23 12:16:29,276 INFO L273 TraceCheckUtils]: 73: Hoare triple {8008#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8008#true} is VALID [2018-11-23 12:16:29,276 INFO L273 TraceCheckUtils]: 74: Hoare triple {8008#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8008#true} is VALID [2018-11-23 12:16:29,276 INFO L273 TraceCheckUtils]: 75: Hoare triple {8008#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8008#true} is VALID [2018-11-23 12:16:29,277 INFO L273 TraceCheckUtils]: 76: Hoare triple {8008#true} assume !(~i~0 < 20); {8008#true} is VALID [2018-11-23 12:16:29,277 INFO L273 TraceCheckUtils]: 77: Hoare triple {8008#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {8008#true} is VALID [2018-11-23 12:16:29,277 INFO L273 TraceCheckUtils]: 78: Hoare triple {8008#true} assume true; {8008#true} is VALID [2018-11-23 12:16:29,277 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {8008#true} {8009#false} #79#return; {8009#false} is VALID [2018-11-23 12:16:29,277 INFO L273 TraceCheckUtils]: 80: Hoare triple {8009#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {8009#false} is VALID [2018-11-23 12:16:29,277 INFO L273 TraceCheckUtils]: 81: Hoare triple {8009#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {8009#false} is VALID [2018-11-23 12:16:29,277 INFO L273 TraceCheckUtils]: 82: Hoare triple {8009#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {8009#false} is VALID [2018-11-23 12:16:29,277 INFO L273 TraceCheckUtils]: 83: Hoare triple {8009#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {8009#false} is VALID [2018-11-23 12:16:29,278 INFO L273 TraceCheckUtils]: 84: Hoare triple {8009#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {8009#false} is VALID [2018-11-23 12:16:29,278 INFO L273 TraceCheckUtils]: 85: Hoare triple {8009#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {8009#false} is VALID [2018-11-23 12:16:29,278 INFO L273 TraceCheckUtils]: 86: Hoare triple {8009#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {8009#false} is VALID [2018-11-23 12:16:29,278 INFO L273 TraceCheckUtils]: 87: Hoare triple {8009#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {8009#false} is VALID [2018-11-23 12:16:29,278 INFO L273 TraceCheckUtils]: 88: Hoare triple {8009#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {8009#false} is VALID [2018-11-23 12:16:29,278 INFO L273 TraceCheckUtils]: 89: Hoare triple {8009#false} assume !(~i~2 < 19); {8009#false} is VALID [2018-11-23 12:16:29,278 INFO L273 TraceCheckUtils]: 90: Hoare triple {8009#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {8009#false} is VALID [2018-11-23 12:16:29,278 INFO L256 TraceCheckUtils]: 91: Hoare triple {8009#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {8008#true} is VALID [2018-11-23 12:16:29,278 INFO L273 TraceCheckUtils]: 92: Hoare triple {8008#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {8008#true} is VALID [2018-11-23 12:16:29,279 INFO L273 TraceCheckUtils]: 93: Hoare triple {8008#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8008#true} is VALID [2018-11-23 12:16:29,279 INFO L273 TraceCheckUtils]: 94: Hoare triple {8008#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8008#true} is VALID [2018-11-23 12:16:29,279 INFO L273 TraceCheckUtils]: 95: Hoare triple {8008#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8008#true} is VALID [2018-11-23 12:16:29,279 INFO L273 TraceCheckUtils]: 96: Hoare triple {8008#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8008#true} is VALID [2018-11-23 12:16:29,279 INFO L273 TraceCheckUtils]: 97: Hoare triple {8008#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8008#true} is VALID [2018-11-23 12:16:29,279 INFO L273 TraceCheckUtils]: 98: Hoare triple {8008#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8008#true} is VALID [2018-11-23 12:16:29,279 INFO L273 TraceCheckUtils]: 99: Hoare triple {8008#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8008#true} is VALID [2018-11-23 12:16:29,279 INFO L273 TraceCheckUtils]: 100: Hoare triple {8008#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8008#true} is VALID [2018-11-23 12:16:29,280 INFO L273 TraceCheckUtils]: 101: Hoare triple {8008#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8008#true} is VALID [2018-11-23 12:16:29,280 INFO L273 TraceCheckUtils]: 102: Hoare triple {8008#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8008#true} is VALID [2018-11-23 12:16:29,280 INFO L273 TraceCheckUtils]: 103: Hoare triple {8008#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8008#true} is VALID [2018-11-23 12:16:29,280 INFO L273 TraceCheckUtils]: 104: Hoare triple {8008#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8008#true} is VALID [2018-11-23 12:16:29,280 INFO L273 TraceCheckUtils]: 105: Hoare triple {8008#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8008#true} is VALID [2018-11-23 12:16:29,280 INFO L273 TraceCheckUtils]: 106: Hoare triple {8008#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8008#true} is VALID [2018-11-23 12:16:29,280 INFO L273 TraceCheckUtils]: 107: Hoare triple {8008#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8008#true} is VALID [2018-11-23 12:16:29,280 INFO L273 TraceCheckUtils]: 108: Hoare triple {8008#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8008#true} is VALID [2018-11-23 12:16:29,280 INFO L273 TraceCheckUtils]: 109: Hoare triple {8008#true} assume !(~i~0 < 20); {8008#true} is VALID [2018-11-23 12:16:29,281 INFO L273 TraceCheckUtils]: 110: Hoare triple {8008#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {8008#true} is VALID [2018-11-23 12:16:29,281 INFO L273 TraceCheckUtils]: 111: Hoare triple {8008#true} assume true; {8008#true} is VALID [2018-11-23 12:16:29,281 INFO L268 TraceCheckUtils]: 112: Hoare quadruple {8008#true} {8009#false} #81#return; {8009#false} is VALID [2018-11-23 12:16:29,281 INFO L273 TraceCheckUtils]: 113: Hoare triple {8009#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {8009#false} is VALID [2018-11-23 12:16:29,281 INFO L273 TraceCheckUtils]: 114: Hoare triple {8009#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {8009#false} is VALID [2018-11-23 12:16:29,281 INFO L273 TraceCheckUtils]: 115: Hoare triple {8009#false} assume !false; {8009#false} is VALID [2018-11-23 12:16:29,287 INFO L134 CoverageAnalysis]: Checked inductivity of 527 backedges. 0 proven. 196 refuted. 0 times theorem prover too weak. 331 trivial. 0 not checked. [2018-11-23 12:16:29,287 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:16:29,287 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 16 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 16 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:16:29,297 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:16:29,373 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:16:29,373 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:16:29,400 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:29,401 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:29,639 INFO L256 TraceCheckUtils]: 0: Hoare triple {8008#true} call ULTIMATE.init(); {8008#true} is VALID [2018-11-23 12:16:29,639 INFO L273 TraceCheckUtils]: 1: Hoare triple {8008#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {8008#true} is VALID [2018-11-23 12:16:29,639 INFO L273 TraceCheckUtils]: 2: Hoare triple {8008#true} assume true; {8008#true} is VALID [2018-11-23 12:16:29,639 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {8008#true} {8008#true} #73#return; {8008#true} is VALID [2018-11-23 12:16:29,640 INFO L256 TraceCheckUtils]: 4: Hoare triple {8008#true} call #t~ret14 := main(); {8008#true} is VALID [2018-11-23 12:16:29,640 INFO L273 TraceCheckUtils]: 5: Hoare triple {8008#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {8043#(<= main_~i~1 0)} is VALID [2018-11-23 12:16:29,641 INFO L273 TraceCheckUtils]: 6: Hoare triple {8043#(<= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8043#(<= main_~i~1 0)} is VALID [2018-11-23 12:16:29,641 INFO L273 TraceCheckUtils]: 7: Hoare triple {8043#(<= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8011#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:29,641 INFO L273 TraceCheckUtils]: 8: Hoare triple {8011#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8011#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:29,642 INFO L273 TraceCheckUtils]: 9: Hoare triple {8011#(<= main_~i~1 1)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8012#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:29,642 INFO L273 TraceCheckUtils]: 10: Hoare triple {8012#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8012#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:29,643 INFO L273 TraceCheckUtils]: 11: Hoare triple {8012#(<= main_~i~1 2)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8013#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:29,643 INFO L273 TraceCheckUtils]: 12: Hoare triple {8013#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8013#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:29,644 INFO L273 TraceCheckUtils]: 13: Hoare triple {8013#(<= main_~i~1 3)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8014#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:29,644 INFO L273 TraceCheckUtils]: 14: Hoare triple {8014#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8014#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:29,645 INFO L273 TraceCheckUtils]: 15: Hoare triple {8014#(<= main_~i~1 4)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8015#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:29,645 INFO L273 TraceCheckUtils]: 16: Hoare triple {8015#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8015#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:29,646 INFO L273 TraceCheckUtils]: 17: Hoare triple {8015#(<= main_~i~1 5)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8016#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:29,647 INFO L273 TraceCheckUtils]: 18: Hoare triple {8016#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8016#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:29,647 INFO L273 TraceCheckUtils]: 19: Hoare triple {8016#(<= main_~i~1 6)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8017#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:29,648 INFO L273 TraceCheckUtils]: 20: Hoare triple {8017#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8017#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:29,649 INFO L273 TraceCheckUtils]: 21: Hoare triple {8017#(<= main_~i~1 7)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8018#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:29,649 INFO L273 TraceCheckUtils]: 22: Hoare triple {8018#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8018#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:29,650 INFO L273 TraceCheckUtils]: 23: Hoare triple {8018#(<= main_~i~1 8)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8019#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:29,651 INFO L273 TraceCheckUtils]: 24: Hoare triple {8019#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8019#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:29,651 INFO L273 TraceCheckUtils]: 25: Hoare triple {8019#(<= main_~i~1 9)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8020#(<= main_~i~1 10)} is VALID [2018-11-23 12:16:29,652 INFO L273 TraceCheckUtils]: 26: Hoare triple {8020#(<= main_~i~1 10)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8020#(<= main_~i~1 10)} is VALID [2018-11-23 12:16:29,652 INFO L273 TraceCheckUtils]: 27: Hoare triple {8020#(<= main_~i~1 10)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8021#(<= main_~i~1 11)} is VALID [2018-11-23 12:16:29,653 INFO L273 TraceCheckUtils]: 28: Hoare triple {8021#(<= main_~i~1 11)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8021#(<= main_~i~1 11)} is VALID [2018-11-23 12:16:29,654 INFO L273 TraceCheckUtils]: 29: Hoare triple {8021#(<= main_~i~1 11)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8022#(<= main_~i~1 12)} is VALID [2018-11-23 12:16:29,654 INFO L273 TraceCheckUtils]: 30: Hoare triple {8022#(<= main_~i~1 12)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8022#(<= main_~i~1 12)} is VALID [2018-11-23 12:16:29,655 INFO L273 TraceCheckUtils]: 31: Hoare triple {8022#(<= main_~i~1 12)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8023#(<= main_~i~1 13)} is VALID [2018-11-23 12:16:29,655 INFO L273 TraceCheckUtils]: 32: Hoare triple {8023#(<= main_~i~1 13)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8023#(<= main_~i~1 13)} is VALID [2018-11-23 12:16:29,656 INFO L273 TraceCheckUtils]: 33: Hoare triple {8023#(<= main_~i~1 13)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8024#(<= main_~i~1 14)} is VALID [2018-11-23 12:16:29,657 INFO L273 TraceCheckUtils]: 34: Hoare triple {8024#(<= main_~i~1 14)} assume !(~i~1 < 20); {8009#false} is VALID [2018-11-23 12:16:29,657 INFO L256 TraceCheckUtils]: 35: Hoare triple {8009#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {8009#false} is VALID [2018-11-23 12:16:29,657 INFO L273 TraceCheckUtils]: 36: Hoare triple {8009#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {8009#false} is VALID [2018-11-23 12:16:29,657 INFO L273 TraceCheckUtils]: 37: Hoare triple {8009#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8009#false} is VALID [2018-11-23 12:16:29,658 INFO L273 TraceCheckUtils]: 38: Hoare triple {8009#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8009#false} is VALID [2018-11-23 12:16:29,658 INFO L273 TraceCheckUtils]: 39: Hoare triple {8009#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8009#false} is VALID [2018-11-23 12:16:29,658 INFO L273 TraceCheckUtils]: 40: Hoare triple {8009#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8009#false} is VALID [2018-11-23 12:16:29,658 INFO L273 TraceCheckUtils]: 41: Hoare triple {8009#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8009#false} is VALID [2018-11-23 12:16:29,658 INFO L273 TraceCheckUtils]: 42: Hoare triple {8009#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8009#false} is VALID [2018-11-23 12:16:29,658 INFO L273 TraceCheckUtils]: 43: Hoare triple {8009#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8009#false} is VALID [2018-11-23 12:16:29,659 INFO L273 TraceCheckUtils]: 44: Hoare triple {8009#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8009#false} is VALID [2018-11-23 12:16:29,659 INFO L273 TraceCheckUtils]: 45: Hoare triple {8009#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8009#false} is VALID [2018-11-23 12:16:29,659 INFO L273 TraceCheckUtils]: 46: Hoare triple {8009#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8009#false} is VALID [2018-11-23 12:16:29,659 INFO L273 TraceCheckUtils]: 47: Hoare triple {8009#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8009#false} is VALID [2018-11-23 12:16:29,659 INFO L273 TraceCheckUtils]: 48: Hoare triple {8009#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8009#false} is VALID [2018-11-23 12:16:29,659 INFO L273 TraceCheckUtils]: 49: Hoare triple {8009#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8009#false} is VALID [2018-11-23 12:16:29,660 INFO L273 TraceCheckUtils]: 50: Hoare triple {8009#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8009#false} is VALID [2018-11-23 12:16:29,660 INFO L273 TraceCheckUtils]: 51: Hoare triple {8009#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8009#false} is VALID [2018-11-23 12:16:29,660 INFO L273 TraceCheckUtils]: 52: Hoare triple {8009#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8009#false} is VALID [2018-11-23 12:16:29,660 INFO L273 TraceCheckUtils]: 53: Hoare triple {8009#false} assume !(~i~0 < 20); {8009#false} is VALID [2018-11-23 12:16:29,660 INFO L273 TraceCheckUtils]: 54: Hoare triple {8009#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {8009#false} is VALID [2018-11-23 12:16:29,660 INFO L273 TraceCheckUtils]: 55: Hoare triple {8009#false} assume true; {8009#false} is VALID [2018-11-23 12:16:29,660 INFO L268 TraceCheckUtils]: 56: Hoare quadruple {8009#false} {8009#false} #77#return; {8009#false} is VALID [2018-11-23 12:16:29,660 INFO L273 TraceCheckUtils]: 57: Hoare triple {8009#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {8009#false} is VALID [2018-11-23 12:16:29,661 INFO L256 TraceCheckUtils]: 58: Hoare triple {8009#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {8009#false} is VALID [2018-11-23 12:16:29,661 INFO L273 TraceCheckUtils]: 59: Hoare triple {8009#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {8009#false} is VALID [2018-11-23 12:16:29,661 INFO L273 TraceCheckUtils]: 60: Hoare triple {8009#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8009#false} is VALID [2018-11-23 12:16:29,661 INFO L273 TraceCheckUtils]: 61: Hoare triple {8009#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8009#false} is VALID [2018-11-23 12:16:29,661 INFO L273 TraceCheckUtils]: 62: Hoare triple {8009#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8009#false} is VALID [2018-11-23 12:16:29,661 INFO L273 TraceCheckUtils]: 63: Hoare triple {8009#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8009#false} is VALID [2018-11-23 12:16:29,661 INFO L273 TraceCheckUtils]: 64: Hoare triple {8009#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8009#false} is VALID [2018-11-23 12:16:29,661 INFO L273 TraceCheckUtils]: 65: Hoare triple {8009#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8009#false} is VALID [2018-11-23 12:16:29,661 INFO L273 TraceCheckUtils]: 66: Hoare triple {8009#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8009#false} is VALID [2018-11-23 12:16:29,662 INFO L273 TraceCheckUtils]: 67: Hoare triple {8009#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8009#false} is VALID [2018-11-23 12:16:29,662 INFO L273 TraceCheckUtils]: 68: Hoare triple {8009#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8009#false} is VALID [2018-11-23 12:16:29,662 INFO L273 TraceCheckUtils]: 69: Hoare triple {8009#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8009#false} is VALID [2018-11-23 12:16:29,662 INFO L273 TraceCheckUtils]: 70: Hoare triple {8009#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8009#false} is VALID [2018-11-23 12:16:29,662 INFO L273 TraceCheckUtils]: 71: Hoare triple {8009#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8009#false} is VALID [2018-11-23 12:16:29,662 INFO L273 TraceCheckUtils]: 72: Hoare triple {8009#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8009#false} is VALID [2018-11-23 12:16:29,662 INFO L273 TraceCheckUtils]: 73: Hoare triple {8009#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8009#false} is VALID [2018-11-23 12:16:29,662 INFO L273 TraceCheckUtils]: 74: Hoare triple {8009#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8009#false} is VALID [2018-11-23 12:16:29,662 INFO L273 TraceCheckUtils]: 75: Hoare triple {8009#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8009#false} is VALID [2018-11-23 12:16:29,663 INFO L273 TraceCheckUtils]: 76: Hoare triple {8009#false} assume !(~i~0 < 20); {8009#false} is VALID [2018-11-23 12:16:29,663 INFO L273 TraceCheckUtils]: 77: Hoare triple {8009#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {8009#false} is VALID [2018-11-23 12:16:29,663 INFO L273 TraceCheckUtils]: 78: Hoare triple {8009#false} assume true; {8009#false} is VALID [2018-11-23 12:16:29,663 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {8009#false} {8009#false} #79#return; {8009#false} is VALID [2018-11-23 12:16:29,663 INFO L273 TraceCheckUtils]: 80: Hoare triple {8009#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {8009#false} is VALID [2018-11-23 12:16:29,663 INFO L273 TraceCheckUtils]: 81: Hoare triple {8009#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {8009#false} is VALID [2018-11-23 12:16:29,663 INFO L273 TraceCheckUtils]: 82: Hoare triple {8009#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {8009#false} is VALID [2018-11-23 12:16:29,663 INFO L273 TraceCheckUtils]: 83: Hoare triple {8009#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {8009#false} is VALID [2018-11-23 12:16:29,663 INFO L273 TraceCheckUtils]: 84: Hoare triple {8009#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {8009#false} is VALID [2018-11-23 12:16:29,664 INFO L273 TraceCheckUtils]: 85: Hoare triple {8009#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {8009#false} is VALID [2018-11-23 12:16:29,664 INFO L273 TraceCheckUtils]: 86: Hoare triple {8009#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {8009#false} is VALID [2018-11-23 12:16:29,664 INFO L273 TraceCheckUtils]: 87: Hoare triple {8009#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {8009#false} is VALID [2018-11-23 12:16:29,664 INFO L273 TraceCheckUtils]: 88: Hoare triple {8009#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {8009#false} is VALID [2018-11-23 12:16:29,664 INFO L273 TraceCheckUtils]: 89: Hoare triple {8009#false} assume !(~i~2 < 19); {8009#false} is VALID [2018-11-23 12:16:29,664 INFO L273 TraceCheckUtils]: 90: Hoare triple {8009#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {8009#false} is VALID [2018-11-23 12:16:29,664 INFO L256 TraceCheckUtils]: 91: Hoare triple {8009#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {8009#false} is VALID [2018-11-23 12:16:29,664 INFO L273 TraceCheckUtils]: 92: Hoare triple {8009#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {8009#false} is VALID [2018-11-23 12:16:29,664 INFO L273 TraceCheckUtils]: 93: Hoare triple {8009#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8009#false} is VALID [2018-11-23 12:16:29,665 INFO L273 TraceCheckUtils]: 94: Hoare triple {8009#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8009#false} is VALID [2018-11-23 12:16:29,665 INFO L273 TraceCheckUtils]: 95: Hoare triple {8009#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8009#false} is VALID [2018-11-23 12:16:29,665 INFO L273 TraceCheckUtils]: 96: Hoare triple {8009#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8009#false} is VALID [2018-11-23 12:16:29,665 INFO L273 TraceCheckUtils]: 97: Hoare triple {8009#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8009#false} is VALID [2018-11-23 12:16:29,665 INFO L273 TraceCheckUtils]: 98: Hoare triple {8009#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8009#false} is VALID [2018-11-23 12:16:29,665 INFO L273 TraceCheckUtils]: 99: Hoare triple {8009#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8009#false} is VALID [2018-11-23 12:16:29,665 INFO L273 TraceCheckUtils]: 100: Hoare triple {8009#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8009#false} is VALID [2018-11-23 12:16:29,665 INFO L273 TraceCheckUtils]: 101: Hoare triple {8009#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8009#false} is VALID [2018-11-23 12:16:29,666 INFO L273 TraceCheckUtils]: 102: Hoare triple {8009#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8009#false} is VALID [2018-11-23 12:16:29,666 INFO L273 TraceCheckUtils]: 103: Hoare triple {8009#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8009#false} is VALID [2018-11-23 12:16:29,666 INFO L273 TraceCheckUtils]: 104: Hoare triple {8009#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8009#false} is VALID [2018-11-23 12:16:29,666 INFO L273 TraceCheckUtils]: 105: Hoare triple {8009#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8009#false} is VALID [2018-11-23 12:16:29,666 INFO L273 TraceCheckUtils]: 106: Hoare triple {8009#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8009#false} is VALID [2018-11-23 12:16:29,666 INFO L273 TraceCheckUtils]: 107: Hoare triple {8009#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8009#false} is VALID [2018-11-23 12:16:29,666 INFO L273 TraceCheckUtils]: 108: Hoare triple {8009#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8009#false} is VALID [2018-11-23 12:16:29,666 INFO L273 TraceCheckUtils]: 109: Hoare triple {8009#false} assume !(~i~0 < 20); {8009#false} is VALID [2018-11-23 12:16:29,666 INFO L273 TraceCheckUtils]: 110: Hoare triple {8009#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {8009#false} is VALID [2018-11-23 12:16:29,667 INFO L273 TraceCheckUtils]: 111: Hoare triple {8009#false} assume true; {8009#false} is VALID [2018-11-23 12:16:29,667 INFO L268 TraceCheckUtils]: 112: Hoare quadruple {8009#false} {8009#false} #81#return; {8009#false} is VALID [2018-11-23 12:16:29,667 INFO L273 TraceCheckUtils]: 113: Hoare triple {8009#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {8009#false} is VALID [2018-11-23 12:16:29,667 INFO L273 TraceCheckUtils]: 114: Hoare triple {8009#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {8009#false} is VALID [2018-11-23 12:16:29,667 INFO L273 TraceCheckUtils]: 115: Hoare triple {8009#false} assume !false; {8009#false} is VALID [2018-11-23 12:16:29,673 INFO L134 CoverageAnalysis]: Checked inductivity of 527 backedges. 0 proven. 196 refuted. 0 times theorem prover too weak. 331 trivial. 0 not checked. [2018-11-23 12:16:29,691 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:16:29,691 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 17] total 18 [2018-11-23 12:16:29,692 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 116 [2018-11-23 12:16:29,692 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:29,693 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states. [2018-11-23 12:16:29,758 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:29,758 INFO L459 AbstractCegarLoop]: Interpolant automaton has 18 states [2018-11-23 12:16:29,759 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2018-11-23 12:16:29,759 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=153, Invalid=153, Unknown=0, NotChecked=0, Total=306 [2018-11-23 12:16:29,759 INFO L87 Difference]: Start difference. First operand 75 states and 83 transitions. Second operand 18 states. [2018-11-23 12:16:30,211 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:30,211 INFO L93 Difference]: Finished difference Result 118 states and 134 transitions. [2018-11-23 12:16:30,211 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2018-11-23 12:16:30,212 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 116 [2018-11-23 12:16:30,212 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:30,212 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-23 12:16:30,213 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 88 transitions. [2018-11-23 12:16:30,213 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-23 12:16:30,214 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 88 transitions. [2018-11-23 12:16:30,214 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 88 transitions. [2018-11-23 12:16:30,296 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:30,298 INFO L225 Difference]: With dead ends: 118 [2018-11-23 12:16:30,298 INFO L226 Difference]: Without dead ends: 78 [2018-11-23 12:16:30,299 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 132 GetRequests, 116 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 26 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=153, Invalid=153, Unknown=0, NotChecked=0, Total=306 [2018-11-23 12:16:30,299 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 78 states. [2018-11-23 12:16:30,324 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 78 to 77. [2018-11-23 12:16:30,324 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:30,324 INFO L82 GeneralOperation]: Start isEquivalent. First operand 78 states. Second operand 77 states. [2018-11-23 12:16:30,324 INFO L74 IsIncluded]: Start isIncluded. First operand 78 states. Second operand 77 states. [2018-11-23 12:16:30,324 INFO L87 Difference]: Start difference. First operand 78 states. Second operand 77 states. [2018-11-23 12:16:30,327 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:30,327 INFO L93 Difference]: Finished difference Result 78 states and 86 transitions. [2018-11-23 12:16:30,327 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 86 transitions. [2018-11-23 12:16:30,328 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:30,328 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:30,328 INFO L74 IsIncluded]: Start isIncluded. First operand 77 states. Second operand 78 states. [2018-11-23 12:16:30,328 INFO L87 Difference]: Start difference. First operand 77 states. Second operand 78 states. [2018-11-23 12:16:30,330 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:30,330 INFO L93 Difference]: Finished difference Result 78 states and 86 transitions. [2018-11-23 12:16:30,330 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 86 transitions. [2018-11-23 12:16:30,330 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:30,330 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:30,331 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:30,331 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:30,331 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 77 states. [2018-11-23 12:16:30,332 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 77 states to 77 states and 85 transitions. [2018-11-23 12:16:30,332 INFO L78 Accepts]: Start accepts. Automaton has 77 states and 85 transitions. Word has length 116 [2018-11-23 12:16:30,332 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:30,333 INFO L480 AbstractCegarLoop]: Abstraction has 77 states and 85 transitions. [2018-11-23 12:16:30,333 INFO L481 AbstractCegarLoop]: Interpolant automaton has 18 states. [2018-11-23 12:16:30,333 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 85 transitions. [2018-11-23 12:16:30,333 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 119 [2018-11-23 12:16:30,333 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:30,333 INFO L402 BasicCegarLoop]: trace histogram [15, 15, 12, 12, 12, 12, 4, 4, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:30,334 INFO L423 AbstractCegarLoop]: === Iteration 18 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:30,334 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:30,334 INFO L82 PathProgramCache]: Analyzing trace with hash -421157555, now seen corresponding path program 15 times [2018-11-23 12:16:30,334 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:30,334 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:30,335 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:30,335 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:16:30,335 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:30,355 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:30,604 INFO L256 TraceCheckUtils]: 0: Hoare triple {8806#true} call ULTIMATE.init(); {8806#true} is VALID [2018-11-23 12:16:30,605 INFO L273 TraceCheckUtils]: 1: Hoare triple {8806#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {8806#true} is VALID [2018-11-23 12:16:30,605 INFO L273 TraceCheckUtils]: 2: Hoare triple {8806#true} assume true; {8806#true} is VALID [2018-11-23 12:16:30,605 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {8806#true} {8806#true} #73#return; {8806#true} is VALID [2018-11-23 12:16:30,606 INFO L256 TraceCheckUtils]: 4: Hoare triple {8806#true} call #t~ret14 := main(); {8806#true} is VALID [2018-11-23 12:16:30,606 INFO L273 TraceCheckUtils]: 5: Hoare triple {8806#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {8808#(= main_~i~1 0)} is VALID [2018-11-23 12:16:30,607 INFO L273 TraceCheckUtils]: 6: Hoare triple {8808#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8808#(= main_~i~1 0)} is VALID [2018-11-23 12:16:30,607 INFO L273 TraceCheckUtils]: 7: Hoare triple {8808#(= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8809#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:30,608 INFO L273 TraceCheckUtils]: 8: Hoare triple {8809#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8809#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:30,608 INFO L273 TraceCheckUtils]: 9: Hoare triple {8809#(<= main_~i~1 1)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8810#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:30,608 INFO L273 TraceCheckUtils]: 10: Hoare triple {8810#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8810#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:30,609 INFO L273 TraceCheckUtils]: 11: Hoare triple {8810#(<= main_~i~1 2)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8811#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:30,609 INFO L273 TraceCheckUtils]: 12: Hoare triple {8811#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8811#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:30,610 INFO L273 TraceCheckUtils]: 13: Hoare triple {8811#(<= main_~i~1 3)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8812#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:30,611 INFO L273 TraceCheckUtils]: 14: Hoare triple {8812#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8812#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:30,611 INFO L273 TraceCheckUtils]: 15: Hoare triple {8812#(<= main_~i~1 4)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8813#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:30,612 INFO L273 TraceCheckUtils]: 16: Hoare triple {8813#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8813#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:30,613 INFO L273 TraceCheckUtils]: 17: Hoare triple {8813#(<= main_~i~1 5)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8814#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:30,613 INFO L273 TraceCheckUtils]: 18: Hoare triple {8814#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8814#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:30,614 INFO L273 TraceCheckUtils]: 19: Hoare triple {8814#(<= main_~i~1 6)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8815#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:30,614 INFO L273 TraceCheckUtils]: 20: Hoare triple {8815#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8815#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:30,615 INFO L273 TraceCheckUtils]: 21: Hoare triple {8815#(<= main_~i~1 7)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8816#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:30,616 INFO L273 TraceCheckUtils]: 22: Hoare triple {8816#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8816#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:30,616 INFO L273 TraceCheckUtils]: 23: Hoare triple {8816#(<= main_~i~1 8)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8817#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:30,617 INFO L273 TraceCheckUtils]: 24: Hoare triple {8817#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8817#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:30,618 INFO L273 TraceCheckUtils]: 25: Hoare triple {8817#(<= main_~i~1 9)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8818#(<= main_~i~1 10)} is VALID [2018-11-23 12:16:30,618 INFO L273 TraceCheckUtils]: 26: Hoare triple {8818#(<= main_~i~1 10)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8818#(<= main_~i~1 10)} is VALID [2018-11-23 12:16:30,619 INFO L273 TraceCheckUtils]: 27: Hoare triple {8818#(<= main_~i~1 10)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8819#(<= main_~i~1 11)} is VALID [2018-11-23 12:16:30,620 INFO L273 TraceCheckUtils]: 28: Hoare triple {8819#(<= main_~i~1 11)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8819#(<= main_~i~1 11)} is VALID [2018-11-23 12:16:30,620 INFO L273 TraceCheckUtils]: 29: Hoare triple {8819#(<= main_~i~1 11)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8820#(<= main_~i~1 12)} is VALID [2018-11-23 12:16:30,621 INFO L273 TraceCheckUtils]: 30: Hoare triple {8820#(<= main_~i~1 12)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8820#(<= main_~i~1 12)} is VALID [2018-11-23 12:16:30,621 INFO L273 TraceCheckUtils]: 31: Hoare triple {8820#(<= main_~i~1 12)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8821#(<= main_~i~1 13)} is VALID [2018-11-23 12:16:30,622 INFO L273 TraceCheckUtils]: 32: Hoare triple {8821#(<= main_~i~1 13)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8821#(<= main_~i~1 13)} is VALID [2018-11-23 12:16:30,623 INFO L273 TraceCheckUtils]: 33: Hoare triple {8821#(<= main_~i~1 13)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8822#(<= main_~i~1 14)} is VALID [2018-11-23 12:16:30,623 INFO L273 TraceCheckUtils]: 34: Hoare triple {8822#(<= main_~i~1 14)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8822#(<= main_~i~1 14)} is VALID [2018-11-23 12:16:30,624 INFO L273 TraceCheckUtils]: 35: Hoare triple {8822#(<= main_~i~1 14)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8823#(<= main_~i~1 15)} is VALID [2018-11-23 12:16:30,625 INFO L273 TraceCheckUtils]: 36: Hoare triple {8823#(<= main_~i~1 15)} assume !(~i~1 < 20); {8807#false} is VALID [2018-11-23 12:16:30,625 INFO L256 TraceCheckUtils]: 37: Hoare triple {8807#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {8806#true} is VALID [2018-11-23 12:16:30,625 INFO L273 TraceCheckUtils]: 38: Hoare triple {8806#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {8806#true} is VALID [2018-11-23 12:16:30,625 INFO L273 TraceCheckUtils]: 39: Hoare triple {8806#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8806#true} is VALID [2018-11-23 12:16:30,625 INFO L273 TraceCheckUtils]: 40: Hoare triple {8806#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8806#true} is VALID [2018-11-23 12:16:30,626 INFO L273 TraceCheckUtils]: 41: Hoare triple {8806#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8806#true} is VALID [2018-11-23 12:16:30,626 INFO L273 TraceCheckUtils]: 42: Hoare triple {8806#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8806#true} is VALID [2018-11-23 12:16:30,626 INFO L273 TraceCheckUtils]: 43: Hoare triple {8806#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8806#true} is VALID [2018-11-23 12:16:30,626 INFO L273 TraceCheckUtils]: 44: Hoare triple {8806#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8806#true} is VALID [2018-11-23 12:16:30,626 INFO L273 TraceCheckUtils]: 45: Hoare triple {8806#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8806#true} is VALID [2018-11-23 12:16:30,626 INFO L273 TraceCheckUtils]: 46: Hoare triple {8806#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8806#true} is VALID [2018-11-23 12:16:30,627 INFO L273 TraceCheckUtils]: 47: Hoare triple {8806#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8806#true} is VALID [2018-11-23 12:16:30,627 INFO L273 TraceCheckUtils]: 48: Hoare triple {8806#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8806#true} is VALID [2018-11-23 12:16:30,627 INFO L273 TraceCheckUtils]: 49: Hoare triple {8806#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8806#true} is VALID [2018-11-23 12:16:30,627 INFO L273 TraceCheckUtils]: 50: Hoare triple {8806#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8806#true} is VALID [2018-11-23 12:16:30,627 INFO L273 TraceCheckUtils]: 51: Hoare triple {8806#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8806#true} is VALID [2018-11-23 12:16:30,628 INFO L273 TraceCheckUtils]: 52: Hoare triple {8806#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8806#true} is VALID [2018-11-23 12:16:30,628 INFO L273 TraceCheckUtils]: 53: Hoare triple {8806#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8806#true} is VALID [2018-11-23 12:16:30,628 INFO L273 TraceCheckUtils]: 54: Hoare triple {8806#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8806#true} is VALID [2018-11-23 12:16:30,628 INFO L273 TraceCheckUtils]: 55: Hoare triple {8806#true} assume !(~i~0 < 20); {8806#true} is VALID [2018-11-23 12:16:30,628 INFO L273 TraceCheckUtils]: 56: Hoare triple {8806#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {8806#true} is VALID [2018-11-23 12:16:30,629 INFO L273 TraceCheckUtils]: 57: Hoare triple {8806#true} assume true; {8806#true} is VALID [2018-11-23 12:16:30,629 INFO L268 TraceCheckUtils]: 58: Hoare quadruple {8806#true} {8807#false} #77#return; {8807#false} is VALID [2018-11-23 12:16:30,629 INFO L273 TraceCheckUtils]: 59: Hoare triple {8807#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {8807#false} is VALID [2018-11-23 12:16:30,629 INFO L256 TraceCheckUtils]: 60: Hoare triple {8807#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {8806#true} is VALID [2018-11-23 12:16:30,629 INFO L273 TraceCheckUtils]: 61: Hoare triple {8806#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {8806#true} is VALID [2018-11-23 12:16:30,629 INFO L273 TraceCheckUtils]: 62: Hoare triple {8806#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8806#true} is VALID [2018-11-23 12:16:30,630 INFO L273 TraceCheckUtils]: 63: Hoare triple {8806#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8806#true} is VALID [2018-11-23 12:16:30,630 INFO L273 TraceCheckUtils]: 64: Hoare triple {8806#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8806#true} is VALID [2018-11-23 12:16:30,630 INFO L273 TraceCheckUtils]: 65: Hoare triple {8806#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8806#true} is VALID [2018-11-23 12:16:30,630 INFO L273 TraceCheckUtils]: 66: Hoare triple {8806#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8806#true} is VALID [2018-11-23 12:16:30,630 INFO L273 TraceCheckUtils]: 67: Hoare triple {8806#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8806#true} is VALID [2018-11-23 12:16:30,630 INFO L273 TraceCheckUtils]: 68: Hoare triple {8806#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8806#true} is VALID [2018-11-23 12:16:30,630 INFO L273 TraceCheckUtils]: 69: Hoare triple {8806#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8806#true} is VALID [2018-11-23 12:16:30,630 INFO L273 TraceCheckUtils]: 70: Hoare triple {8806#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8806#true} is VALID [2018-11-23 12:16:30,630 INFO L273 TraceCheckUtils]: 71: Hoare triple {8806#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8806#true} is VALID [2018-11-23 12:16:30,631 INFO L273 TraceCheckUtils]: 72: Hoare triple {8806#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8806#true} is VALID [2018-11-23 12:16:30,631 INFO L273 TraceCheckUtils]: 73: Hoare triple {8806#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8806#true} is VALID [2018-11-23 12:16:30,631 INFO L273 TraceCheckUtils]: 74: Hoare triple {8806#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8806#true} is VALID [2018-11-23 12:16:30,631 INFO L273 TraceCheckUtils]: 75: Hoare triple {8806#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8806#true} is VALID [2018-11-23 12:16:30,631 INFO L273 TraceCheckUtils]: 76: Hoare triple {8806#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8806#true} is VALID [2018-11-23 12:16:30,631 INFO L273 TraceCheckUtils]: 77: Hoare triple {8806#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8806#true} is VALID [2018-11-23 12:16:30,631 INFO L273 TraceCheckUtils]: 78: Hoare triple {8806#true} assume !(~i~0 < 20); {8806#true} is VALID [2018-11-23 12:16:30,631 INFO L273 TraceCheckUtils]: 79: Hoare triple {8806#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {8806#true} is VALID [2018-11-23 12:16:30,632 INFO L273 TraceCheckUtils]: 80: Hoare triple {8806#true} assume true; {8806#true} is VALID [2018-11-23 12:16:30,632 INFO L268 TraceCheckUtils]: 81: Hoare quadruple {8806#true} {8807#false} #79#return; {8807#false} is VALID [2018-11-23 12:16:30,632 INFO L273 TraceCheckUtils]: 82: Hoare triple {8807#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {8807#false} is VALID [2018-11-23 12:16:30,632 INFO L273 TraceCheckUtils]: 83: Hoare triple {8807#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {8807#false} is VALID [2018-11-23 12:16:30,632 INFO L273 TraceCheckUtils]: 84: Hoare triple {8807#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {8807#false} is VALID [2018-11-23 12:16:30,632 INFO L273 TraceCheckUtils]: 85: Hoare triple {8807#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {8807#false} is VALID [2018-11-23 12:16:30,632 INFO L273 TraceCheckUtils]: 86: Hoare triple {8807#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {8807#false} is VALID [2018-11-23 12:16:30,632 INFO L273 TraceCheckUtils]: 87: Hoare triple {8807#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {8807#false} is VALID [2018-11-23 12:16:30,632 INFO L273 TraceCheckUtils]: 88: Hoare triple {8807#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {8807#false} is VALID [2018-11-23 12:16:30,633 INFO L273 TraceCheckUtils]: 89: Hoare triple {8807#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {8807#false} is VALID [2018-11-23 12:16:30,633 INFO L273 TraceCheckUtils]: 90: Hoare triple {8807#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {8807#false} is VALID [2018-11-23 12:16:30,633 INFO L273 TraceCheckUtils]: 91: Hoare triple {8807#false} assume !(~i~2 < 19); {8807#false} is VALID [2018-11-23 12:16:30,633 INFO L273 TraceCheckUtils]: 92: Hoare triple {8807#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {8807#false} is VALID [2018-11-23 12:16:30,633 INFO L256 TraceCheckUtils]: 93: Hoare triple {8807#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {8806#true} is VALID [2018-11-23 12:16:30,633 INFO L273 TraceCheckUtils]: 94: Hoare triple {8806#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {8806#true} is VALID [2018-11-23 12:16:30,633 INFO L273 TraceCheckUtils]: 95: Hoare triple {8806#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8806#true} is VALID [2018-11-23 12:16:30,633 INFO L273 TraceCheckUtils]: 96: Hoare triple {8806#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8806#true} is VALID [2018-11-23 12:16:30,633 INFO L273 TraceCheckUtils]: 97: Hoare triple {8806#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8806#true} is VALID [2018-11-23 12:16:30,634 INFO L273 TraceCheckUtils]: 98: Hoare triple {8806#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8806#true} is VALID [2018-11-23 12:16:30,634 INFO L273 TraceCheckUtils]: 99: Hoare triple {8806#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8806#true} is VALID [2018-11-23 12:16:30,634 INFO L273 TraceCheckUtils]: 100: Hoare triple {8806#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8806#true} is VALID [2018-11-23 12:16:30,634 INFO L273 TraceCheckUtils]: 101: Hoare triple {8806#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8806#true} is VALID [2018-11-23 12:16:30,634 INFO L273 TraceCheckUtils]: 102: Hoare triple {8806#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8806#true} is VALID [2018-11-23 12:16:30,634 INFO L273 TraceCheckUtils]: 103: Hoare triple {8806#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8806#true} is VALID [2018-11-23 12:16:30,634 INFO L273 TraceCheckUtils]: 104: Hoare triple {8806#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8806#true} is VALID [2018-11-23 12:16:30,634 INFO L273 TraceCheckUtils]: 105: Hoare triple {8806#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8806#true} is VALID [2018-11-23 12:16:30,635 INFO L273 TraceCheckUtils]: 106: Hoare triple {8806#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8806#true} is VALID [2018-11-23 12:16:30,635 INFO L273 TraceCheckUtils]: 107: Hoare triple {8806#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8806#true} is VALID [2018-11-23 12:16:30,635 INFO L273 TraceCheckUtils]: 108: Hoare triple {8806#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8806#true} is VALID [2018-11-23 12:16:30,635 INFO L273 TraceCheckUtils]: 109: Hoare triple {8806#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8806#true} is VALID [2018-11-23 12:16:30,635 INFO L273 TraceCheckUtils]: 110: Hoare triple {8806#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8806#true} is VALID [2018-11-23 12:16:30,635 INFO L273 TraceCheckUtils]: 111: Hoare triple {8806#true} assume !(~i~0 < 20); {8806#true} is VALID [2018-11-23 12:16:30,635 INFO L273 TraceCheckUtils]: 112: Hoare triple {8806#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {8806#true} is VALID [2018-11-23 12:16:30,635 INFO L273 TraceCheckUtils]: 113: Hoare triple {8806#true} assume true; {8806#true} is VALID [2018-11-23 12:16:30,635 INFO L268 TraceCheckUtils]: 114: Hoare quadruple {8806#true} {8807#false} #81#return; {8807#false} is VALID [2018-11-23 12:16:30,636 INFO L273 TraceCheckUtils]: 115: Hoare triple {8807#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {8807#false} is VALID [2018-11-23 12:16:30,636 INFO L273 TraceCheckUtils]: 116: Hoare triple {8807#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {8807#false} is VALID [2018-11-23 12:16:30,636 INFO L273 TraceCheckUtils]: 117: Hoare triple {8807#false} assume !false; {8807#false} is VALID [2018-11-23 12:16:30,642 INFO L134 CoverageAnalysis]: Checked inductivity of 556 backedges. 0 proven. 225 refuted. 0 times theorem prover too weak. 331 trivial. 0 not checked. [2018-11-23 12:16:30,642 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:16:30,642 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 17 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 17 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:16:30,650 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:16:30,701 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 5 check-sat command(s) [2018-11-23 12:16:30,702 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:16:30,741 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:30,742 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:30,915 INFO L256 TraceCheckUtils]: 0: Hoare triple {8806#true} call ULTIMATE.init(); {8806#true} is VALID [2018-11-23 12:16:30,916 INFO L273 TraceCheckUtils]: 1: Hoare triple {8806#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {8806#true} is VALID [2018-11-23 12:16:30,916 INFO L273 TraceCheckUtils]: 2: Hoare triple {8806#true} assume true; {8806#true} is VALID [2018-11-23 12:16:30,916 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {8806#true} {8806#true} #73#return; {8806#true} is VALID [2018-11-23 12:16:30,916 INFO L256 TraceCheckUtils]: 4: Hoare triple {8806#true} call #t~ret14 := main(); {8806#true} is VALID [2018-11-23 12:16:30,916 INFO L273 TraceCheckUtils]: 5: Hoare triple {8806#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {8806#true} is VALID [2018-11-23 12:16:30,916 INFO L273 TraceCheckUtils]: 6: Hoare triple {8806#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8806#true} is VALID [2018-11-23 12:16:30,917 INFO L273 TraceCheckUtils]: 7: Hoare triple {8806#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8806#true} is VALID [2018-11-23 12:16:30,917 INFO L273 TraceCheckUtils]: 8: Hoare triple {8806#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8806#true} is VALID [2018-11-23 12:16:30,917 INFO L273 TraceCheckUtils]: 9: Hoare triple {8806#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8806#true} is VALID [2018-11-23 12:16:30,917 INFO L273 TraceCheckUtils]: 10: Hoare triple {8806#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8806#true} is VALID [2018-11-23 12:16:30,917 INFO L273 TraceCheckUtils]: 11: Hoare triple {8806#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8806#true} is VALID [2018-11-23 12:16:30,918 INFO L273 TraceCheckUtils]: 12: Hoare triple {8806#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8806#true} is VALID [2018-11-23 12:16:30,918 INFO L273 TraceCheckUtils]: 13: Hoare triple {8806#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8806#true} is VALID [2018-11-23 12:16:30,918 INFO L273 TraceCheckUtils]: 14: Hoare triple {8806#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8806#true} is VALID [2018-11-23 12:16:30,918 INFO L273 TraceCheckUtils]: 15: Hoare triple {8806#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8806#true} is VALID [2018-11-23 12:16:30,918 INFO L273 TraceCheckUtils]: 16: Hoare triple {8806#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8806#true} is VALID [2018-11-23 12:16:30,918 INFO L273 TraceCheckUtils]: 17: Hoare triple {8806#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8806#true} is VALID [2018-11-23 12:16:30,918 INFO L273 TraceCheckUtils]: 18: Hoare triple {8806#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8806#true} is VALID [2018-11-23 12:16:30,918 INFO L273 TraceCheckUtils]: 19: Hoare triple {8806#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8806#true} is VALID [2018-11-23 12:16:30,919 INFO L273 TraceCheckUtils]: 20: Hoare triple {8806#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8806#true} is VALID [2018-11-23 12:16:30,919 INFO L273 TraceCheckUtils]: 21: Hoare triple {8806#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8806#true} is VALID [2018-11-23 12:16:30,919 INFO L273 TraceCheckUtils]: 22: Hoare triple {8806#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8806#true} is VALID [2018-11-23 12:16:30,919 INFO L273 TraceCheckUtils]: 23: Hoare triple {8806#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8806#true} is VALID [2018-11-23 12:16:30,919 INFO L273 TraceCheckUtils]: 24: Hoare triple {8806#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8806#true} is VALID [2018-11-23 12:16:30,919 INFO L273 TraceCheckUtils]: 25: Hoare triple {8806#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8806#true} is VALID [2018-11-23 12:16:30,919 INFO L273 TraceCheckUtils]: 26: Hoare triple {8806#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8806#true} is VALID [2018-11-23 12:16:30,919 INFO L273 TraceCheckUtils]: 27: Hoare triple {8806#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8806#true} is VALID [2018-11-23 12:16:30,920 INFO L273 TraceCheckUtils]: 28: Hoare triple {8806#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8806#true} is VALID [2018-11-23 12:16:30,920 INFO L273 TraceCheckUtils]: 29: Hoare triple {8806#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8806#true} is VALID [2018-11-23 12:16:30,920 INFO L273 TraceCheckUtils]: 30: Hoare triple {8806#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8806#true} is VALID [2018-11-23 12:16:30,920 INFO L273 TraceCheckUtils]: 31: Hoare triple {8806#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8806#true} is VALID [2018-11-23 12:16:30,920 INFO L273 TraceCheckUtils]: 32: Hoare triple {8806#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8806#true} is VALID [2018-11-23 12:16:30,920 INFO L273 TraceCheckUtils]: 33: Hoare triple {8806#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8806#true} is VALID [2018-11-23 12:16:30,920 INFO L273 TraceCheckUtils]: 34: Hoare triple {8806#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {8806#true} is VALID [2018-11-23 12:16:30,920 INFO L273 TraceCheckUtils]: 35: Hoare triple {8806#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {8806#true} is VALID [2018-11-23 12:16:30,920 INFO L273 TraceCheckUtils]: 36: Hoare triple {8806#true} assume !(~i~1 < 20); {8806#true} is VALID [2018-11-23 12:16:30,921 INFO L256 TraceCheckUtils]: 37: Hoare triple {8806#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {8806#true} is VALID [2018-11-23 12:16:30,921 INFO L273 TraceCheckUtils]: 38: Hoare triple {8806#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {8806#true} is VALID [2018-11-23 12:16:30,921 INFO L273 TraceCheckUtils]: 39: Hoare triple {8806#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8806#true} is VALID [2018-11-23 12:16:30,921 INFO L273 TraceCheckUtils]: 40: Hoare triple {8806#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8806#true} is VALID [2018-11-23 12:16:30,921 INFO L273 TraceCheckUtils]: 41: Hoare triple {8806#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8806#true} is VALID [2018-11-23 12:16:30,921 INFO L273 TraceCheckUtils]: 42: Hoare triple {8806#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8806#true} is VALID [2018-11-23 12:16:30,921 INFO L273 TraceCheckUtils]: 43: Hoare triple {8806#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8806#true} is VALID [2018-11-23 12:16:30,921 INFO L273 TraceCheckUtils]: 44: Hoare triple {8806#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8806#true} is VALID [2018-11-23 12:16:30,921 INFO L273 TraceCheckUtils]: 45: Hoare triple {8806#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8806#true} is VALID [2018-11-23 12:16:30,922 INFO L273 TraceCheckUtils]: 46: Hoare triple {8806#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8806#true} is VALID [2018-11-23 12:16:30,922 INFO L273 TraceCheckUtils]: 47: Hoare triple {8806#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8806#true} is VALID [2018-11-23 12:16:30,922 INFO L273 TraceCheckUtils]: 48: Hoare triple {8806#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8806#true} is VALID [2018-11-23 12:16:30,922 INFO L273 TraceCheckUtils]: 49: Hoare triple {8806#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8806#true} is VALID [2018-11-23 12:16:30,922 INFO L273 TraceCheckUtils]: 50: Hoare triple {8806#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8806#true} is VALID [2018-11-23 12:16:30,922 INFO L273 TraceCheckUtils]: 51: Hoare triple {8806#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8806#true} is VALID [2018-11-23 12:16:30,922 INFO L273 TraceCheckUtils]: 52: Hoare triple {8806#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8806#true} is VALID [2018-11-23 12:16:30,922 INFO L273 TraceCheckUtils]: 53: Hoare triple {8806#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8806#true} is VALID [2018-11-23 12:16:30,922 INFO L273 TraceCheckUtils]: 54: Hoare triple {8806#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8806#true} is VALID [2018-11-23 12:16:30,923 INFO L273 TraceCheckUtils]: 55: Hoare triple {8806#true} assume !(~i~0 < 20); {8806#true} is VALID [2018-11-23 12:16:30,923 INFO L273 TraceCheckUtils]: 56: Hoare triple {8806#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {8806#true} is VALID [2018-11-23 12:16:30,923 INFO L273 TraceCheckUtils]: 57: Hoare triple {8806#true} assume true; {8806#true} is VALID [2018-11-23 12:16:30,923 INFO L268 TraceCheckUtils]: 58: Hoare quadruple {8806#true} {8806#true} #77#return; {8806#true} is VALID [2018-11-23 12:16:30,923 INFO L273 TraceCheckUtils]: 59: Hoare triple {8806#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {8806#true} is VALID [2018-11-23 12:16:30,923 INFO L256 TraceCheckUtils]: 60: Hoare triple {8806#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {8806#true} is VALID [2018-11-23 12:16:30,923 INFO L273 TraceCheckUtils]: 61: Hoare triple {8806#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {8806#true} is VALID [2018-11-23 12:16:30,923 INFO L273 TraceCheckUtils]: 62: Hoare triple {8806#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8806#true} is VALID [2018-11-23 12:16:30,924 INFO L273 TraceCheckUtils]: 63: Hoare triple {8806#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8806#true} is VALID [2018-11-23 12:16:30,924 INFO L273 TraceCheckUtils]: 64: Hoare triple {8806#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8806#true} is VALID [2018-11-23 12:16:30,924 INFO L273 TraceCheckUtils]: 65: Hoare triple {8806#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8806#true} is VALID [2018-11-23 12:16:30,924 INFO L273 TraceCheckUtils]: 66: Hoare triple {8806#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8806#true} is VALID [2018-11-23 12:16:30,924 INFO L273 TraceCheckUtils]: 67: Hoare triple {8806#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8806#true} is VALID [2018-11-23 12:16:30,924 INFO L273 TraceCheckUtils]: 68: Hoare triple {8806#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8806#true} is VALID [2018-11-23 12:16:30,924 INFO L273 TraceCheckUtils]: 69: Hoare triple {8806#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8806#true} is VALID [2018-11-23 12:16:30,924 INFO L273 TraceCheckUtils]: 70: Hoare triple {8806#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8806#true} is VALID [2018-11-23 12:16:30,924 INFO L273 TraceCheckUtils]: 71: Hoare triple {8806#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8806#true} is VALID [2018-11-23 12:16:30,925 INFO L273 TraceCheckUtils]: 72: Hoare triple {8806#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8806#true} is VALID [2018-11-23 12:16:30,925 INFO L273 TraceCheckUtils]: 73: Hoare triple {8806#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8806#true} is VALID [2018-11-23 12:16:30,925 INFO L273 TraceCheckUtils]: 74: Hoare triple {8806#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {8806#true} is VALID [2018-11-23 12:16:30,925 INFO L273 TraceCheckUtils]: 75: Hoare triple {8806#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {8806#true} is VALID [2018-11-23 12:16:30,925 INFO L273 TraceCheckUtils]: 76: Hoare triple {8806#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {8806#true} is VALID [2018-11-23 12:16:30,925 INFO L273 TraceCheckUtils]: 77: Hoare triple {8806#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {8806#true} is VALID [2018-11-23 12:16:30,925 INFO L273 TraceCheckUtils]: 78: Hoare triple {8806#true} assume !(~i~0 < 20); {8806#true} is VALID [2018-11-23 12:16:30,925 INFO L273 TraceCheckUtils]: 79: Hoare triple {8806#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {8806#true} is VALID [2018-11-23 12:16:30,925 INFO L273 TraceCheckUtils]: 80: Hoare triple {8806#true} assume true; {8806#true} is VALID [2018-11-23 12:16:30,926 INFO L268 TraceCheckUtils]: 81: Hoare quadruple {8806#true} {8806#true} #79#return; {8806#true} is VALID [2018-11-23 12:16:30,926 INFO L273 TraceCheckUtils]: 82: Hoare triple {8806#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {8806#true} is VALID [2018-11-23 12:16:30,926 INFO L273 TraceCheckUtils]: 83: Hoare triple {8806#true} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {8806#true} is VALID [2018-11-23 12:16:30,926 INFO L273 TraceCheckUtils]: 84: Hoare triple {8806#true} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {8806#true} is VALID [2018-11-23 12:16:30,926 INFO L273 TraceCheckUtils]: 85: Hoare triple {8806#true} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {8806#true} is VALID [2018-11-23 12:16:30,926 INFO L273 TraceCheckUtils]: 86: Hoare triple {8806#true} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {8806#true} is VALID [2018-11-23 12:16:30,926 INFO L273 TraceCheckUtils]: 87: Hoare triple {8806#true} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {8806#true} is VALID [2018-11-23 12:16:30,926 INFO L273 TraceCheckUtils]: 88: Hoare triple {8806#true} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {8806#true} is VALID [2018-11-23 12:16:30,926 INFO L273 TraceCheckUtils]: 89: Hoare triple {8806#true} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {8806#true} is VALID [2018-11-23 12:16:30,927 INFO L273 TraceCheckUtils]: 90: Hoare triple {8806#true} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {8806#true} is VALID [2018-11-23 12:16:30,927 INFO L273 TraceCheckUtils]: 91: Hoare triple {8806#true} assume !(~i~2 < 19); {8806#true} is VALID [2018-11-23 12:16:30,927 INFO L273 TraceCheckUtils]: 92: Hoare triple {8806#true} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {8806#true} is VALID [2018-11-23 12:16:30,927 INFO L256 TraceCheckUtils]: 93: Hoare triple {8806#true} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {8806#true} is VALID [2018-11-23 12:16:30,927 INFO L273 TraceCheckUtils]: 94: Hoare triple {8806#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {9109#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:30,928 INFO L273 TraceCheckUtils]: 95: Hoare triple {9109#(<= max_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9109#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:30,928 INFO L273 TraceCheckUtils]: 96: Hoare triple {9109#(<= max_~i~0 0)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9109#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:30,928 INFO L273 TraceCheckUtils]: 97: Hoare triple {9109#(<= max_~i~0 0)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9109#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:30,929 INFO L273 TraceCheckUtils]: 98: Hoare triple {9109#(<= max_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9122#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:30,929 INFO L273 TraceCheckUtils]: 99: Hoare triple {9122#(<= max_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9122#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:30,930 INFO L273 TraceCheckUtils]: 100: Hoare triple {9122#(<= max_~i~0 1)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9122#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:30,930 INFO L273 TraceCheckUtils]: 101: Hoare triple {9122#(<= max_~i~0 1)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9122#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:30,947 INFO L273 TraceCheckUtils]: 102: Hoare triple {9122#(<= max_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9135#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:30,947 INFO L273 TraceCheckUtils]: 103: Hoare triple {9135#(<= max_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9135#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:30,948 INFO L273 TraceCheckUtils]: 104: Hoare triple {9135#(<= max_~i~0 2)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9135#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:30,949 INFO L273 TraceCheckUtils]: 105: Hoare triple {9135#(<= max_~i~0 2)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9135#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:30,949 INFO L273 TraceCheckUtils]: 106: Hoare triple {9135#(<= max_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9148#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:30,949 INFO L273 TraceCheckUtils]: 107: Hoare triple {9148#(<= max_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9148#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:30,950 INFO L273 TraceCheckUtils]: 108: Hoare triple {9148#(<= max_~i~0 3)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9148#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:30,950 INFO L273 TraceCheckUtils]: 109: Hoare triple {9148#(<= max_~i~0 3)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9148#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:30,951 INFO L273 TraceCheckUtils]: 110: Hoare triple {9148#(<= max_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9161#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:30,951 INFO L273 TraceCheckUtils]: 111: Hoare triple {9161#(<= max_~i~0 4)} assume !(~i~0 < 20); {8807#false} is VALID [2018-11-23 12:16:30,951 INFO L273 TraceCheckUtils]: 112: Hoare triple {8807#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {8807#false} is VALID [2018-11-23 12:16:30,952 INFO L273 TraceCheckUtils]: 113: Hoare triple {8807#false} assume true; {8807#false} is VALID [2018-11-23 12:16:30,952 INFO L268 TraceCheckUtils]: 114: Hoare quadruple {8807#false} {8806#true} #81#return; {8807#false} is VALID [2018-11-23 12:16:30,952 INFO L273 TraceCheckUtils]: 115: Hoare triple {8807#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {8807#false} is VALID [2018-11-23 12:16:30,952 INFO L273 TraceCheckUtils]: 116: Hoare triple {8807#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {8807#false} is VALID [2018-11-23 12:16:30,953 INFO L273 TraceCheckUtils]: 117: Hoare triple {8807#false} assume !false; {8807#false} is VALID [2018-11-23 12:16:30,960 INFO L134 CoverageAnalysis]: Checked inductivity of 556 backedges. 152 proven. 28 refuted. 0 times theorem prover too weak. 376 trivial. 0 not checked. [2018-11-23 12:16:30,985 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:16:30,985 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 7] total 23 [2018-11-23 12:16:30,985 INFO L78 Accepts]: Start accepts. Automaton has 23 states. Word has length 118 [2018-11-23 12:16:30,986 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:30,986 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 23 states. [2018-11-23 12:16:31,079 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:16:31,079 INFO L459 AbstractCegarLoop]: Interpolant automaton has 23 states [2018-11-23 12:16:31,079 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2018-11-23 12:16:31,080 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=173, Invalid=333, Unknown=0, NotChecked=0, Total=506 [2018-11-23 12:16:31,080 INFO L87 Difference]: Start difference. First operand 77 states and 85 transitions. Second operand 23 states. [2018-11-23 12:16:32,705 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:32,706 INFO L93 Difference]: Finished difference Result 127 states and 149 transitions. [2018-11-23 12:16:32,706 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2018-11-23 12:16:32,706 INFO L78 Accepts]: Start accepts. Automaton has 23 states. Word has length 118 [2018-11-23 12:16:32,706 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:32,706 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 23 states. [2018-11-23 12:16:32,708 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 119 transitions. [2018-11-23 12:16:32,708 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 23 states. [2018-11-23 12:16:32,710 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 119 transitions. [2018-11-23 12:16:32,710 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 23 states and 119 transitions. [2018-11-23 12:16:32,972 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:16:32,974 INFO L225 Difference]: With dead ends: 127 [2018-11-23 12:16:32,975 INFO L226 Difference]: Without dead ends: 87 [2018-11-23 12:16:32,975 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 135 GetRequests, 114 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 75 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=173, Invalid=333, Unknown=0, NotChecked=0, Total=506 [2018-11-23 12:16:32,975 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 87 states. [2018-11-23 12:16:33,002 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 87 to 83. [2018-11-23 12:16:33,002 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:33,002 INFO L82 GeneralOperation]: Start isEquivalent. First operand 87 states. Second operand 83 states. [2018-11-23 12:16:33,002 INFO L74 IsIncluded]: Start isIncluded. First operand 87 states. Second operand 83 states. [2018-11-23 12:16:33,003 INFO L87 Difference]: Start difference. First operand 87 states. Second operand 83 states. [2018-11-23 12:16:33,004 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:33,004 INFO L93 Difference]: Finished difference Result 87 states and 97 transitions. [2018-11-23 12:16:33,005 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 97 transitions. [2018-11-23 12:16:33,005 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:33,005 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:33,005 INFO L74 IsIncluded]: Start isIncluded. First operand 83 states. Second operand 87 states. [2018-11-23 12:16:33,005 INFO L87 Difference]: Start difference. First operand 83 states. Second operand 87 states. [2018-11-23 12:16:33,006 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:33,007 INFO L93 Difference]: Finished difference Result 87 states and 97 transitions. [2018-11-23 12:16:33,007 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 97 transitions. [2018-11-23 12:16:33,007 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:33,007 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:33,007 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:33,007 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:33,007 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 83 states. [2018-11-23 12:16:33,008 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 83 states to 83 states and 92 transitions. [2018-11-23 12:16:33,009 INFO L78 Accepts]: Start accepts. Automaton has 83 states and 92 transitions. Word has length 118 [2018-11-23 12:16:33,009 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:33,009 INFO L480 AbstractCegarLoop]: Abstraction has 83 states and 92 transitions. [2018-11-23 12:16:33,009 INFO L481 AbstractCegarLoop]: Interpolant automaton has 23 states. [2018-11-23 12:16:33,009 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 92 transitions. [2018-11-23 12:16:33,010 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 133 [2018-11-23 12:16:33,010 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:33,010 INFO L402 BasicCegarLoop]: trace histogram [16, 16, 15, 15, 15, 15, 4, 4, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:33,011 INFO L423 AbstractCegarLoop]: === Iteration 19 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:33,011 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:33,011 INFO L82 PathProgramCache]: Analyzing trace with hash -1792802646, now seen corresponding path program 16 times [2018-11-23 12:16:33,011 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:33,011 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:33,012 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:33,012 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:16:33,012 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:33,035 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:33,620 INFO L256 TraceCheckUtils]: 0: Hoare triple {9652#true} call ULTIMATE.init(); {9652#true} is VALID [2018-11-23 12:16:33,621 INFO L273 TraceCheckUtils]: 1: Hoare triple {9652#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {9652#true} is VALID [2018-11-23 12:16:33,621 INFO L273 TraceCheckUtils]: 2: Hoare triple {9652#true} assume true; {9652#true} is VALID [2018-11-23 12:16:33,621 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {9652#true} {9652#true} #73#return; {9652#true} is VALID [2018-11-23 12:16:33,621 INFO L256 TraceCheckUtils]: 4: Hoare triple {9652#true} call #t~ret14 := main(); {9652#true} is VALID [2018-11-23 12:16:33,622 INFO L273 TraceCheckUtils]: 5: Hoare triple {9652#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {9654#(= main_~i~1 0)} is VALID [2018-11-23 12:16:33,622 INFO L273 TraceCheckUtils]: 6: Hoare triple {9654#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9654#(= main_~i~1 0)} is VALID [2018-11-23 12:16:33,623 INFO L273 TraceCheckUtils]: 7: Hoare triple {9654#(= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9655#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:33,623 INFO L273 TraceCheckUtils]: 8: Hoare triple {9655#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9655#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:33,624 INFO L273 TraceCheckUtils]: 9: Hoare triple {9655#(<= main_~i~1 1)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9656#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:33,624 INFO L273 TraceCheckUtils]: 10: Hoare triple {9656#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9656#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:33,625 INFO L273 TraceCheckUtils]: 11: Hoare triple {9656#(<= main_~i~1 2)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9657#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:33,625 INFO L273 TraceCheckUtils]: 12: Hoare triple {9657#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9657#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:33,626 INFO L273 TraceCheckUtils]: 13: Hoare triple {9657#(<= main_~i~1 3)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9658#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:33,626 INFO L273 TraceCheckUtils]: 14: Hoare triple {9658#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9658#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:33,627 INFO L273 TraceCheckUtils]: 15: Hoare triple {9658#(<= main_~i~1 4)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9659#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:33,628 INFO L273 TraceCheckUtils]: 16: Hoare triple {9659#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9659#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:33,628 INFO L273 TraceCheckUtils]: 17: Hoare triple {9659#(<= main_~i~1 5)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9660#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:33,629 INFO L273 TraceCheckUtils]: 18: Hoare triple {9660#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9660#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:33,630 INFO L273 TraceCheckUtils]: 19: Hoare triple {9660#(<= main_~i~1 6)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9661#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:33,630 INFO L273 TraceCheckUtils]: 20: Hoare triple {9661#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9661#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:33,631 INFO L273 TraceCheckUtils]: 21: Hoare triple {9661#(<= main_~i~1 7)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9662#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:33,638 INFO L273 TraceCheckUtils]: 22: Hoare triple {9662#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9662#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:33,638 INFO L273 TraceCheckUtils]: 23: Hoare triple {9662#(<= main_~i~1 8)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9663#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:33,639 INFO L273 TraceCheckUtils]: 24: Hoare triple {9663#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9663#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:33,639 INFO L273 TraceCheckUtils]: 25: Hoare triple {9663#(<= main_~i~1 9)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9664#(<= main_~i~1 10)} is VALID [2018-11-23 12:16:33,639 INFO L273 TraceCheckUtils]: 26: Hoare triple {9664#(<= main_~i~1 10)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9664#(<= main_~i~1 10)} is VALID [2018-11-23 12:16:33,640 INFO L273 TraceCheckUtils]: 27: Hoare triple {9664#(<= main_~i~1 10)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9665#(<= main_~i~1 11)} is VALID [2018-11-23 12:16:33,640 INFO L273 TraceCheckUtils]: 28: Hoare triple {9665#(<= main_~i~1 11)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9665#(<= main_~i~1 11)} is VALID [2018-11-23 12:16:33,641 INFO L273 TraceCheckUtils]: 29: Hoare triple {9665#(<= main_~i~1 11)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9666#(<= main_~i~1 12)} is VALID [2018-11-23 12:16:33,641 INFO L273 TraceCheckUtils]: 30: Hoare triple {9666#(<= main_~i~1 12)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9666#(<= main_~i~1 12)} is VALID [2018-11-23 12:16:33,641 INFO L273 TraceCheckUtils]: 31: Hoare triple {9666#(<= main_~i~1 12)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9667#(<= main_~i~1 13)} is VALID [2018-11-23 12:16:33,642 INFO L273 TraceCheckUtils]: 32: Hoare triple {9667#(<= main_~i~1 13)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9667#(<= main_~i~1 13)} is VALID [2018-11-23 12:16:33,642 INFO L273 TraceCheckUtils]: 33: Hoare triple {9667#(<= main_~i~1 13)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9668#(<= main_~i~1 14)} is VALID [2018-11-23 12:16:33,643 INFO L273 TraceCheckUtils]: 34: Hoare triple {9668#(<= main_~i~1 14)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9668#(<= main_~i~1 14)} is VALID [2018-11-23 12:16:33,644 INFO L273 TraceCheckUtils]: 35: Hoare triple {9668#(<= main_~i~1 14)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9669#(<= main_~i~1 15)} is VALID [2018-11-23 12:16:33,644 INFO L273 TraceCheckUtils]: 36: Hoare triple {9669#(<= main_~i~1 15)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9669#(<= main_~i~1 15)} is VALID [2018-11-23 12:16:33,645 INFO L273 TraceCheckUtils]: 37: Hoare triple {9669#(<= main_~i~1 15)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9670#(<= main_~i~1 16)} is VALID [2018-11-23 12:16:33,646 INFO L273 TraceCheckUtils]: 38: Hoare triple {9670#(<= main_~i~1 16)} assume !(~i~1 < 20); {9653#false} is VALID [2018-11-23 12:16:33,646 INFO L256 TraceCheckUtils]: 39: Hoare triple {9653#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {9652#true} is VALID [2018-11-23 12:16:33,646 INFO L273 TraceCheckUtils]: 40: Hoare triple {9652#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {9652#true} is VALID [2018-11-23 12:16:33,646 INFO L273 TraceCheckUtils]: 41: Hoare triple {9652#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9652#true} is VALID [2018-11-23 12:16:33,646 INFO L273 TraceCheckUtils]: 42: Hoare triple {9652#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9652#true} is VALID [2018-11-23 12:16:33,647 INFO L273 TraceCheckUtils]: 43: Hoare triple {9652#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9652#true} is VALID [2018-11-23 12:16:33,647 INFO L273 TraceCheckUtils]: 44: Hoare triple {9652#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9652#true} is VALID [2018-11-23 12:16:33,647 INFO L273 TraceCheckUtils]: 45: Hoare triple {9652#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9652#true} is VALID [2018-11-23 12:16:33,647 INFO L273 TraceCheckUtils]: 46: Hoare triple {9652#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9652#true} is VALID [2018-11-23 12:16:33,647 INFO L273 TraceCheckUtils]: 47: Hoare triple {9652#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9652#true} is VALID [2018-11-23 12:16:33,647 INFO L273 TraceCheckUtils]: 48: Hoare triple {9652#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9652#true} is VALID [2018-11-23 12:16:33,648 INFO L273 TraceCheckUtils]: 49: Hoare triple {9652#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9652#true} is VALID [2018-11-23 12:16:33,648 INFO L273 TraceCheckUtils]: 50: Hoare triple {9652#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9652#true} is VALID [2018-11-23 12:16:33,648 INFO L273 TraceCheckUtils]: 51: Hoare triple {9652#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9652#true} is VALID [2018-11-23 12:16:33,648 INFO L273 TraceCheckUtils]: 52: Hoare triple {9652#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9652#true} is VALID [2018-11-23 12:16:33,648 INFO L273 TraceCheckUtils]: 53: Hoare triple {9652#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9652#true} is VALID [2018-11-23 12:16:33,649 INFO L273 TraceCheckUtils]: 54: Hoare triple {9652#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9652#true} is VALID [2018-11-23 12:16:33,649 INFO L273 TraceCheckUtils]: 55: Hoare triple {9652#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9652#true} is VALID [2018-11-23 12:16:33,649 INFO L273 TraceCheckUtils]: 56: Hoare triple {9652#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9652#true} is VALID [2018-11-23 12:16:33,649 INFO L273 TraceCheckUtils]: 57: Hoare triple {9652#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9652#true} is VALID [2018-11-23 12:16:33,649 INFO L273 TraceCheckUtils]: 58: Hoare triple {9652#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9652#true} is VALID [2018-11-23 12:16:33,649 INFO L273 TraceCheckUtils]: 59: Hoare triple {9652#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9652#true} is VALID [2018-11-23 12:16:33,650 INFO L273 TraceCheckUtils]: 60: Hoare triple {9652#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9652#true} is VALID [2018-11-23 12:16:33,650 INFO L273 TraceCheckUtils]: 61: Hoare triple {9652#true} assume !(~i~0 < 20); {9652#true} is VALID [2018-11-23 12:16:33,650 INFO L273 TraceCheckUtils]: 62: Hoare triple {9652#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {9652#true} is VALID [2018-11-23 12:16:33,650 INFO L273 TraceCheckUtils]: 63: Hoare triple {9652#true} assume true; {9652#true} is VALID [2018-11-23 12:16:33,650 INFO L268 TraceCheckUtils]: 64: Hoare quadruple {9652#true} {9653#false} #77#return; {9653#false} is VALID [2018-11-23 12:16:33,651 INFO L273 TraceCheckUtils]: 65: Hoare triple {9653#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {9653#false} is VALID [2018-11-23 12:16:33,651 INFO L256 TraceCheckUtils]: 66: Hoare triple {9653#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {9652#true} is VALID [2018-11-23 12:16:33,651 INFO L273 TraceCheckUtils]: 67: Hoare triple {9652#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {9652#true} is VALID [2018-11-23 12:16:33,651 INFO L273 TraceCheckUtils]: 68: Hoare triple {9652#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9652#true} is VALID [2018-11-23 12:16:33,651 INFO L273 TraceCheckUtils]: 69: Hoare triple {9652#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9652#true} is VALID [2018-11-23 12:16:33,651 INFO L273 TraceCheckUtils]: 70: Hoare triple {9652#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9652#true} is VALID [2018-11-23 12:16:33,651 INFO L273 TraceCheckUtils]: 71: Hoare triple {9652#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9652#true} is VALID [2018-11-23 12:16:33,652 INFO L273 TraceCheckUtils]: 72: Hoare triple {9652#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9652#true} is VALID [2018-11-23 12:16:33,652 INFO L273 TraceCheckUtils]: 73: Hoare triple {9652#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9652#true} is VALID [2018-11-23 12:16:33,652 INFO L273 TraceCheckUtils]: 74: Hoare triple {9652#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9652#true} is VALID [2018-11-23 12:16:33,652 INFO L273 TraceCheckUtils]: 75: Hoare triple {9652#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9652#true} is VALID [2018-11-23 12:16:33,652 INFO L273 TraceCheckUtils]: 76: Hoare triple {9652#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9652#true} is VALID [2018-11-23 12:16:33,652 INFO L273 TraceCheckUtils]: 77: Hoare triple {9652#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9652#true} is VALID [2018-11-23 12:16:33,652 INFO L273 TraceCheckUtils]: 78: Hoare triple {9652#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9652#true} is VALID [2018-11-23 12:16:33,652 INFO L273 TraceCheckUtils]: 79: Hoare triple {9652#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9652#true} is VALID [2018-11-23 12:16:33,652 INFO L273 TraceCheckUtils]: 80: Hoare triple {9652#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9652#true} is VALID [2018-11-23 12:16:33,653 INFO L273 TraceCheckUtils]: 81: Hoare triple {9652#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9652#true} is VALID [2018-11-23 12:16:33,653 INFO L273 TraceCheckUtils]: 82: Hoare triple {9652#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9652#true} is VALID [2018-11-23 12:16:33,653 INFO L273 TraceCheckUtils]: 83: Hoare triple {9652#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9652#true} is VALID [2018-11-23 12:16:33,653 INFO L273 TraceCheckUtils]: 84: Hoare triple {9652#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9652#true} is VALID [2018-11-23 12:16:33,653 INFO L273 TraceCheckUtils]: 85: Hoare triple {9652#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9652#true} is VALID [2018-11-23 12:16:33,653 INFO L273 TraceCheckUtils]: 86: Hoare triple {9652#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9652#true} is VALID [2018-11-23 12:16:33,653 INFO L273 TraceCheckUtils]: 87: Hoare triple {9652#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9652#true} is VALID [2018-11-23 12:16:33,653 INFO L273 TraceCheckUtils]: 88: Hoare triple {9652#true} assume !(~i~0 < 20); {9652#true} is VALID [2018-11-23 12:16:33,653 INFO L273 TraceCheckUtils]: 89: Hoare triple {9652#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {9652#true} is VALID [2018-11-23 12:16:33,654 INFO L273 TraceCheckUtils]: 90: Hoare triple {9652#true} assume true; {9652#true} is VALID [2018-11-23 12:16:33,654 INFO L268 TraceCheckUtils]: 91: Hoare quadruple {9652#true} {9653#false} #79#return; {9653#false} is VALID [2018-11-23 12:16:33,654 INFO L273 TraceCheckUtils]: 92: Hoare triple {9653#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {9653#false} is VALID [2018-11-23 12:16:33,654 INFO L273 TraceCheckUtils]: 93: Hoare triple {9653#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {9653#false} is VALID [2018-11-23 12:16:33,654 INFO L273 TraceCheckUtils]: 94: Hoare triple {9653#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {9653#false} is VALID [2018-11-23 12:16:33,654 INFO L273 TraceCheckUtils]: 95: Hoare triple {9653#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {9653#false} is VALID [2018-11-23 12:16:33,654 INFO L273 TraceCheckUtils]: 96: Hoare triple {9653#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {9653#false} is VALID [2018-11-23 12:16:33,654 INFO L273 TraceCheckUtils]: 97: Hoare triple {9653#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {9653#false} is VALID [2018-11-23 12:16:33,654 INFO L273 TraceCheckUtils]: 98: Hoare triple {9653#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {9653#false} is VALID [2018-11-23 12:16:33,655 INFO L273 TraceCheckUtils]: 99: Hoare triple {9653#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {9653#false} is VALID [2018-11-23 12:16:33,655 INFO L273 TraceCheckUtils]: 100: Hoare triple {9653#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {9653#false} is VALID [2018-11-23 12:16:33,655 INFO L273 TraceCheckUtils]: 101: Hoare triple {9653#false} assume !(~i~2 < 19); {9653#false} is VALID [2018-11-23 12:16:33,655 INFO L273 TraceCheckUtils]: 102: Hoare triple {9653#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {9653#false} is VALID [2018-11-23 12:16:33,655 INFO L256 TraceCheckUtils]: 103: Hoare triple {9653#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {9652#true} is VALID [2018-11-23 12:16:33,655 INFO L273 TraceCheckUtils]: 104: Hoare triple {9652#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {9652#true} is VALID [2018-11-23 12:16:33,655 INFO L273 TraceCheckUtils]: 105: Hoare triple {9652#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9652#true} is VALID [2018-11-23 12:16:33,655 INFO L273 TraceCheckUtils]: 106: Hoare triple {9652#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9652#true} is VALID [2018-11-23 12:16:33,656 INFO L273 TraceCheckUtils]: 107: Hoare triple {9652#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9652#true} is VALID [2018-11-23 12:16:33,656 INFO L273 TraceCheckUtils]: 108: Hoare triple {9652#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9652#true} is VALID [2018-11-23 12:16:33,656 INFO L273 TraceCheckUtils]: 109: Hoare triple {9652#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9652#true} is VALID [2018-11-23 12:16:33,656 INFO L273 TraceCheckUtils]: 110: Hoare triple {9652#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9652#true} is VALID [2018-11-23 12:16:33,656 INFO L273 TraceCheckUtils]: 111: Hoare triple {9652#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9652#true} is VALID [2018-11-23 12:16:33,656 INFO L273 TraceCheckUtils]: 112: Hoare triple {9652#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9652#true} is VALID [2018-11-23 12:16:33,656 INFO L273 TraceCheckUtils]: 113: Hoare triple {9652#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9652#true} is VALID [2018-11-23 12:16:33,656 INFO L273 TraceCheckUtils]: 114: Hoare triple {9652#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9652#true} is VALID [2018-11-23 12:16:33,657 INFO L273 TraceCheckUtils]: 115: Hoare triple {9652#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9652#true} is VALID [2018-11-23 12:16:33,657 INFO L273 TraceCheckUtils]: 116: Hoare triple {9652#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9652#true} is VALID [2018-11-23 12:16:33,657 INFO L273 TraceCheckUtils]: 117: Hoare triple {9652#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9652#true} is VALID [2018-11-23 12:16:33,657 INFO L273 TraceCheckUtils]: 118: Hoare triple {9652#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9652#true} is VALID [2018-11-23 12:16:33,657 INFO L273 TraceCheckUtils]: 119: Hoare triple {9652#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9652#true} is VALID [2018-11-23 12:16:33,657 INFO L273 TraceCheckUtils]: 120: Hoare triple {9652#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9652#true} is VALID [2018-11-23 12:16:33,657 INFO L273 TraceCheckUtils]: 121: Hoare triple {9652#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9652#true} is VALID [2018-11-23 12:16:33,658 INFO L273 TraceCheckUtils]: 122: Hoare triple {9652#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9652#true} is VALID [2018-11-23 12:16:33,658 INFO L273 TraceCheckUtils]: 123: Hoare triple {9652#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9652#true} is VALID [2018-11-23 12:16:33,658 INFO L273 TraceCheckUtils]: 124: Hoare triple {9652#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9652#true} is VALID [2018-11-23 12:16:33,658 INFO L273 TraceCheckUtils]: 125: Hoare triple {9652#true} assume !(~i~0 < 20); {9652#true} is VALID [2018-11-23 12:16:33,658 INFO L273 TraceCheckUtils]: 126: Hoare triple {9652#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {9652#true} is VALID [2018-11-23 12:16:33,658 INFO L273 TraceCheckUtils]: 127: Hoare triple {9652#true} assume true; {9652#true} is VALID [2018-11-23 12:16:33,658 INFO L268 TraceCheckUtils]: 128: Hoare quadruple {9652#true} {9653#false} #81#return; {9653#false} is VALID [2018-11-23 12:16:33,659 INFO L273 TraceCheckUtils]: 129: Hoare triple {9653#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {9653#false} is VALID [2018-11-23 12:16:33,659 INFO L273 TraceCheckUtils]: 130: Hoare triple {9653#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {9653#false} is VALID [2018-11-23 12:16:33,659 INFO L273 TraceCheckUtils]: 131: Hoare triple {9653#false} assume !false; {9653#false} is VALID [2018-11-23 12:16:33,682 INFO L134 CoverageAnalysis]: Checked inductivity of 752 backedges. 0 proven. 256 refuted. 0 times theorem prover too weak. 496 trivial. 0 not checked. [2018-11-23 12:16:33,683 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:16:33,683 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 18 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 18 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:16:33,691 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 12:16:33,756 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 12:16:33,757 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:16:33,781 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:33,783 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:34,011 INFO L256 TraceCheckUtils]: 0: Hoare triple {9652#true} call ULTIMATE.init(); {9652#true} is VALID [2018-11-23 12:16:34,011 INFO L273 TraceCheckUtils]: 1: Hoare triple {9652#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {9652#true} is VALID [2018-11-23 12:16:34,011 INFO L273 TraceCheckUtils]: 2: Hoare triple {9652#true} assume true; {9652#true} is VALID [2018-11-23 12:16:34,011 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {9652#true} {9652#true} #73#return; {9652#true} is VALID [2018-11-23 12:16:34,011 INFO L256 TraceCheckUtils]: 4: Hoare triple {9652#true} call #t~ret14 := main(); {9652#true} is VALID [2018-11-23 12:16:34,012 INFO L273 TraceCheckUtils]: 5: Hoare triple {9652#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {9689#(<= main_~i~1 0)} is VALID [2018-11-23 12:16:34,012 INFO L273 TraceCheckUtils]: 6: Hoare triple {9689#(<= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9689#(<= main_~i~1 0)} is VALID [2018-11-23 12:16:34,013 INFO L273 TraceCheckUtils]: 7: Hoare triple {9689#(<= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9655#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:34,013 INFO L273 TraceCheckUtils]: 8: Hoare triple {9655#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9655#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:34,013 INFO L273 TraceCheckUtils]: 9: Hoare triple {9655#(<= main_~i~1 1)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9656#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:34,014 INFO L273 TraceCheckUtils]: 10: Hoare triple {9656#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9656#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:34,014 INFO L273 TraceCheckUtils]: 11: Hoare triple {9656#(<= main_~i~1 2)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9657#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:34,014 INFO L273 TraceCheckUtils]: 12: Hoare triple {9657#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9657#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:34,015 INFO L273 TraceCheckUtils]: 13: Hoare triple {9657#(<= main_~i~1 3)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9658#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:34,015 INFO L273 TraceCheckUtils]: 14: Hoare triple {9658#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9658#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:34,016 INFO L273 TraceCheckUtils]: 15: Hoare triple {9658#(<= main_~i~1 4)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9659#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:34,016 INFO L273 TraceCheckUtils]: 16: Hoare triple {9659#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9659#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:34,017 INFO L273 TraceCheckUtils]: 17: Hoare triple {9659#(<= main_~i~1 5)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9660#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:34,018 INFO L273 TraceCheckUtils]: 18: Hoare triple {9660#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9660#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:34,018 INFO L273 TraceCheckUtils]: 19: Hoare triple {9660#(<= main_~i~1 6)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9661#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:34,019 INFO L273 TraceCheckUtils]: 20: Hoare triple {9661#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9661#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:34,020 INFO L273 TraceCheckUtils]: 21: Hoare triple {9661#(<= main_~i~1 7)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9662#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:34,020 INFO L273 TraceCheckUtils]: 22: Hoare triple {9662#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9662#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:34,021 INFO L273 TraceCheckUtils]: 23: Hoare triple {9662#(<= main_~i~1 8)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9663#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:34,021 INFO L273 TraceCheckUtils]: 24: Hoare triple {9663#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9663#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:34,022 INFO L273 TraceCheckUtils]: 25: Hoare triple {9663#(<= main_~i~1 9)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9664#(<= main_~i~1 10)} is VALID [2018-11-23 12:16:34,023 INFO L273 TraceCheckUtils]: 26: Hoare triple {9664#(<= main_~i~1 10)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9664#(<= main_~i~1 10)} is VALID [2018-11-23 12:16:34,023 INFO L273 TraceCheckUtils]: 27: Hoare triple {9664#(<= main_~i~1 10)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9665#(<= main_~i~1 11)} is VALID [2018-11-23 12:16:34,024 INFO L273 TraceCheckUtils]: 28: Hoare triple {9665#(<= main_~i~1 11)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9665#(<= main_~i~1 11)} is VALID [2018-11-23 12:16:34,025 INFO L273 TraceCheckUtils]: 29: Hoare triple {9665#(<= main_~i~1 11)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9666#(<= main_~i~1 12)} is VALID [2018-11-23 12:16:34,025 INFO L273 TraceCheckUtils]: 30: Hoare triple {9666#(<= main_~i~1 12)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9666#(<= main_~i~1 12)} is VALID [2018-11-23 12:16:34,026 INFO L273 TraceCheckUtils]: 31: Hoare triple {9666#(<= main_~i~1 12)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9667#(<= main_~i~1 13)} is VALID [2018-11-23 12:16:34,027 INFO L273 TraceCheckUtils]: 32: Hoare triple {9667#(<= main_~i~1 13)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9667#(<= main_~i~1 13)} is VALID [2018-11-23 12:16:34,027 INFO L273 TraceCheckUtils]: 33: Hoare triple {9667#(<= main_~i~1 13)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9668#(<= main_~i~1 14)} is VALID [2018-11-23 12:16:34,028 INFO L273 TraceCheckUtils]: 34: Hoare triple {9668#(<= main_~i~1 14)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9668#(<= main_~i~1 14)} is VALID [2018-11-23 12:16:34,029 INFO L273 TraceCheckUtils]: 35: Hoare triple {9668#(<= main_~i~1 14)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9669#(<= main_~i~1 15)} is VALID [2018-11-23 12:16:34,029 INFO L273 TraceCheckUtils]: 36: Hoare triple {9669#(<= main_~i~1 15)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {9669#(<= main_~i~1 15)} is VALID [2018-11-23 12:16:34,030 INFO L273 TraceCheckUtils]: 37: Hoare triple {9669#(<= main_~i~1 15)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {9670#(<= main_~i~1 16)} is VALID [2018-11-23 12:16:34,031 INFO L273 TraceCheckUtils]: 38: Hoare triple {9670#(<= main_~i~1 16)} assume !(~i~1 < 20); {9653#false} is VALID [2018-11-23 12:16:34,031 INFO L256 TraceCheckUtils]: 39: Hoare triple {9653#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {9653#false} is VALID [2018-11-23 12:16:34,031 INFO L273 TraceCheckUtils]: 40: Hoare triple {9653#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {9653#false} is VALID [2018-11-23 12:16:34,031 INFO L273 TraceCheckUtils]: 41: Hoare triple {9653#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9653#false} is VALID [2018-11-23 12:16:34,032 INFO L273 TraceCheckUtils]: 42: Hoare triple {9653#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9653#false} is VALID [2018-11-23 12:16:34,032 INFO L273 TraceCheckUtils]: 43: Hoare triple {9653#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9653#false} is VALID [2018-11-23 12:16:34,032 INFO L273 TraceCheckUtils]: 44: Hoare triple {9653#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9653#false} is VALID [2018-11-23 12:16:34,032 INFO L273 TraceCheckUtils]: 45: Hoare triple {9653#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9653#false} is VALID [2018-11-23 12:16:34,032 INFO L273 TraceCheckUtils]: 46: Hoare triple {9653#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9653#false} is VALID [2018-11-23 12:16:34,033 INFO L273 TraceCheckUtils]: 47: Hoare triple {9653#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9653#false} is VALID [2018-11-23 12:16:34,033 INFO L273 TraceCheckUtils]: 48: Hoare triple {9653#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9653#false} is VALID [2018-11-23 12:16:34,033 INFO L273 TraceCheckUtils]: 49: Hoare triple {9653#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9653#false} is VALID [2018-11-23 12:16:34,033 INFO L273 TraceCheckUtils]: 50: Hoare triple {9653#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9653#false} is VALID [2018-11-23 12:16:34,033 INFO L273 TraceCheckUtils]: 51: Hoare triple {9653#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9653#false} is VALID [2018-11-23 12:16:34,033 INFO L273 TraceCheckUtils]: 52: Hoare triple {9653#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9653#false} is VALID [2018-11-23 12:16:34,034 INFO L273 TraceCheckUtils]: 53: Hoare triple {9653#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9653#false} is VALID [2018-11-23 12:16:34,034 INFO L273 TraceCheckUtils]: 54: Hoare triple {9653#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9653#false} is VALID [2018-11-23 12:16:34,034 INFO L273 TraceCheckUtils]: 55: Hoare triple {9653#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9653#false} is VALID [2018-11-23 12:16:34,034 INFO L273 TraceCheckUtils]: 56: Hoare triple {9653#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9653#false} is VALID [2018-11-23 12:16:34,034 INFO L273 TraceCheckUtils]: 57: Hoare triple {9653#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9653#false} is VALID [2018-11-23 12:16:34,035 INFO L273 TraceCheckUtils]: 58: Hoare triple {9653#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9653#false} is VALID [2018-11-23 12:16:34,035 INFO L273 TraceCheckUtils]: 59: Hoare triple {9653#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9653#false} is VALID [2018-11-23 12:16:34,035 INFO L273 TraceCheckUtils]: 60: Hoare triple {9653#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9653#false} is VALID [2018-11-23 12:16:34,035 INFO L273 TraceCheckUtils]: 61: Hoare triple {9653#false} assume !(~i~0 < 20); {9653#false} is VALID [2018-11-23 12:16:34,035 INFO L273 TraceCheckUtils]: 62: Hoare triple {9653#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {9653#false} is VALID [2018-11-23 12:16:34,036 INFO L273 TraceCheckUtils]: 63: Hoare triple {9653#false} assume true; {9653#false} is VALID [2018-11-23 12:16:34,036 INFO L268 TraceCheckUtils]: 64: Hoare quadruple {9653#false} {9653#false} #77#return; {9653#false} is VALID [2018-11-23 12:16:34,036 INFO L273 TraceCheckUtils]: 65: Hoare triple {9653#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {9653#false} is VALID [2018-11-23 12:16:34,036 INFO L256 TraceCheckUtils]: 66: Hoare triple {9653#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {9653#false} is VALID [2018-11-23 12:16:34,036 INFO L273 TraceCheckUtils]: 67: Hoare triple {9653#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {9653#false} is VALID [2018-11-23 12:16:34,036 INFO L273 TraceCheckUtils]: 68: Hoare triple {9653#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9653#false} is VALID [2018-11-23 12:16:34,036 INFO L273 TraceCheckUtils]: 69: Hoare triple {9653#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9653#false} is VALID [2018-11-23 12:16:34,036 INFO L273 TraceCheckUtils]: 70: Hoare triple {9653#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9653#false} is VALID [2018-11-23 12:16:34,037 INFO L273 TraceCheckUtils]: 71: Hoare triple {9653#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9653#false} is VALID [2018-11-23 12:16:34,037 INFO L273 TraceCheckUtils]: 72: Hoare triple {9653#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9653#false} is VALID [2018-11-23 12:16:34,037 INFO L273 TraceCheckUtils]: 73: Hoare triple {9653#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9653#false} is VALID [2018-11-23 12:16:34,037 INFO L273 TraceCheckUtils]: 74: Hoare triple {9653#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9653#false} is VALID [2018-11-23 12:16:34,037 INFO L273 TraceCheckUtils]: 75: Hoare triple {9653#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9653#false} is VALID [2018-11-23 12:16:34,037 INFO L273 TraceCheckUtils]: 76: Hoare triple {9653#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9653#false} is VALID [2018-11-23 12:16:34,037 INFO L273 TraceCheckUtils]: 77: Hoare triple {9653#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9653#false} is VALID [2018-11-23 12:16:34,037 INFO L273 TraceCheckUtils]: 78: Hoare triple {9653#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9653#false} is VALID [2018-11-23 12:16:34,037 INFO L273 TraceCheckUtils]: 79: Hoare triple {9653#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9653#false} is VALID [2018-11-23 12:16:34,038 INFO L273 TraceCheckUtils]: 80: Hoare triple {9653#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9653#false} is VALID [2018-11-23 12:16:34,038 INFO L273 TraceCheckUtils]: 81: Hoare triple {9653#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9653#false} is VALID [2018-11-23 12:16:34,038 INFO L273 TraceCheckUtils]: 82: Hoare triple {9653#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9653#false} is VALID [2018-11-23 12:16:34,038 INFO L273 TraceCheckUtils]: 83: Hoare triple {9653#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9653#false} is VALID [2018-11-23 12:16:34,038 INFO L273 TraceCheckUtils]: 84: Hoare triple {9653#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9653#false} is VALID [2018-11-23 12:16:34,038 INFO L273 TraceCheckUtils]: 85: Hoare triple {9653#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9653#false} is VALID [2018-11-23 12:16:34,038 INFO L273 TraceCheckUtils]: 86: Hoare triple {9653#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9653#false} is VALID [2018-11-23 12:16:34,038 INFO L273 TraceCheckUtils]: 87: Hoare triple {9653#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9653#false} is VALID [2018-11-23 12:16:34,038 INFO L273 TraceCheckUtils]: 88: Hoare triple {9653#false} assume !(~i~0 < 20); {9653#false} is VALID [2018-11-23 12:16:34,039 INFO L273 TraceCheckUtils]: 89: Hoare triple {9653#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {9653#false} is VALID [2018-11-23 12:16:34,039 INFO L273 TraceCheckUtils]: 90: Hoare triple {9653#false} assume true; {9653#false} is VALID [2018-11-23 12:16:34,039 INFO L268 TraceCheckUtils]: 91: Hoare quadruple {9653#false} {9653#false} #79#return; {9653#false} is VALID [2018-11-23 12:16:34,039 INFO L273 TraceCheckUtils]: 92: Hoare triple {9653#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {9653#false} is VALID [2018-11-23 12:16:34,039 INFO L273 TraceCheckUtils]: 93: Hoare triple {9653#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {9653#false} is VALID [2018-11-23 12:16:34,039 INFO L273 TraceCheckUtils]: 94: Hoare triple {9653#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {9653#false} is VALID [2018-11-23 12:16:34,039 INFO L273 TraceCheckUtils]: 95: Hoare triple {9653#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {9653#false} is VALID [2018-11-23 12:16:34,039 INFO L273 TraceCheckUtils]: 96: Hoare triple {9653#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {9653#false} is VALID [2018-11-23 12:16:34,040 INFO L273 TraceCheckUtils]: 97: Hoare triple {9653#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {9653#false} is VALID [2018-11-23 12:16:34,040 INFO L273 TraceCheckUtils]: 98: Hoare triple {9653#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {9653#false} is VALID [2018-11-23 12:16:34,040 INFO L273 TraceCheckUtils]: 99: Hoare triple {9653#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {9653#false} is VALID [2018-11-23 12:16:34,040 INFO L273 TraceCheckUtils]: 100: Hoare triple {9653#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {9653#false} is VALID [2018-11-23 12:16:34,040 INFO L273 TraceCheckUtils]: 101: Hoare triple {9653#false} assume !(~i~2 < 19); {9653#false} is VALID [2018-11-23 12:16:34,040 INFO L273 TraceCheckUtils]: 102: Hoare triple {9653#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {9653#false} is VALID [2018-11-23 12:16:34,040 INFO L256 TraceCheckUtils]: 103: Hoare triple {9653#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {9653#false} is VALID [2018-11-23 12:16:34,040 INFO L273 TraceCheckUtils]: 104: Hoare triple {9653#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {9653#false} is VALID [2018-11-23 12:16:34,040 INFO L273 TraceCheckUtils]: 105: Hoare triple {9653#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9653#false} is VALID [2018-11-23 12:16:34,041 INFO L273 TraceCheckUtils]: 106: Hoare triple {9653#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9653#false} is VALID [2018-11-23 12:16:34,041 INFO L273 TraceCheckUtils]: 107: Hoare triple {9653#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9653#false} is VALID [2018-11-23 12:16:34,041 INFO L273 TraceCheckUtils]: 108: Hoare triple {9653#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9653#false} is VALID [2018-11-23 12:16:34,041 INFO L273 TraceCheckUtils]: 109: Hoare triple {9653#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9653#false} is VALID [2018-11-23 12:16:34,041 INFO L273 TraceCheckUtils]: 110: Hoare triple {9653#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9653#false} is VALID [2018-11-23 12:16:34,041 INFO L273 TraceCheckUtils]: 111: Hoare triple {9653#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9653#false} is VALID [2018-11-23 12:16:34,041 INFO L273 TraceCheckUtils]: 112: Hoare triple {9653#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9653#false} is VALID [2018-11-23 12:16:34,041 INFO L273 TraceCheckUtils]: 113: Hoare triple {9653#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9653#false} is VALID [2018-11-23 12:16:34,041 INFO L273 TraceCheckUtils]: 114: Hoare triple {9653#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9653#false} is VALID [2018-11-23 12:16:34,042 INFO L273 TraceCheckUtils]: 115: Hoare triple {9653#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9653#false} is VALID [2018-11-23 12:16:34,042 INFO L273 TraceCheckUtils]: 116: Hoare triple {9653#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9653#false} is VALID [2018-11-23 12:16:34,042 INFO L273 TraceCheckUtils]: 117: Hoare triple {9653#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9653#false} is VALID [2018-11-23 12:16:34,042 INFO L273 TraceCheckUtils]: 118: Hoare triple {9653#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9653#false} is VALID [2018-11-23 12:16:34,042 INFO L273 TraceCheckUtils]: 119: Hoare triple {9653#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9653#false} is VALID [2018-11-23 12:16:34,042 INFO L273 TraceCheckUtils]: 120: Hoare triple {9653#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9653#false} is VALID [2018-11-23 12:16:34,042 INFO L273 TraceCheckUtils]: 121: Hoare triple {9653#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {9653#false} is VALID [2018-11-23 12:16:34,042 INFO L273 TraceCheckUtils]: 122: Hoare triple {9653#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {9653#false} is VALID [2018-11-23 12:16:34,042 INFO L273 TraceCheckUtils]: 123: Hoare triple {9653#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {9653#false} is VALID [2018-11-23 12:16:34,043 INFO L273 TraceCheckUtils]: 124: Hoare triple {9653#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {9653#false} is VALID [2018-11-23 12:16:34,043 INFO L273 TraceCheckUtils]: 125: Hoare triple {9653#false} assume !(~i~0 < 20); {9653#false} is VALID [2018-11-23 12:16:34,043 INFO L273 TraceCheckUtils]: 126: Hoare triple {9653#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {9653#false} is VALID [2018-11-23 12:16:34,043 INFO L273 TraceCheckUtils]: 127: Hoare triple {9653#false} assume true; {9653#false} is VALID [2018-11-23 12:16:34,043 INFO L268 TraceCheckUtils]: 128: Hoare quadruple {9653#false} {9653#false} #81#return; {9653#false} is VALID [2018-11-23 12:16:34,043 INFO L273 TraceCheckUtils]: 129: Hoare triple {9653#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {9653#false} is VALID [2018-11-23 12:16:34,043 INFO L273 TraceCheckUtils]: 130: Hoare triple {9653#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {9653#false} is VALID [2018-11-23 12:16:34,043 INFO L273 TraceCheckUtils]: 131: Hoare triple {9653#false} assume !false; {9653#false} is VALID [2018-11-23 12:16:34,051 INFO L134 CoverageAnalysis]: Checked inductivity of 752 backedges. 0 proven. 256 refuted. 0 times theorem prover too weak. 496 trivial. 0 not checked. [2018-11-23 12:16:34,070 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:16:34,071 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 19] total 20 [2018-11-23 12:16:34,071 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 132 [2018-11-23 12:16:34,072 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:34,072 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states. [2018-11-23 12:16:34,147 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:16:34,148 INFO L459 AbstractCegarLoop]: Interpolant automaton has 20 states [2018-11-23 12:16:34,148 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2018-11-23 12:16:34,148 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=190, Invalid=190, Unknown=0, NotChecked=0, Total=380 [2018-11-23 12:16:34,149 INFO L87 Difference]: Start difference. First operand 83 states and 92 transitions. Second operand 20 states. [2018-11-23 12:16:34,571 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:34,571 INFO L93 Difference]: Finished difference Result 130 states and 148 transitions. [2018-11-23 12:16:34,571 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2018-11-23 12:16:34,572 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 132 [2018-11-23 12:16:34,572 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:34,572 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2018-11-23 12:16:34,573 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 92 transitions. [2018-11-23 12:16:34,573 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2018-11-23 12:16:34,574 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 92 transitions. [2018-11-23 12:16:34,574 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states and 92 transitions. [2018-11-23 12:16:34,663 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:34,665 INFO L225 Difference]: With dead ends: 130 [2018-11-23 12:16:34,665 INFO L226 Difference]: Without dead ends: 86 [2018-11-23 12:16:34,666 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 150 GetRequests, 132 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 30 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=190, Invalid=190, Unknown=0, NotChecked=0, Total=380 [2018-11-23 12:16:34,666 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 86 states. [2018-11-23 12:16:34,693 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 86 to 85. [2018-11-23 12:16:34,694 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:34,694 INFO L82 GeneralOperation]: Start isEquivalent. First operand 86 states. Second operand 85 states. [2018-11-23 12:16:34,694 INFO L74 IsIncluded]: Start isIncluded. First operand 86 states. Second operand 85 states. [2018-11-23 12:16:34,694 INFO L87 Difference]: Start difference. First operand 86 states. Second operand 85 states. [2018-11-23 12:16:34,696 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:34,697 INFO L93 Difference]: Finished difference Result 86 states and 95 transitions. [2018-11-23 12:16:34,697 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 95 transitions. [2018-11-23 12:16:34,697 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:34,697 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:34,697 INFO L74 IsIncluded]: Start isIncluded. First operand 85 states. Second operand 86 states. [2018-11-23 12:16:34,698 INFO L87 Difference]: Start difference. First operand 85 states. Second operand 86 states. [2018-11-23 12:16:34,699 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:34,699 INFO L93 Difference]: Finished difference Result 86 states and 95 transitions. [2018-11-23 12:16:34,700 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 95 transitions. [2018-11-23 12:16:34,700 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:34,700 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:34,700 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:34,700 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:34,701 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 85 states. [2018-11-23 12:16:34,702 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 85 states to 85 states and 94 transitions. [2018-11-23 12:16:34,702 INFO L78 Accepts]: Start accepts. Automaton has 85 states and 94 transitions. Word has length 132 [2018-11-23 12:16:34,702 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:34,702 INFO L480 AbstractCegarLoop]: Abstraction has 85 states and 94 transitions. [2018-11-23 12:16:34,703 INFO L481 AbstractCegarLoop]: Interpolant automaton has 20 states. [2018-11-23 12:16:34,703 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 94 transitions. [2018-11-23 12:16:34,703 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 135 [2018-11-23 12:16:34,704 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:34,704 INFO L402 BasicCegarLoop]: trace histogram [17, 17, 15, 15, 15, 15, 4, 4, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:34,704 INFO L423 AbstractCegarLoop]: === Iteration 20 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:34,704 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:34,704 INFO L82 PathProgramCache]: Analyzing trace with hash -371467028, now seen corresponding path program 17 times [2018-11-23 12:16:34,705 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:34,705 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:34,705 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:34,705 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:16:34,706 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:34,729 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:35,037 INFO L256 TraceCheckUtils]: 0: Hoare triple {10543#true} call ULTIMATE.init(); {10543#true} is VALID [2018-11-23 12:16:35,037 INFO L273 TraceCheckUtils]: 1: Hoare triple {10543#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {10543#true} is VALID [2018-11-23 12:16:35,038 INFO L273 TraceCheckUtils]: 2: Hoare triple {10543#true} assume true; {10543#true} is VALID [2018-11-23 12:16:35,038 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {10543#true} {10543#true} #73#return; {10543#true} is VALID [2018-11-23 12:16:35,038 INFO L256 TraceCheckUtils]: 4: Hoare triple {10543#true} call #t~ret14 := main(); {10543#true} is VALID [2018-11-23 12:16:35,038 INFO L273 TraceCheckUtils]: 5: Hoare triple {10543#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {10545#(= main_~i~1 0)} is VALID [2018-11-23 12:16:35,039 INFO L273 TraceCheckUtils]: 6: Hoare triple {10545#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10545#(= main_~i~1 0)} is VALID [2018-11-23 12:16:35,040 INFO L273 TraceCheckUtils]: 7: Hoare triple {10545#(= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10546#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:35,040 INFO L273 TraceCheckUtils]: 8: Hoare triple {10546#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10546#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:35,040 INFO L273 TraceCheckUtils]: 9: Hoare triple {10546#(<= main_~i~1 1)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10547#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:35,041 INFO L273 TraceCheckUtils]: 10: Hoare triple {10547#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10547#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:35,041 INFO L273 TraceCheckUtils]: 11: Hoare triple {10547#(<= main_~i~1 2)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10548#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:35,041 INFO L273 TraceCheckUtils]: 12: Hoare triple {10548#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10548#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:35,042 INFO L273 TraceCheckUtils]: 13: Hoare triple {10548#(<= main_~i~1 3)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10549#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:35,043 INFO L273 TraceCheckUtils]: 14: Hoare triple {10549#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10549#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:35,043 INFO L273 TraceCheckUtils]: 15: Hoare triple {10549#(<= main_~i~1 4)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10550#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:35,044 INFO L273 TraceCheckUtils]: 16: Hoare triple {10550#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10550#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:35,045 INFO L273 TraceCheckUtils]: 17: Hoare triple {10550#(<= main_~i~1 5)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10551#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:35,045 INFO L273 TraceCheckUtils]: 18: Hoare triple {10551#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10551#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:35,046 INFO L273 TraceCheckUtils]: 19: Hoare triple {10551#(<= main_~i~1 6)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10552#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:35,047 INFO L273 TraceCheckUtils]: 20: Hoare triple {10552#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10552#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:35,047 INFO L273 TraceCheckUtils]: 21: Hoare triple {10552#(<= main_~i~1 7)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10553#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:35,048 INFO L273 TraceCheckUtils]: 22: Hoare triple {10553#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10553#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:35,049 INFO L273 TraceCheckUtils]: 23: Hoare triple {10553#(<= main_~i~1 8)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10554#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:35,049 INFO L273 TraceCheckUtils]: 24: Hoare triple {10554#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10554#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:35,050 INFO L273 TraceCheckUtils]: 25: Hoare triple {10554#(<= main_~i~1 9)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10555#(<= main_~i~1 10)} is VALID [2018-11-23 12:16:35,050 INFO L273 TraceCheckUtils]: 26: Hoare triple {10555#(<= main_~i~1 10)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10555#(<= main_~i~1 10)} is VALID [2018-11-23 12:16:35,051 INFO L273 TraceCheckUtils]: 27: Hoare triple {10555#(<= main_~i~1 10)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10556#(<= main_~i~1 11)} is VALID [2018-11-23 12:16:35,052 INFO L273 TraceCheckUtils]: 28: Hoare triple {10556#(<= main_~i~1 11)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10556#(<= main_~i~1 11)} is VALID [2018-11-23 12:16:35,052 INFO L273 TraceCheckUtils]: 29: Hoare triple {10556#(<= main_~i~1 11)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10557#(<= main_~i~1 12)} is VALID [2018-11-23 12:16:35,053 INFO L273 TraceCheckUtils]: 30: Hoare triple {10557#(<= main_~i~1 12)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10557#(<= main_~i~1 12)} is VALID [2018-11-23 12:16:35,054 INFO L273 TraceCheckUtils]: 31: Hoare triple {10557#(<= main_~i~1 12)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10558#(<= main_~i~1 13)} is VALID [2018-11-23 12:16:35,054 INFO L273 TraceCheckUtils]: 32: Hoare triple {10558#(<= main_~i~1 13)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10558#(<= main_~i~1 13)} is VALID [2018-11-23 12:16:35,055 INFO L273 TraceCheckUtils]: 33: Hoare triple {10558#(<= main_~i~1 13)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10559#(<= main_~i~1 14)} is VALID [2018-11-23 12:16:35,055 INFO L273 TraceCheckUtils]: 34: Hoare triple {10559#(<= main_~i~1 14)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10559#(<= main_~i~1 14)} is VALID [2018-11-23 12:16:35,056 INFO L273 TraceCheckUtils]: 35: Hoare triple {10559#(<= main_~i~1 14)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10560#(<= main_~i~1 15)} is VALID [2018-11-23 12:16:35,057 INFO L273 TraceCheckUtils]: 36: Hoare triple {10560#(<= main_~i~1 15)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10560#(<= main_~i~1 15)} is VALID [2018-11-23 12:16:35,057 INFO L273 TraceCheckUtils]: 37: Hoare triple {10560#(<= main_~i~1 15)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10561#(<= main_~i~1 16)} is VALID [2018-11-23 12:16:35,058 INFO L273 TraceCheckUtils]: 38: Hoare triple {10561#(<= main_~i~1 16)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10561#(<= main_~i~1 16)} is VALID [2018-11-23 12:16:35,059 INFO L273 TraceCheckUtils]: 39: Hoare triple {10561#(<= main_~i~1 16)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10562#(<= main_~i~1 17)} is VALID [2018-11-23 12:16:35,059 INFO L273 TraceCheckUtils]: 40: Hoare triple {10562#(<= main_~i~1 17)} assume !(~i~1 < 20); {10544#false} is VALID [2018-11-23 12:16:35,060 INFO L256 TraceCheckUtils]: 41: Hoare triple {10544#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {10543#true} is VALID [2018-11-23 12:16:35,060 INFO L273 TraceCheckUtils]: 42: Hoare triple {10543#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {10543#true} is VALID [2018-11-23 12:16:35,060 INFO L273 TraceCheckUtils]: 43: Hoare triple {10543#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10543#true} is VALID [2018-11-23 12:16:35,060 INFO L273 TraceCheckUtils]: 44: Hoare triple {10543#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10543#true} is VALID [2018-11-23 12:16:35,060 INFO L273 TraceCheckUtils]: 45: Hoare triple {10543#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10543#true} is VALID [2018-11-23 12:16:35,061 INFO L273 TraceCheckUtils]: 46: Hoare triple {10543#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10543#true} is VALID [2018-11-23 12:16:35,061 INFO L273 TraceCheckUtils]: 47: Hoare triple {10543#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10543#true} is VALID [2018-11-23 12:16:35,061 INFO L273 TraceCheckUtils]: 48: Hoare triple {10543#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10543#true} is VALID [2018-11-23 12:16:35,061 INFO L273 TraceCheckUtils]: 49: Hoare triple {10543#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10543#true} is VALID [2018-11-23 12:16:35,061 INFO L273 TraceCheckUtils]: 50: Hoare triple {10543#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10543#true} is VALID [2018-11-23 12:16:35,062 INFO L273 TraceCheckUtils]: 51: Hoare triple {10543#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10543#true} is VALID [2018-11-23 12:16:35,062 INFO L273 TraceCheckUtils]: 52: Hoare triple {10543#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10543#true} is VALID [2018-11-23 12:16:35,062 INFO L273 TraceCheckUtils]: 53: Hoare triple {10543#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10543#true} is VALID [2018-11-23 12:16:35,062 INFO L273 TraceCheckUtils]: 54: Hoare triple {10543#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10543#true} is VALID [2018-11-23 12:16:35,062 INFO L273 TraceCheckUtils]: 55: Hoare triple {10543#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10543#true} is VALID [2018-11-23 12:16:35,063 INFO L273 TraceCheckUtils]: 56: Hoare triple {10543#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10543#true} is VALID [2018-11-23 12:16:35,063 INFO L273 TraceCheckUtils]: 57: Hoare triple {10543#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10543#true} is VALID [2018-11-23 12:16:35,063 INFO L273 TraceCheckUtils]: 58: Hoare triple {10543#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10543#true} is VALID [2018-11-23 12:16:35,064 INFO L273 TraceCheckUtils]: 59: Hoare triple {10543#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10543#true} is VALID [2018-11-23 12:16:35,064 INFO L273 TraceCheckUtils]: 60: Hoare triple {10543#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10543#true} is VALID [2018-11-23 12:16:35,064 INFO L273 TraceCheckUtils]: 61: Hoare triple {10543#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10543#true} is VALID [2018-11-23 12:16:35,064 INFO L273 TraceCheckUtils]: 62: Hoare triple {10543#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10543#true} is VALID [2018-11-23 12:16:35,064 INFO L273 TraceCheckUtils]: 63: Hoare triple {10543#true} assume !(~i~0 < 20); {10543#true} is VALID [2018-11-23 12:16:35,064 INFO L273 TraceCheckUtils]: 64: Hoare triple {10543#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {10543#true} is VALID [2018-11-23 12:16:35,065 INFO L273 TraceCheckUtils]: 65: Hoare triple {10543#true} assume true; {10543#true} is VALID [2018-11-23 12:16:35,065 INFO L268 TraceCheckUtils]: 66: Hoare quadruple {10543#true} {10544#false} #77#return; {10544#false} is VALID [2018-11-23 12:16:35,065 INFO L273 TraceCheckUtils]: 67: Hoare triple {10544#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {10544#false} is VALID [2018-11-23 12:16:35,065 INFO L256 TraceCheckUtils]: 68: Hoare triple {10544#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {10543#true} is VALID [2018-11-23 12:16:35,065 INFO L273 TraceCheckUtils]: 69: Hoare triple {10543#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {10543#true} is VALID [2018-11-23 12:16:35,065 INFO L273 TraceCheckUtils]: 70: Hoare triple {10543#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10543#true} is VALID [2018-11-23 12:16:35,066 INFO L273 TraceCheckUtils]: 71: Hoare triple {10543#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10543#true} is VALID [2018-11-23 12:16:35,066 INFO L273 TraceCheckUtils]: 72: Hoare triple {10543#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10543#true} is VALID [2018-11-23 12:16:35,066 INFO L273 TraceCheckUtils]: 73: Hoare triple {10543#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10543#true} is VALID [2018-11-23 12:16:35,066 INFO L273 TraceCheckUtils]: 74: Hoare triple {10543#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10543#true} is VALID [2018-11-23 12:16:35,066 INFO L273 TraceCheckUtils]: 75: Hoare triple {10543#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10543#true} is VALID [2018-11-23 12:16:35,067 INFO L273 TraceCheckUtils]: 76: Hoare triple {10543#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10543#true} is VALID [2018-11-23 12:16:35,067 INFO L273 TraceCheckUtils]: 77: Hoare triple {10543#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10543#true} is VALID [2018-11-23 12:16:35,067 INFO L273 TraceCheckUtils]: 78: Hoare triple {10543#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10543#true} is VALID [2018-11-23 12:16:35,067 INFO L273 TraceCheckUtils]: 79: Hoare triple {10543#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10543#true} is VALID [2018-11-23 12:16:35,067 INFO L273 TraceCheckUtils]: 80: Hoare triple {10543#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10543#true} is VALID [2018-11-23 12:16:35,067 INFO L273 TraceCheckUtils]: 81: Hoare triple {10543#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10543#true} is VALID [2018-11-23 12:16:35,068 INFO L273 TraceCheckUtils]: 82: Hoare triple {10543#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10543#true} is VALID [2018-11-23 12:16:35,068 INFO L273 TraceCheckUtils]: 83: Hoare triple {10543#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10543#true} is VALID [2018-11-23 12:16:35,068 INFO L273 TraceCheckUtils]: 84: Hoare triple {10543#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10543#true} is VALID [2018-11-23 12:16:35,068 INFO L273 TraceCheckUtils]: 85: Hoare triple {10543#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10543#true} is VALID [2018-11-23 12:16:35,068 INFO L273 TraceCheckUtils]: 86: Hoare triple {10543#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10543#true} is VALID [2018-11-23 12:16:35,068 INFO L273 TraceCheckUtils]: 87: Hoare triple {10543#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10543#true} is VALID [2018-11-23 12:16:35,069 INFO L273 TraceCheckUtils]: 88: Hoare triple {10543#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10543#true} is VALID [2018-11-23 12:16:35,069 INFO L273 TraceCheckUtils]: 89: Hoare triple {10543#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10543#true} is VALID [2018-11-23 12:16:35,069 INFO L273 TraceCheckUtils]: 90: Hoare triple {10543#true} assume !(~i~0 < 20); {10543#true} is VALID [2018-11-23 12:16:35,069 INFO L273 TraceCheckUtils]: 91: Hoare triple {10543#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {10543#true} is VALID [2018-11-23 12:16:35,069 INFO L273 TraceCheckUtils]: 92: Hoare triple {10543#true} assume true; {10543#true} is VALID [2018-11-23 12:16:35,070 INFO L268 TraceCheckUtils]: 93: Hoare quadruple {10543#true} {10544#false} #79#return; {10544#false} is VALID [2018-11-23 12:16:35,070 INFO L273 TraceCheckUtils]: 94: Hoare triple {10544#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {10544#false} is VALID [2018-11-23 12:16:35,070 INFO L273 TraceCheckUtils]: 95: Hoare triple {10544#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {10544#false} is VALID [2018-11-23 12:16:35,070 INFO L273 TraceCheckUtils]: 96: Hoare triple {10544#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {10544#false} is VALID [2018-11-23 12:16:35,070 INFO L273 TraceCheckUtils]: 97: Hoare triple {10544#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {10544#false} is VALID [2018-11-23 12:16:35,070 INFO L273 TraceCheckUtils]: 98: Hoare triple {10544#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {10544#false} is VALID [2018-11-23 12:16:35,071 INFO L273 TraceCheckUtils]: 99: Hoare triple {10544#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {10544#false} is VALID [2018-11-23 12:16:35,071 INFO L273 TraceCheckUtils]: 100: Hoare triple {10544#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {10544#false} is VALID [2018-11-23 12:16:35,071 INFO L273 TraceCheckUtils]: 101: Hoare triple {10544#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {10544#false} is VALID [2018-11-23 12:16:35,071 INFO L273 TraceCheckUtils]: 102: Hoare triple {10544#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {10544#false} is VALID [2018-11-23 12:16:35,071 INFO L273 TraceCheckUtils]: 103: Hoare triple {10544#false} assume !(~i~2 < 19); {10544#false} is VALID [2018-11-23 12:16:35,071 INFO L273 TraceCheckUtils]: 104: Hoare triple {10544#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {10544#false} is VALID [2018-11-23 12:16:35,072 INFO L256 TraceCheckUtils]: 105: Hoare triple {10544#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {10543#true} is VALID [2018-11-23 12:16:35,072 INFO L273 TraceCheckUtils]: 106: Hoare triple {10543#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {10543#true} is VALID [2018-11-23 12:16:35,072 INFO L273 TraceCheckUtils]: 107: Hoare triple {10543#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10543#true} is VALID [2018-11-23 12:16:35,072 INFO L273 TraceCheckUtils]: 108: Hoare triple {10543#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10543#true} is VALID [2018-11-23 12:16:35,072 INFO L273 TraceCheckUtils]: 109: Hoare triple {10543#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10543#true} is VALID [2018-11-23 12:16:35,072 INFO L273 TraceCheckUtils]: 110: Hoare triple {10543#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10543#true} is VALID [2018-11-23 12:16:35,073 INFO L273 TraceCheckUtils]: 111: Hoare triple {10543#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10543#true} is VALID [2018-11-23 12:16:35,073 INFO L273 TraceCheckUtils]: 112: Hoare triple {10543#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10543#true} is VALID [2018-11-23 12:16:35,073 INFO L273 TraceCheckUtils]: 113: Hoare triple {10543#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10543#true} is VALID [2018-11-23 12:16:35,073 INFO L273 TraceCheckUtils]: 114: Hoare triple {10543#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10543#true} is VALID [2018-11-23 12:16:35,073 INFO L273 TraceCheckUtils]: 115: Hoare triple {10543#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10543#true} is VALID [2018-11-23 12:16:35,073 INFO L273 TraceCheckUtils]: 116: Hoare triple {10543#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10543#true} is VALID [2018-11-23 12:16:35,074 INFO L273 TraceCheckUtils]: 117: Hoare triple {10543#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10543#true} is VALID [2018-11-23 12:16:35,074 INFO L273 TraceCheckUtils]: 118: Hoare triple {10543#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10543#true} is VALID [2018-11-23 12:16:35,074 INFO L273 TraceCheckUtils]: 119: Hoare triple {10543#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10543#true} is VALID [2018-11-23 12:16:35,074 INFO L273 TraceCheckUtils]: 120: Hoare triple {10543#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10543#true} is VALID [2018-11-23 12:16:35,074 INFO L273 TraceCheckUtils]: 121: Hoare triple {10543#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10543#true} is VALID [2018-11-23 12:16:35,074 INFO L273 TraceCheckUtils]: 122: Hoare triple {10543#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10543#true} is VALID [2018-11-23 12:16:35,074 INFO L273 TraceCheckUtils]: 123: Hoare triple {10543#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10543#true} is VALID [2018-11-23 12:16:35,075 INFO L273 TraceCheckUtils]: 124: Hoare triple {10543#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10543#true} is VALID [2018-11-23 12:16:35,075 INFO L273 TraceCheckUtils]: 125: Hoare triple {10543#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10543#true} is VALID [2018-11-23 12:16:35,075 INFO L273 TraceCheckUtils]: 126: Hoare triple {10543#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10543#true} is VALID [2018-11-23 12:16:35,075 INFO L273 TraceCheckUtils]: 127: Hoare triple {10543#true} assume !(~i~0 < 20); {10543#true} is VALID [2018-11-23 12:16:35,075 INFO L273 TraceCheckUtils]: 128: Hoare triple {10543#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {10543#true} is VALID [2018-11-23 12:16:35,075 INFO L273 TraceCheckUtils]: 129: Hoare triple {10543#true} assume true; {10543#true} is VALID [2018-11-23 12:16:35,076 INFO L268 TraceCheckUtils]: 130: Hoare quadruple {10543#true} {10544#false} #81#return; {10544#false} is VALID [2018-11-23 12:16:35,076 INFO L273 TraceCheckUtils]: 131: Hoare triple {10544#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {10544#false} is VALID [2018-11-23 12:16:35,076 INFO L273 TraceCheckUtils]: 132: Hoare triple {10544#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {10544#false} is VALID [2018-11-23 12:16:35,076 INFO L273 TraceCheckUtils]: 133: Hoare triple {10544#false} assume !false; {10544#false} is VALID [2018-11-23 12:16:35,086 INFO L134 CoverageAnalysis]: Checked inductivity of 785 backedges. 0 proven. 289 refuted. 0 times theorem prover too weak. 496 trivial. 0 not checked. [2018-11-23 12:16:35,086 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:16:35,086 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 19 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 19 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:16:35,099 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 12:16:35,527 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 17 check-sat command(s) [2018-11-23 12:16:35,528 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:16:35,557 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:35,559 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:35,818 INFO L256 TraceCheckUtils]: 0: Hoare triple {10543#true} call ULTIMATE.init(); {10543#true} is VALID [2018-11-23 12:16:35,819 INFO L273 TraceCheckUtils]: 1: Hoare triple {10543#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {10543#true} is VALID [2018-11-23 12:16:35,819 INFO L273 TraceCheckUtils]: 2: Hoare triple {10543#true} assume true; {10543#true} is VALID [2018-11-23 12:16:35,819 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {10543#true} {10543#true} #73#return; {10543#true} is VALID [2018-11-23 12:16:35,819 INFO L256 TraceCheckUtils]: 4: Hoare triple {10543#true} call #t~ret14 := main(); {10543#true} is VALID [2018-11-23 12:16:35,819 INFO L273 TraceCheckUtils]: 5: Hoare triple {10543#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {10543#true} is VALID [2018-11-23 12:16:35,820 INFO L273 TraceCheckUtils]: 6: Hoare triple {10543#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10543#true} is VALID [2018-11-23 12:16:35,820 INFO L273 TraceCheckUtils]: 7: Hoare triple {10543#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10543#true} is VALID [2018-11-23 12:16:35,820 INFO L273 TraceCheckUtils]: 8: Hoare triple {10543#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10543#true} is VALID [2018-11-23 12:16:35,820 INFO L273 TraceCheckUtils]: 9: Hoare triple {10543#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10543#true} is VALID [2018-11-23 12:16:35,820 INFO L273 TraceCheckUtils]: 10: Hoare triple {10543#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10543#true} is VALID [2018-11-23 12:16:35,821 INFO L273 TraceCheckUtils]: 11: Hoare triple {10543#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10543#true} is VALID [2018-11-23 12:16:35,821 INFO L273 TraceCheckUtils]: 12: Hoare triple {10543#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10543#true} is VALID [2018-11-23 12:16:35,821 INFO L273 TraceCheckUtils]: 13: Hoare triple {10543#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10543#true} is VALID [2018-11-23 12:16:35,821 INFO L273 TraceCheckUtils]: 14: Hoare triple {10543#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10543#true} is VALID [2018-11-23 12:16:35,821 INFO L273 TraceCheckUtils]: 15: Hoare triple {10543#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10543#true} is VALID [2018-11-23 12:16:35,822 INFO L273 TraceCheckUtils]: 16: Hoare triple {10543#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10543#true} is VALID [2018-11-23 12:16:35,822 INFO L273 TraceCheckUtils]: 17: Hoare triple {10543#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10543#true} is VALID [2018-11-23 12:16:35,822 INFO L273 TraceCheckUtils]: 18: Hoare triple {10543#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10543#true} is VALID [2018-11-23 12:16:35,822 INFO L273 TraceCheckUtils]: 19: Hoare triple {10543#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10543#true} is VALID [2018-11-23 12:16:35,822 INFO L273 TraceCheckUtils]: 20: Hoare triple {10543#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10543#true} is VALID [2018-11-23 12:16:35,822 INFO L273 TraceCheckUtils]: 21: Hoare triple {10543#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10543#true} is VALID [2018-11-23 12:16:35,822 INFO L273 TraceCheckUtils]: 22: Hoare triple {10543#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10543#true} is VALID [2018-11-23 12:16:35,823 INFO L273 TraceCheckUtils]: 23: Hoare triple {10543#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10543#true} is VALID [2018-11-23 12:16:35,823 INFO L273 TraceCheckUtils]: 24: Hoare triple {10543#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10543#true} is VALID [2018-11-23 12:16:35,823 INFO L273 TraceCheckUtils]: 25: Hoare triple {10543#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10543#true} is VALID [2018-11-23 12:16:35,823 INFO L273 TraceCheckUtils]: 26: Hoare triple {10543#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10543#true} is VALID [2018-11-23 12:16:35,823 INFO L273 TraceCheckUtils]: 27: Hoare triple {10543#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10543#true} is VALID [2018-11-23 12:16:35,823 INFO L273 TraceCheckUtils]: 28: Hoare triple {10543#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10543#true} is VALID [2018-11-23 12:16:35,823 INFO L273 TraceCheckUtils]: 29: Hoare triple {10543#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10543#true} is VALID [2018-11-23 12:16:35,823 INFO L273 TraceCheckUtils]: 30: Hoare triple {10543#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10543#true} is VALID [2018-11-23 12:16:35,823 INFO L273 TraceCheckUtils]: 31: Hoare triple {10543#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10543#true} is VALID [2018-11-23 12:16:35,824 INFO L273 TraceCheckUtils]: 32: Hoare triple {10543#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10543#true} is VALID [2018-11-23 12:16:35,824 INFO L273 TraceCheckUtils]: 33: Hoare triple {10543#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10543#true} is VALID [2018-11-23 12:16:35,824 INFO L273 TraceCheckUtils]: 34: Hoare triple {10543#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10543#true} is VALID [2018-11-23 12:16:35,824 INFO L273 TraceCheckUtils]: 35: Hoare triple {10543#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10543#true} is VALID [2018-11-23 12:16:35,824 INFO L273 TraceCheckUtils]: 36: Hoare triple {10543#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10543#true} is VALID [2018-11-23 12:16:35,824 INFO L273 TraceCheckUtils]: 37: Hoare triple {10543#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10543#true} is VALID [2018-11-23 12:16:35,824 INFO L273 TraceCheckUtils]: 38: Hoare triple {10543#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {10543#true} is VALID [2018-11-23 12:16:35,824 INFO L273 TraceCheckUtils]: 39: Hoare triple {10543#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {10543#true} is VALID [2018-11-23 12:16:35,824 INFO L273 TraceCheckUtils]: 40: Hoare triple {10543#true} assume !(~i~1 < 20); {10543#true} is VALID [2018-11-23 12:16:35,825 INFO L256 TraceCheckUtils]: 41: Hoare triple {10543#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {10543#true} is VALID [2018-11-23 12:16:35,825 INFO L273 TraceCheckUtils]: 42: Hoare triple {10543#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {10692#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:35,825 INFO L273 TraceCheckUtils]: 43: Hoare triple {10692#(<= max_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10692#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:35,826 INFO L273 TraceCheckUtils]: 44: Hoare triple {10692#(<= max_~i~0 0)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10692#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:35,826 INFO L273 TraceCheckUtils]: 45: Hoare triple {10692#(<= max_~i~0 0)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10692#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:35,826 INFO L273 TraceCheckUtils]: 46: Hoare triple {10692#(<= max_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10705#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:35,827 INFO L273 TraceCheckUtils]: 47: Hoare triple {10705#(<= max_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10705#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:35,827 INFO L273 TraceCheckUtils]: 48: Hoare triple {10705#(<= max_~i~0 1)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10705#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:35,827 INFO L273 TraceCheckUtils]: 49: Hoare triple {10705#(<= max_~i~0 1)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10705#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:35,828 INFO L273 TraceCheckUtils]: 50: Hoare triple {10705#(<= max_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10718#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:35,828 INFO L273 TraceCheckUtils]: 51: Hoare triple {10718#(<= max_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10718#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:35,828 INFO L273 TraceCheckUtils]: 52: Hoare triple {10718#(<= max_~i~0 2)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10718#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:35,829 INFO L273 TraceCheckUtils]: 53: Hoare triple {10718#(<= max_~i~0 2)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10718#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:35,829 INFO L273 TraceCheckUtils]: 54: Hoare triple {10718#(<= max_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10731#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:35,830 INFO L273 TraceCheckUtils]: 55: Hoare triple {10731#(<= max_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10731#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:35,830 INFO L273 TraceCheckUtils]: 56: Hoare triple {10731#(<= max_~i~0 3)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10731#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:35,831 INFO L273 TraceCheckUtils]: 57: Hoare triple {10731#(<= max_~i~0 3)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10731#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:35,832 INFO L273 TraceCheckUtils]: 58: Hoare triple {10731#(<= max_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10744#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:35,832 INFO L273 TraceCheckUtils]: 59: Hoare triple {10744#(<= max_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10744#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:35,833 INFO L273 TraceCheckUtils]: 60: Hoare triple {10744#(<= max_~i~0 4)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10744#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:35,833 INFO L273 TraceCheckUtils]: 61: Hoare triple {10744#(<= max_~i~0 4)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10744#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:35,834 INFO L273 TraceCheckUtils]: 62: Hoare triple {10744#(<= max_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10757#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:35,835 INFO L273 TraceCheckUtils]: 63: Hoare triple {10757#(<= max_~i~0 5)} assume !(~i~0 < 20); {10544#false} is VALID [2018-11-23 12:16:35,835 INFO L273 TraceCheckUtils]: 64: Hoare triple {10544#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {10544#false} is VALID [2018-11-23 12:16:35,835 INFO L273 TraceCheckUtils]: 65: Hoare triple {10544#false} assume true; {10544#false} is VALID [2018-11-23 12:16:35,835 INFO L268 TraceCheckUtils]: 66: Hoare quadruple {10544#false} {10543#true} #77#return; {10544#false} is VALID [2018-11-23 12:16:35,835 INFO L273 TraceCheckUtils]: 67: Hoare triple {10544#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {10544#false} is VALID [2018-11-23 12:16:35,836 INFO L256 TraceCheckUtils]: 68: Hoare triple {10544#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {10544#false} is VALID [2018-11-23 12:16:35,836 INFO L273 TraceCheckUtils]: 69: Hoare triple {10544#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {10544#false} is VALID [2018-11-23 12:16:35,836 INFO L273 TraceCheckUtils]: 70: Hoare triple {10544#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10544#false} is VALID [2018-11-23 12:16:35,836 INFO L273 TraceCheckUtils]: 71: Hoare triple {10544#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10544#false} is VALID [2018-11-23 12:16:35,836 INFO L273 TraceCheckUtils]: 72: Hoare triple {10544#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10544#false} is VALID [2018-11-23 12:16:35,837 INFO L273 TraceCheckUtils]: 73: Hoare triple {10544#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10544#false} is VALID [2018-11-23 12:16:35,837 INFO L273 TraceCheckUtils]: 74: Hoare triple {10544#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10544#false} is VALID [2018-11-23 12:16:35,837 INFO L273 TraceCheckUtils]: 75: Hoare triple {10544#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10544#false} is VALID [2018-11-23 12:16:35,837 INFO L273 TraceCheckUtils]: 76: Hoare triple {10544#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10544#false} is VALID [2018-11-23 12:16:35,837 INFO L273 TraceCheckUtils]: 77: Hoare triple {10544#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10544#false} is VALID [2018-11-23 12:16:35,838 INFO L273 TraceCheckUtils]: 78: Hoare triple {10544#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10544#false} is VALID [2018-11-23 12:16:35,838 INFO L273 TraceCheckUtils]: 79: Hoare triple {10544#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10544#false} is VALID [2018-11-23 12:16:35,838 INFO L273 TraceCheckUtils]: 80: Hoare triple {10544#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10544#false} is VALID [2018-11-23 12:16:35,838 INFO L273 TraceCheckUtils]: 81: Hoare triple {10544#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10544#false} is VALID [2018-11-23 12:16:35,838 INFO L273 TraceCheckUtils]: 82: Hoare triple {10544#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10544#false} is VALID [2018-11-23 12:16:35,839 INFO L273 TraceCheckUtils]: 83: Hoare triple {10544#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10544#false} is VALID [2018-11-23 12:16:35,839 INFO L273 TraceCheckUtils]: 84: Hoare triple {10544#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10544#false} is VALID [2018-11-23 12:16:35,839 INFO L273 TraceCheckUtils]: 85: Hoare triple {10544#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10544#false} is VALID [2018-11-23 12:16:35,839 INFO L273 TraceCheckUtils]: 86: Hoare triple {10544#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10544#false} is VALID [2018-11-23 12:16:35,839 INFO L273 TraceCheckUtils]: 87: Hoare triple {10544#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10544#false} is VALID [2018-11-23 12:16:35,839 INFO L273 TraceCheckUtils]: 88: Hoare triple {10544#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10544#false} is VALID [2018-11-23 12:16:35,839 INFO L273 TraceCheckUtils]: 89: Hoare triple {10544#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10544#false} is VALID [2018-11-23 12:16:35,840 INFO L273 TraceCheckUtils]: 90: Hoare triple {10544#false} assume !(~i~0 < 20); {10544#false} is VALID [2018-11-23 12:16:35,840 INFO L273 TraceCheckUtils]: 91: Hoare triple {10544#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {10544#false} is VALID [2018-11-23 12:16:35,840 INFO L273 TraceCheckUtils]: 92: Hoare triple {10544#false} assume true; {10544#false} is VALID [2018-11-23 12:16:35,840 INFO L268 TraceCheckUtils]: 93: Hoare quadruple {10544#false} {10544#false} #79#return; {10544#false} is VALID [2018-11-23 12:16:35,840 INFO L273 TraceCheckUtils]: 94: Hoare triple {10544#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {10544#false} is VALID [2018-11-23 12:16:35,840 INFO L273 TraceCheckUtils]: 95: Hoare triple {10544#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {10544#false} is VALID [2018-11-23 12:16:35,840 INFO L273 TraceCheckUtils]: 96: Hoare triple {10544#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {10544#false} is VALID [2018-11-23 12:16:35,840 INFO L273 TraceCheckUtils]: 97: Hoare triple {10544#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {10544#false} is VALID [2018-11-23 12:16:35,840 INFO L273 TraceCheckUtils]: 98: Hoare triple {10544#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {10544#false} is VALID [2018-11-23 12:16:35,841 INFO L273 TraceCheckUtils]: 99: Hoare triple {10544#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {10544#false} is VALID [2018-11-23 12:16:35,841 INFO L273 TraceCheckUtils]: 100: Hoare triple {10544#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {10544#false} is VALID [2018-11-23 12:16:35,841 INFO L273 TraceCheckUtils]: 101: Hoare triple {10544#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {10544#false} is VALID [2018-11-23 12:16:35,841 INFO L273 TraceCheckUtils]: 102: Hoare triple {10544#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {10544#false} is VALID [2018-11-23 12:16:35,841 INFO L273 TraceCheckUtils]: 103: Hoare triple {10544#false} assume !(~i~2 < 19); {10544#false} is VALID [2018-11-23 12:16:35,841 INFO L273 TraceCheckUtils]: 104: Hoare triple {10544#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {10544#false} is VALID [2018-11-23 12:16:35,841 INFO L256 TraceCheckUtils]: 105: Hoare triple {10544#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {10544#false} is VALID [2018-11-23 12:16:35,841 INFO L273 TraceCheckUtils]: 106: Hoare triple {10544#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {10544#false} is VALID [2018-11-23 12:16:35,841 INFO L273 TraceCheckUtils]: 107: Hoare triple {10544#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10544#false} is VALID [2018-11-23 12:16:35,842 INFO L273 TraceCheckUtils]: 108: Hoare triple {10544#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10544#false} is VALID [2018-11-23 12:16:35,842 INFO L273 TraceCheckUtils]: 109: Hoare triple {10544#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10544#false} is VALID [2018-11-23 12:16:35,842 INFO L273 TraceCheckUtils]: 110: Hoare triple {10544#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10544#false} is VALID [2018-11-23 12:16:35,842 INFO L273 TraceCheckUtils]: 111: Hoare triple {10544#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10544#false} is VALID [2018-11-23 12:16:35,842 INFO L273 TraceCheckUtils]: 112: Hoare triple {10544#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10544#false} is VALID [2018-11-23 12:16:35,842 INFO L273 TraceCheckUtils]: 113: Hoare triple {10544#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10544#false} is VALID [2018-11-23 12:16:35,842 INFO L273 TraceCheckUtils]: 114: Hoare triple {10544#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10544#false} is VALID [2018-11-23 12:16:35,842 INFO L273 TraceCheckUtils]: 115: Hoare triple {10544#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10544#false} is VALID [2018-11-23 12:16:35,842 INFO L273 TraceCheckUtils]: 116: Hoare triple {10544#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10544#false} is VALID [2018-11-23 12:16:35,843 INFO L273 TraceCheckUtils]: 117: Hoare triple {10544#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10544#false} is VALID [2018-11-23 12:16:35,843 INFO L273 TraceCheckUtils]: 118: Hoare triple {10544#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10544#false} is VALID [2018-11-23 12:16:35,843 INFO L273 TraceCheckUtils]: 119: Hoare triple {10544#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10544#false} is VALID [2018-11-23 12:16:35,843 INFO L273 TraceCheckUtils]: 120: Hoare triple {10544#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10544#false} is VALID [2018-11-23 12:16:35,843 INFO L273 TraceCheckUtils]: 121: Hoare triple {10544#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10544#false} is VALID [2018-11-23 12:16:35,843 INFO L273 TraceCheckUtils]: 122: Hoare triple {10544#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10544#false} is VALID [2018-11-23 12:16:35,843 INFO L273 TraceCheckUtils]: 123: Hoare triple {10544#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {10544#false} is VALID [2018-11-23 12:16:35,843 INFO L273 TraceCheckUtils]: 124: Hoare triple {10544#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {10544#false} is VALID [2018-11-23 12:16:35,843 INFO L273 TraceCheckUtils]: 125: Hoare triple {10544#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {10544#false} is VALID [2018-11-23 12:16:35,844 INFO L273 TraceCheckUtils]: 126: Hoare triple {10544#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {10544#false} is VALID [2018-11-23 12:16:35,844 INFO L273 TraceCheckUtils]: 127: Hoare triple {10544#false} assume !(~i~0 < 20); {10544#false} is VALID [2018-11-23 12:16:35,844 INFO L273 TraceCheckUtils]: 128: Hoare triple {10544#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {10544#false} is VALID [2018-11-23 12:16:35,844 INFO L273 TraceCheckUtils]: 129: Hoare triple {10544#false} assume true; {10544#false} is VALID [2018-11-23 12:16:35,844 INFO L268 TraceCheckUtils]: 130: Hoare quadruple {10544#false} {10544#false} #81#return; {10544#false} is VALID [2018-11-23 12:16:35,844 INFO L273 TraceCheckUtils]: 131: Hoare triple {10544#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {10544#false} is VALID [2018-11-23 12:16:35,844 INFO L273 TraceCheckUtils]: 132: Hoare triple {10544#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {10544#false} is VALID [2018-11-23 12:16:35,844 INFO L273 TraceCheckUtils]: 133: Hoare triple {10544#false} assume !false; {10544#false} is VALID [2018-11-23 12:16:35,851 INFO L134 CoverageAnalysis]: Checked inductivity of 785 backedges. 224 proven. 45 refuted. 0 times theorem prover too weak. 516 trivial. 0 not checked. [2018-11-23 12:16:35,872 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:16:35,872 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [20, 8] total 26 [2018-11-23 12:16:35,872 INFO L78 Accepts]: Start accepts. Automaton has 26 states. Word has length 134 [2018-11-23 12:16:35,873 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:35,873 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 26 states. [2018-11-23 12:16:35,971 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:16:35,971 INFO L459 AbstractCegarLoop]: Interpolant automaton has 26 states [2018-11-23 12:16:35,971 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2018-11-23 12:16:35,972 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=217, Invalid=433, Unknown=0, NotChecked=0, Total=650 [2018-11-23 12:16:35,972 INFO L87 Difference]: Start difference. First operand 85 states and 94 transitions. Second operand 26 states. [2018-11-23 12:16:36,381 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:36,382 INFO L93 Difference]: Finished difference Result 139 states and 163 transitions. [2018-11-23 12:16:36,382 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2018-11-23 12:16:36,382 INFO L78 Accepts]: Start accepts. Automaton has 26 states. Word has length 134 [2018-11-23 12:16:36,382 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:36,382 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 26 states. [2018-11-23 12:16:36,383 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 128 transitions. [2018-11-23 12:16:36,384 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 26 states. [2018-11-23 12:16:36,385 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 128 transitions. [2018-11-23 12:16:36,385 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 26 states and 128 transitions. [2018-11-23 12:16:36,559 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 128 edges. 128 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:16:36,561 INFO L225 Difference]: With dead ends: 139 [2018-11-23 12:16:36,561 INFO L226 Difference]: Without dead ends: 95 [2018-11-23 12:16:36,562 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 153 GetRequests, 129 SyntacticMatches, 0 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 102 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=217, Invalid=433, Unknown=0, NotChecked=0, Total=650 [2018-11-23 12:16:36,562 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 95 states. [2018-11-23 12:16:36,600 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 95 to 91. [2018-11-23 12:16:36,600 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:36,600 INFO L82 GeneralOperation]: Start isEquivalent. First operand 95 states. Second operand 91 states. [2018-11-23 12:16:36,601 INFO L74 IsIncluded]: Start isIncluded. First operand 95 states. Second operand 91 states. [2018-11-23 12:16:36,601 INFO L87 Difference]: Start difference. First operand 95 states. Second operand 91 states. [2018-11-23 12:16:36,603 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:36,603 INFO L93 Difference]: Finished difference Result 95 states and 106 transitions. [2018-11-23 12:16:36,603 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 106 transitions. [2018-11-23 12:16:36,604 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:36,604 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:36,604 INFO L74 IsIncluded]: Start isIncluded. First operand 91 states. Second operand 95 states. [2018-11-23 12:16:36,604 INFO L87 Difference]: Start difference. First operand 91 states. Second operand 95 states. [2018-11-23 12:16:36,606 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:36,606 INFO L93 Difference]: Finished difference Result 95 states and 106 transitions. [2018-11-23 12:16:36,606 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 106 transitions. [2018-11-23 12:16:36,607 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:36,607 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:36,607 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:36,607 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:36,607 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 91 states. [2018-11-23 12:16:36,609 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 91 states to 91 states and 101 transitions. [2018-11-23 12:16:36,609 INFO L78 Accepts]: Start accepts. Automaton has 91 states and 101 transitions. Word has length 134 [2018-11-23 12:16:36,610 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:36,610 INFO L480 AbstractCegarLoop]: Abstraction has 91 states and 101 transitions. [2018-11-23 12:16:36,610 INFO L481 AbstractCegarLoop]: Interpolant automaton has 26 states. [2018-11-23 12:16:36,610 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 101 transitions. [2018-11-23 12:16:36,611 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 149 [2018-11-23 12:16:36,611 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:36,611 INFO L402 BasicCegarLoop]: trace histogram [18, 18, 18, 18, 18, 18, 4, 4, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:36,612 INFO L423 AbstractCegarLoop]: === Iteration 21 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:36,612 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:36,612 INFO L82 PathProgramCache]: Analyzing trace with hash -1660813879, now seen corresponding path program 18 times [2018-11-23 12:16:36,612 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:36,612 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:36,613 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:36,613 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:16:36,613 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:36,639 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:37,105 INFO L256 TraceCheckUtils]: 0: Hoare triple {11483#true} call ULTIMATE.init(); {11483#true} is VALID [2018-11-23 12:16:37,105 INFO L273 TraceCheckUtils]: 1: Hoare triple {11483#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {11483#true} is VALID [2018-11-23 12:16:37,105 INFO L273 TraceCheckUtils]: 2: Hoare triple {11483#true} assume true; {11483#true} is VALID [2018-11-23 12:16:37,106 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {11483#true} {11483#true} #73#return; {11483#true} is VALID [2018-11-23 12:16:37,106 INFO L256 TraceCheckUtils]: 4: Hoare triple {11483#true} call #t~ret14 := main(); {11483#true} is VALID [2018-11-23 12:16:37,106 INFO L273 TraceCheckUtils]: 5: Hoare triple {11483#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {11485#(= main_~i~1 0)} is VALID [2018-11-23 12:16:37,107 INFO L273 TraceCheckUtils]: 6: Hoare triple {11485#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11485#(= main_~i~1 0)} is VALID [2018-11-23 12:16:37,108 INFO L273 TraceCheckUtils]: 7: Hoare triple {11485#(= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11486#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:37,108 INFO L273 TraceCheckUtils]: 8: Hoare triple {11486#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11486#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:37,108 INFO L273 TraceCheckUtils]: 9: Hoare triple {11486#(<= main_~i~1 1)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11487#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:37,109 INFO L273 TraceCheckUtils]: 10: Hoare triple {11487#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11487#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:37,109 INFO L273 TraceCheckUtils]: 11: Hoare triple {11487#(<= main_~i~1 2)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11488#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:37,109 INFO L273 TraceCheckUtils]: 12: Hoare triple {11488#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11488#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:37,110 INFO L273 TraceCheckUtils]: 13: Hoare triple {11488#(<= main_~i~1 3)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11489#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:37,110 INFO L273 TraceCheckUtils]: 14: Hoare triple {11489#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11489#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:37,111 INFO L273 TraceCheckUtils]: 15: Hoare triple {11489#(<= main_~i~1 4)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11490#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:37,111 INFO L273 TraceCheckUtils]: 16: Hoare triple {11490#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11490#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:37,112 INFO L273 TraceCheckUtils]: 17: Hoare triple {11490#(<= main_~i~1 5)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11491#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:37,112 INFO L273 TraceCheckUtils]: 18: Hoare triple {11491#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11491#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:37,113 INFO L273 TraceCheckUtils]: 19: Hoare triple {11491#(<= main_~i~1 6)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11492#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:37,114 INFO L273 TraceCheckUtils]: 20: Hoare triple {11492#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11492#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:37,114 INFO L273 TraceCheckUtils]: 21: Hoare triple {11492#(<= main_~i~1 7)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11493#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:37,115 INFO L273 TraceCheckUtils]: 22: Hoare triple {11493#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11493#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:37,116 INFO L273 TraceCheckUtils]: 23: Hoare triple {11493#(<= main_~i~1 8)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11494#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:37,116 INFO L273 TraceCheckUtils]: 24: Hoare triple {11494#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11494#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:37,117 INFO L273 TraceCheckUtils]: 25: Hoare triple {11494#(<= main_~i~1 9)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11495#(<= main_~i~1 10)} is VALID [2018-11-23 12:16:37,117 INFO L273 TraceCheckUtils]: 26: Hoare triple {11495#(<= main_~i~1 10)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11495#(<= main_~i~1 10)} is VALID [2018-11-23 12:16:37,118 INFO L273 TraceCheckUtils]: 27: Hoare triple {11495#(<= main_~i~1 10)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11496#(<= main_~i~1 11)} is VALID [2018-11-23 12:16:37,119 INFO L273 TraceCheckUtils]: 28: Hoare triple {11496#(<= main_~i~1 11)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11496#(<= main_~i~1 11)} is VALID [2018-11-23 12:16:37,119 INFO L273 TraceCheckUtils]: 29: Hoare triple {11496#(<= main_~i~1 11)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11497#(<= main_~i~1 12)} is VALID [2018-11-23 12:16:37,120 INFO L273 TraceCheckUtils]: 30: Hoare triple {11497#(<= main_~i~1 12)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11497#(<= main_~i~1 12)} is VALID [2018-11-23 12:16:37,121 INFO L273 TraceCheckUtils]: 31: Hoare triple {11497#(<= main_~i~1 12)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11498#(<= main_~i~1 13)} is VALID [2018-11-23 12:16:37,121 INFO L273 TraceCheckUtils]: 32: Hoare triple {11498#(<= main_~i~1 13)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11498#(<= main_~i~1 13)} is VALID [2018-11-23 12:16:37,122 INFO L273 TraceCheckUtils]: 33: Hoare triple {11498#(<= main_~i~1 13)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11499#(<= main_~i~1 14)} is VALID [2018-11-23 12:16:37,123 INFO L273 TraceCheckUtils]: 34: Hoare triple {11499#(<= main_~i~1 14)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11499#(<= main_~i~1 14)} is VALID [2018-11-23 12:16:37,123 INFO L273 TraceCheckUtils]: 35: Hoare triple {11499#(<= main_~i~1 14)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11500#(<= main_~i~1 15)} is VALID [2018-11-23 12:16:37,124 INFO L273 TraceCheckUtils]: 36: Hoare triple {11500#(<= main_~i~1 15)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11500#(<= main_~i~1 15)} is VALID [2018-11-23 12:16:37,125 INFO L273 TraceCheckUtils]: 37: Hoare triple {11500#(<= main_~i~1 15)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11501#(<= main_~i~1 16)} is VALID [2018-11-23 12:16:37,125 INFO L273 TraceCheckUtils]: 38: Hoare triple {11501#(<= main_~i~1 16)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11501#(<= main_~i~1 16)} is VALID [2018-11-23 12:16:37,144 INFO L273 TraceCheckUtils]: 39: Hoare triple {11501#(<= main_~i~1 16)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11502#(<= main_~i~1 17)} is VALID [2018-11-23 12:16:37,158 INFO L273 TraceCheckUtils]: 40: Hoare triple {11502#(<= main_~i~1 17)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11502#(<= main_~i~1 17)} is VALID [2018-11-23 12:16:37,174 INFO L273 TraceCheckUtils]: 41: Hoare triple {11502#(<= main_~i~1 17)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11503#(<= main_~i~1 18)} is VALID [2018-11-23 12:16:37,189 INFO L273 TraceCheckUtils]: 42: Hoare triple {11503#(<= main_~i~1 18)} assume !(~i~1 < 20); {11484#false} is VALID [2018-11-23 12:16:37,189 INFO L256 TraceCheckUtils]: 43: Hoare triple {11484#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {11483#true} is VALID [2018-11-23 12:16:37,189 INFO L273 TraceCheckUtils]: 44: Hoare triple {11483#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {11483#true} is VALID [2018-11-23 12:16:37,190 INFO L273 TraceCheckUtils]: 45: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,190 INFO L273 TraceCheckUtils]: 46: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,190 INFO L273 TraceCheckUtils]: 47: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,190 INFO L273 TraceCheckUtils]: 48: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,190 INFO L273 TraceCheckUtils]: 49: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,190 INFO L273 TraceCheckUtils]: 50: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,191 INFO L273 TraceCheckUtils]: 51: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,191 INFO L273 TraceCheckUtils]: 52: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,191 INFO L273 TraceCheckUtils]: 53: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,191 INFO L273 TraceCheckUtils]: 54: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,191 INFO L273 TraceCheckUtils]: 55: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,191 INFO L273 TraceCheckUtils]: 56: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,191 INFO L273 TraceCheckUtils]: 57: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,192 INFO L273 TraceCheckUtils]: 58: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,192 INFO L273 TraceCheckUtils]: 59: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,192 INFO L273 TraceCheckUtils]: 60: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,192 INFO L273 TraceCheckUtils]: 61: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,192 INFO L273 TraceCheckUtils]: 62: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,192 INFO L273 TraceCheckUtils]: 63: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,193 INFO L273 TraceCheckUtils]: 64: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,193 INFO L273 TraceCheckUtils]: 65: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,193 INFO L273 TraceCheckUtils]: 66: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,193 INFO L273 TraceCheckUtils]: 67: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,193 INFO L273 TraceCheckUtils]: 68: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,193 INFO L273 TraceCheckUtils]: 69: Hoare triple {11483#true} assume !(~i~0 < 20); {11483#true} is VALID [2018-11-23 12:16:37,194 INFO L273 TraceCheckUtils]: 70: Hoare triple {11483#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {11483#true} is VALID [2018-11-23 12:16:37,194 INFO L273 TraceCheckUtils]: 71: Hoare triple {11483#true} assume true; {11483#true} is VALID [2018-11-23 12:16:37,194 INFO L268 TraceCheckUtils]: 72: Hoare quadruple {11483#true} {11484#false} #77#return; {11484#false} is VALID [2018-11-23 12:16:37,194 INFO L273 TraceCheckUtils]: 73: Hoare triple {11484#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {11484#false} is VALID [2018-11-23 12:16:37,194 INFO L256 TraceCheckUtils]: 74: Hoare triple {11484#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {11483#true} is VALID [2018-11-23 12:16:37,194 INFO L273 TraceCheckUtils]: 75: Hoare triple {11483#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {11483#true} is VALID [2018-11-23 12:16:37,195 INFO L273 TraceCheckUtils]: 76: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,195 INFO L273 TraceCheckUtils]: 77: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,195 INFO L273 TraceCheckUtils]: 78: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,195 INFO L273 TraceCheckUtils]: 79: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,195 INFO L273 TraceCheckUtils]: 80: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,195 INFO L273 TraceCheckUtils]: 81: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,196 INFO L273 TraceCheckUtils]: 82: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,196 INFO L273 TraceCheckUtils]: 83: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,196 INFO L273 TraceCheckUtils]: 84: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,196 INFO L273 TraceCheckUtils]: 85: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,196 INFO L273 TraceCheckUtils]: 86: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,196 INFO L273 TraceCheckUtils]: 87: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,197 INFO L273 TraceCheckUtils]: 88: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,197 INFO L273 TraceCheckUtils]: 89: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,197 INFO L273 TraceCheckUtils]: 90: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,197 INFO L273 TraceCheckUtils]: 91: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,197 INFO L273 TraceCheckUtils]: 92: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,197 INFO L273 TraceCheckUtils]: 93: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,198 INFO L273 TraceCheckUtils]: 94: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,198 INFO L273 TraceCheckUtils]: 95: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,198 INFO L273 TraceCheckUtils]: 96: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,198 INFO L273 TraceCheckUtils]: 97: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,198 INFO L273 TraceCheckUtils]: 98: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,198 INFO L273 TraceCheckUtils]: 99: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,199 INFO L273 TraceCheckUtils]: 100: Hoare triple {11483#true} assume !(~i~0 < 20); {11483#true} is VALID [2018-11-23 12:16:37,199 INFO L273 TraceCheckUtils]: 101: Hoare triple {11483#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {11483#true} is VALID [2018-11-23 12:16:37,199 INFO L273 TraceCheckUtils]: 102: Hoare triple {11483#true} assume true; {11483#true} is VALID [2018-11-23 12:16:37,199 INFO L268 TraceCheckUtils]: 103: Hoare quadruple {11483#true} {11484#false} #79#return; {11484#false} is VALID [2018-11-23 12:16:37,199 INFO L273 TraceCheckUtils]: 104: Hoare triple {11484#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {11484#false} is VALID [2018-11-23 12:16:37,199 INFO L273 TraceCheckUtils]: 105: Hoare triple {11484#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {11484#false} is VALID [2018-11-23 12:16:37,200 INFO L273 TraceCheckUtils]: 106: Hoare triple {11484#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {11484#false} is VALID [2018-11-23 12:16:37,200 INFO L273 TraceCheckUtils]: 107: Hoare triple {11484#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {11484#false} is VALID [2018-11-23 12:16:37,200 INFO L273 TraceCheckUtils]: 108: Hoare triple {11484#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {11484#false} is VALID [2018-11-23 12:16:37,200 INFO L273 TraceCheckUtils]: 109: Hoare triple {11484#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {11484#false} is VALID [2018-11-23 12:16:37,200 INFO L273 TraceCheckUtils]: 110: Hoare triple {11484#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {11484#false} is VALID [2018-11-23 12:16:37,200 INFO L273 TraceCheckUtils]: 111: Hoare triple {11484#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {11484#false} is VALID [2018-11-23 12:16:37,201 INFO L273 TraceCheckUtils]: 112: Hoare triple {11484#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {11484#false} is VALID [2018-11-23 12:16:37,201 INFO L273 TraceCheckUtils]: 113: Hoare triple {11484#false} assume !(~i~2 < 19); {11484#false} is VALID [2018-11-23 12:16:37,201 INFO L273 TraceCheckUtils]: 114: Hoare triple {11484#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {11484#false} is VALID [2018-11-23 12:16:37,201 INFO L256 TraceCheckUtils]: 115: Hoare triple {11484#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {11483#true} is VALID [2018-11-23 12:16:37,201 INFO L273 TraceCheckUtils]: 116: Hoare triple {11483#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {11483#true} is VALID [2018-11-23 12:16:37,201 INFO L273 TraceCheckUtils]: 117: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,202 INFO L273 TraceCheckUtils]: 118: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,202 INFO L273 TraceCheckUtils]: 119: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,202 INFO L273 TraceCheckUtils]: 120: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,202 INFO L273 TraceCheckUtils]: 121: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,202 INFO L273 TraceCheckUtils]: 122: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,202 INFO L273 TraceCheckUtils]: 123: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,203 INFO L273 TraceCheckUtils]: 124: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,203 INFO L273 TraceCheckUtils]: 125: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,203 INFO L273 TraceCheckUtils]: 126: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,203 INFO L273 TraceCheckUtils]: 127: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,203 INFO L273 TraceCheckUtils]: 128: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,203 INFO L273 TraceCheckUtils]: 129: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,204 INFO L273 TraceCheckUtils]: 130: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,204 INFO L273 TraceCheckUtils]: 131: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,204 INFO L273 TraceCheckUtils]: 132: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,204 INFO L273 TraceCheckUtils]: 133: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,204 INFO L273 TraceCheckUtils]: 134: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,204 INFO L273 TraceCheckUtils]: 135: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,205 INFO L273 TraceCheckUtils]: 136: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,205 INFO L273 TraceCheckUtils]: 137: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,205 INFO L273 TraceCheckUtils]: 138: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,205 INFO L273 TraceCheckUtils]: 139: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,205 INFO L273 TraceCheckUtils]: 140: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,205 INFO L273 TraceCheckUtils]: 141: Hoare triple {11483#true} assume !(~i~0 < 20); {11483#true} is VALID [2018-11-23 12:16:37,206 INFO L273 TraceCheckUtils]: 142: Hoare triple {11483#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {11483#true} is VALID [2018-11-23 12:16:37,206 INFO L273 TraceCheckUtils]: 143: Hoare triple {11483#true} assume true; {11483#true} is VALID [2018-11-23 12:16:37,206 INFO L268 TraceCheckUtils]: 144: Hoare quadruple {11483#true} {11484#false} #81#return; {11484#false} is VALID [2018-11-23 12:16:37,206 INFO L273 TraceCheckUtils]: 145: Hoare triple {11484#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {11484#false} is VALID [2018-11-23 12:16:37,206 INFO L273 TraceCheckUtils]: 146: Hoare triple {11484#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {11484#false} is VALID [2018-11-23 12:16:37,206 INFO L273 TraceCheckUtils]: 147: Hoare triple {11484#false} assume !false; {11484#false} is VALID [2018-11-23 12:16:37,219 INFO L134 CoverageAnalysis]: Checked inductivity of 1021 backedges. 0 proven. 324 refuted. 0 times theorem prover too weak. 697 trivial. 0 not checked. [2018-11-23 12:16:37,219 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:16:37,219 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 20 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 20 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:16:37,236 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 12:16:37,535 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 11 check-sat command(s) [2018-11-23 12:16:37,535 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:16:37,565 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:37,566 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:37,978 INFO L256 TraceCheckUtils]: 0: Hoare triple {11483#true} call ULTIMATE.init(); {11483#true} is VALID [2018-11-23 12:16:37,979 INFO L273 TraceCheckUtils]: 1: Hoare triple {11483#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {11483#true} is VALID [2018-11-23 12:16:37,979 INFO L273 TraceCheckUtils]: 2: Hoare triple {11483#true} assume true; {11483#true} is VALID [2018-11-23 12:16:37,979 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {11483#true} {11483#true} #73#return; {11483#true} is VALID [2018-11-23 12:16:37,979 INFO L256 TraceCheckUtils]: 4: Hoare triple {11483#true} call #t~ret14 := main(); {11483#true} is VALID [2018-11-23 12:16:37,980 INFO L273 TraceCheckUtils]: 5: Hoare triple {11483#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {11483#true} is VALID [2018-11-23 12:16:37,980 INFO L273 TraceCheckUtils]: 6: Hoare triple {11483#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11483#true} is VALID [2018-11-23 12:16:37,980 INFO L273 TraceCheckUtils]: 7: Hoare triple {11483#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11483#true} is VALID [2018-11-23 12:16:37,980 INFO L273 TraceCheckUtils]: 8: Hoare triple {11483#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11483#true} is VALID [2018-11-23 12:16:37,980 INFO L273 TraceCheckUtils]: 9: Hoare triple {11483#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11483#true} is VALID [2018-11-23 12:16:37,981 INFO L273 TraceCheckUtils]: 10: Hoare triple {11483#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11483#true} is VALID [2018-11-23 12:16:37,981 INFO L273 TraceCheckUtils]: 11: Hoare triple {11483#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11483#true} is VALID [2018-11-23 12:16:37,981 INFO L273 TraceCheckUtils]: 12: Hoare triple {11483#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11483#true} is VALID [2018-11-23 12:16:37,981 INFO L273 TraceCheckUtils]: 13: Hoare triple {11483#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11483#true} is VALID [2018-11-23 12:16:37,981 INFO L273 TraceCheckUtils]: 14: Hoare triple {11483#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11483#true} is VALID [2018-11-23 12:16:37,981 INFO L273 TraceCheckUtils]: 15: Hoare triple {11483#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11483#true} is VALID [2018-11-23 12:16:37,981 INFO L273 TraceCheckUtils]: 16: Hoare triple {11483#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11483#true} is VALID [2018-11-23 12:16:37,982 INFO L273 TraceCheckUtils]: 17: Hoare triple {11483#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11483#true} is VALID [2018-11-23 12:16:37,982 INFO L273 TraceCheckUtils]: 18: Hoare triple {11483#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11483#true} is VALID [2018-11-23 12:16:37,982 INFO L273 TraceCheckUtils]: 19: Hoare triple {11483#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11483#true} is VALID [2018-11-23 12:16:37,982 INFO L273 TraceCheckUtils]: 20: Hoare triple {11483#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11483#true} is VALID [2018-11-23 12:16:37,982 INFO L273 TraceCheckUtils]: 21: Hoare triple {11483#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11483#true} is VALID [2018-11-23 12:16:37,982 INFO L273 TraceCheckUtils]: 22: Hoare triple {11483#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11483#true} is VALID [2018-11-23 12:16:37,982 INFO L273 TraceCheckUtils]: 23: Hoare triple {11483#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11483#true} is VALID [2018-11-23 12:16:37,982 INFO L273 TraceCheckUtils]: 24: Hoare triple {11483#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11483#true} is VALID [2018-11-23 12:16:37,982 INFO L273 TraceCheckUtils]: 25: Hoare triple {11483#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11483#true} is VALID [2018-11-23 12:16:37,983 INFO L273 TraceCheckUtils]: 26: Hoare triple {11483#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11483#true} is VALID [2018-11-23 12:16:37,983 INFO L273 TraceCheckUtils]: 27: Hoare triple {11483#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11483#true} is VALID [2018-11-23 12:16:37,983 INFO L273 TraceCheckUtils]: 28: Hoare triple {11483#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11483#true} is VALID [2018-11-23 12:16:37,983 INFO L273 TraceCheckUtils]: 29: Hoare triple {11483#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11483#true} is VALID [2018-11-23 12:16:37,983 INFO L273 TraceCheckUtils]: 30: Hoare triple {11483#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11483#true} is VALID [2018-11-23 12:16:37,983 INFO L273 TraceCheckUtils]: 31: Hoare triple {11483#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11483#true} is VALID [2018-11-23 12:16:37,983 INFO L273 TraceCheckUtils]: 32: Hoare triple {11483#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11483#true} is VALID [2018-11-23 12:16:37,984 INFO L273 TraceCheckUtils]: 33: Hoare triple {11483#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11483#true} is VALID [2018-11-23 12:16:37,984 INFO L273 TraceCheckUtils]: 34: Hoare triple {11483#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11483#true} is VALID [2018-11-23 12:16:37,984 INFO L273 TraceCheckUtils]: 35: Hoare triple {11483#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11483#true} is VALID [2018-11-23 12:16:37,984 INFO L273 TraceCheckUtils]: 36: Hoare triple {11483#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11483#true} is VALID [2018-11-23 12:16:37,984 INFO L273 TraceCheckUtils]: 37: Hoare triple {11483#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11483#true} is VALID [2018-11-23 12:16:37,984 INFO L273 TraceCheckUtils]: 38: Hoare triple {11483#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11483#true} is VALID [2018-11-23 12:16:37,985 INFO L273 TraceCheckUtils]: 39: Hoare triple {11483#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11483#true} is VALID [2018-11-23 12:16:37,985 INFO L273 TraceCheckUtils]: 40: Hoare triple {11483#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {11483#true} is VALID [2018-11-23 12:16:37,985 INFO L273 TraceCheckUtils]: 41: Hoare triple {11483#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {11483#true} is VALID [2018-11-23 12:16:37,985 INFO L273 TraceCheckUtils]: 42: Hoare triple {11483#true} assume !(~i~1 < 20); {11483#true} is VALID [2018-11-23 12:16:37,985 INFO L256 TraceCheckUtils]: 43: Hoare triple {11483#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {11483#true} is VALID [2018-11-23 12:16:37,985 INFO L273 TraceCheckUtils]: 44: Hoare triple {11483#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {11483#true} is VALID [2018-11-23 12:16:37,986 INFO L273 TraceCheckUtils]: 45: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,986 INFO L273 TraceCheckUtils]: 46: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,986 INFO L273 TraceCheckUtils]: 47: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,986 INFO L273 TraceCheckUtils]: 48: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,986 INFO L273 TraceCheckUtils]: 49: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,986 INFO L273 TraceCheckUtils]: 50: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,986 INFO L273 TraceCheckUtils]: 51: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,987 INFO L273 TraceCheckUtils]: 52: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,987 INFO L273 TraceCheckUtils]: 53: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,987 INFO L273 TraceCheckUtils]: 54: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,987 INFO L273 TraceCheckUtils]: 55: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,987 INFO L273 TraceCheckUtils]: 56: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,987 INFO L273 TraceCheckUtils]: 57: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,987 INFO L273 TraceCheckUtils]: 58: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,987 INFO L273 TraceCheckUtils]: 59: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,988 INFO L273 TraceCheckUtils]: 60: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,988 INFO L273 TraceCheckUtils]: 61: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,988 INFO L273 TraceCheckUtils]: 62: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,988 INFO L273 TraceCheckUtils]: 63: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,988 INFO L273 TraceCheckUtils]: 64: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,988 INFO L273 TraceCheckUtils]: 65: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,988 INFO L273 TraceCheckUtils]: 66: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,988 INFO L273 TraceCheckUtils]: 67: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,988 INFO L273 TraceCheckUtils]: 68: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,989 INFO L273 TraceCheckUtils]: 69: Hoare triple {11483#true} assume !(~i~0 < 20); {11483#true} is VALID [2018-11-23 12:16:37,989 INFO L273 TraceCheckUtils]: 70: Hoare triple {11483#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {11483#true} is VALID [2018-11-23 12:16:37,989 INFO L273 TraceCheckUtils]: 71: Hoare triple {11483#true} assume true; {11483#true} is VALID [2018-11-23 12:16:37,989 INFO L268 TraceCheckUtils]: 72: Hoare quadruple {11483#true} {11483#true} #77#return; {11483#true} is VALID [2018-11-23 12:16:37,989 INFO L273 TraceCheckUtils]: 73: Hoare triple {11483#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {11483#true} is VALID [2018-11-23 12:16:37,989 INFO L256 TraceCheckUtils]: 74: Hoare triple {11483#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {11483#true} is VALID [2018-11-23 12:16:37,989 INFO L273 TraceCheckUtils]: 75: Hoare triple {11483#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {11483#true} is VALID [2018-11-23 12:16:37,989 INFO L273 TraceCheckUtils]: 76: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,989 INFO L273 TraceCheckUtils]: 77: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,990 INFO L273 TraceCheckUtils]: 78: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,990 INFO L273 TraceCheckUtils]: 79: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,990 INFO L273 TraceCheckUtils]: 80: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,990 INFO L273 TraceCheckUtils]: 81: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,990 INFO L273 TraceCheckUtils]: 82: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,990 INFO L273 TraceCheckUtils]: 83: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,990 INFO L273 TraceCheckUtils]: 84: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,990 INFO L273 TraceCheckUtils]: 85: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,990 INFO L273 TraceCheckUtils]: 86: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,991 INFO L273 TraceCheckUtils]: 87: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,991 INFO L273 TraceCheckUtils]: 88: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,991 INFO L273 TraceCheckUtils]: 89: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,991 INFO L273 TraceCheckUtils]: 90: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,991 INFO L273 TraceCheckUtils]: 91: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,991 INFO L273 TraceCheckUtils]: 92: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,991 INFO L273 TraceCheckUtils]: 93: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,991 INFO L273 TraceCheckUtils]: 94: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,991 INFO L273 TraceCheckUtils]: 95: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,992 INFO L273 TraceCheckUtils]: 96: Hoare triple {11483#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11483#true} is VALID [2018-11-23 12:16:37,992 INFO L273 TraceCheckUtils]: 97: Hoare triple {11483#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11483#true} is VALID [2018-11-23 12:16:37,992 INFO L273 TraceCheckUtils]: 98: Hoare triple {11483#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11483#true} is VALID [2018-11-23 12:16:37,992 INFO L273 TraceCheckUtils]: 99: Hoare triple {11483#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11483#true} is VALID [2018-11-23 12:16:37,992 INFO L273 TraceCheckUtils]: 100: Hoare triple {11483#true} assume !(~i~0 < 20); {11483#true} is VALID [2018-11-23 12:16:37,992 INFO L273 TraceCheckUtils]: 101: Hoare triple {11483#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {11483#true} is VALID [2018-11-23 12:16:37,992 INFO L273 TraceCheckUtils]: 102: Hoare triple {11483#true} assume true; {11483#true} is VALID [2018-11-23 12:16:37,992 INFO L268 TraceCheckUtils]: 103: Hoare quadruple {11483#true} {11483#true} #79#return; {11483#true} is VALID [2018-11-23 12:16:37,993 INFO L273 TraceCheckUtils]: 104: Hoare triple {11483#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {11819#(<= main_~i~2 0)} is VALID [2018-11-23 12:16:37,993 INFO L273 TraceCheckUtils]: 105: Hoare triple {11819#(<= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {11819#(<= main_~i~2 0)} is VALID [2018-11-23 12:16:37,994 INFO L273 TraceCheckUtils]: 106: Hoare triple {11819#(<= main_~i~2 0)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {11826#(<= main_~i~2 1)} is VALID [2018-11-23 12:16:37,994 INFO L273 TraceCheckUtils]: 107: Hoare triple {11826#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {11826#(<= main_~i~2 1)} is VALID [2018-11-23 12:16:37,994 INFO L273 TraceCheckUtils]: 108: Hoare triple {11826#(<= main_~i~2 1)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {11833#(<= main_~i~2 2)} is VALID [2018-11-23 12:16:37,995 INFO L273 TraceCheckUtils]: 109: Hoare triple {11833#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {11833#(<= main_~i~2 2)} is VALID [2018-11-23 12:16:37,995 INFO L273 TraceCheckUtils]: 110: Hoare triple {11833#(<= main_~i~2 2)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {11840#(<= main_~i~2 3)} is VALID [2018-11-23 12:16:37,995 INFO L273 TraceCheckUtils]: 111: Hoare triple {11840#(<= main_~i~2 3)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {11840#(<= main_~i~2 3)} is VALID [2018-11-23 12:16:37,996 INFO L273 TraceCheckUtils]: 112: Hoare triple {11840#(<= main_~i~2 3)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {11847#(<= main_~i~2 4)} is VALID [2018-11-23 12:16:37,996 INFO L273 TraceCheckUtils]: 113: Hoare triple {11847#(<= main_~i~2 4)} assume !(~i~2 < 19); {11484#false} is VALID [2018-11-23 12:16:37,997 INFO L273 TraceCheckUtils]: 114: Hoare triple {11484#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {11484#false} is VALID [2018-11-23 12:16:37,997 INFO L256 TraceCheckUtils]: 115: Hoare triple {11484#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {11484#false} is VALID [2018-11-23 12:16:37,997 INFO L273 TraceCheckUtils]: 116: Hoare triple {11484#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {11484#false} is VALID [2018-11-23 12:16:37,997 INFO L273 TraceCheckUtils]: 117: Hoare triple {11484#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11484#false} is VALID [2018-11-23 12:16:37,997 INFO L273 TraceCheckUtils]: 118: Hoare triple {11484#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11484#false} is VALID [2018-11-23 12:16:37,998 INFO L273 TraceCheckUtils]: 119: Hoare triple {11484#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11484#false} is VALID [2018-11-23 12:16:37,998 INFO L273 TraceCheckUtils]: 120: Hoare triple {11484#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11484#false} is VALID [2018-11-23 12:16:37,998 INFO L273 TraceCheckUtils]: 121: Hoare triple {11484#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11484#false} is VALID [2018-11-23 12:16:37,998 INFO L273 TraceCheckUtils]: 122: Hoare triple {11484#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11484#false} is VALID [2018-11-23 12:16:37,998 INFO L273 TraceCheckUtils]: 123: Hoare triple {11484#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11484#false} is VALID [2018-11-23 12:16:37,999 INFO L273 TraceCheckUtils]: 124: Hoare triple {11484#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11484#false} is VALID [2018-11-23 12:16:37,999 INFO L273 TraceCheckUtils]: 125: Hoare triple {11484#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11484#false} is VALID [2018-11-23 12:16:37,999 INFO L273 TraceCheckUtils]: 126: Hoare triple {11484#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11484#false} is VALID [2018-11-23 12:16:37,999 INFO L273 TraceCheckUtils]: 127: Hoare triple {11484#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11484#false} is VALID [2018-11-23 12:16:37,999 INFO L273 TraceCheckUtils]: 128: Hoare triple {11484#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11484#false} is VALID [2018-11-23 12:16:37,999 INFO L273 TraceCheckUtils]: 129: Hoare triple {11484#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11484#false} is VALID [2018-11-23 12:16:38,000 INFO L273 TraceCheckUtils]: 130: Hoare triple {11484#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11484#false} is VALID [2018-11-23 12:16:38,000 INFO L273 TraceCheckUtils]: 131: Hoare triple {11484#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11484#false} is VALID [2018-11-23 12:16:38,000 INFO L273 TraceCheckUtils]: 132: Hoare triple {11484#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11484#false} is VALID [2018-11-23 12:16:38,000 INFO L273 TraceCheckUtils]: 133: Hoare triple {11484#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11484#false} is VALID [2018-11-23 12:16:38,000 INFO L273 TraceCheckUtils]: 134: Hoare triple {11484#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11484#false} is VALID [2018-11-23 12:16:38,000 INFO L273 TraceCheckUtils]: 135: Hoare triple {11484#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11484#false} is VALID [2018-11-23 12:16:38,000 INFO L273 TraceCheckUtils]: 136: Hoare triple {11484#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11484#false} is VALID [2018-11-23 12:16:38,001 INFO L273 TraceCheckUtils]: 137: Hoare triple {11484#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {11484#false} is VALID [2018-11-23 12:16:38,001 INFO L273 TraceCheckUtils]: 138: Hoare triple {11484#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {11484#false} is VALID [2018-11-23 12:16:38,001 INFO L273 TraceCheckUtils]: 139: Hoare triple {11484#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {11484#false} is VALID [2018-11-23 12:16:38,001 INFO L273 TraceCheckUtils]: 140: Hoare triple {11484#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {11484#false} is VALID [2018-11-23 12:16:38,001 INFO L273 TraceCheckUtils]: 141: Hoare triple {11484#false} assume !(~i~0 < 20); {11484#false} is VALID [2018-11-23 12:16:38,001 INFO L273 TraceCheckUtils]: 142: Hoare triple {11484#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {11484#false} is VALID [2018-11-23 12:16:38,001 INFO L273 TraceCheckUtils]: 143: Hoare triple {11484#false} assume true; {11484#false} is VALID [2018-11-23 12:16:38,001 INFO L268 TraceCheckUtils]: 144: Hoare quadruple {11484#false} {11484#false} #81#return; {11484#false} is VALID [2018-11-23 12:16:38,002 INFO L273 TraceCheckUtils]: 145: Hoare triple {11484#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {11484#false} is VALID [2018-11-23 12:16:38,002 INFO L273 TraceCheckUtils]: 146: Hoare triple {11484#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {11484#false} is VALID [2018-11-23 12:16:38,002 INFO L273 TraceCheckUtils]: 147: Hoare triple {11484#false} assume !false; {11484#false} is VALID [2018-11-23 12:16:38,011 INFO L134 CoverageAnalysis]: Checked inductivity of 1021 backedges. 322 proven. 16 refuted. 0 times theorem prover too weak. 683 trivial. 0 not checked. [2018-11-23 12:16:38,037 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:16:38,037 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 7] total 26 [2018-11-23 12:16:38,038 INFO L78 Accepts]: Start accepts. Automaton has 26 states. Word has length 148 [2018-11-23 12:16:38,038 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:38,038 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 26 states. [2018-11-23 12:16:38,133 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:16:38,133 INFO L459 AbstractCegarLoop]: Interpolant automaton has 26 states [2018-11-23 12:16:38,134 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2018-11-23 12:16:38,134 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=230, Invalid=420, Unknown=0, NotChecked=0, Total=650 [2018-11-23 12:16:38,134 INFO L87 Difference]: Start difference. First operand 91 states and 101 transitions. Second operand 26 states. [2018-11-23 12:16:38,815 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:38,815 INFO L93 Difference]: Finished difference Result 145 states and 166 transitions. [2018-11-23 12:16:38,815 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2018-11-23 12:16:38,815 INFO L78 Accepts]: Start accepts. Automaton has 26 states. Word has length 148 [2018-11-23 12:16:38,815 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:38,816 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 26 states. [2018-11-23 12:16:38,817 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 107 transitions. [2018-11-23 12:16:38,817 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 26 states. [2018-11-23 12:16:38,818 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 107 transitions. [2018-11-23 12:16:38,818 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 26 states and 107 transitions. [2018-11-23 12:16:38,941 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:16:38,943 INFO L225 Difference]: With dead ends: 145 [2018-11-23 12:16:38,944 INFO L226 Difference]: Without dead ends: 97 [2018-11-23 12:16:38,945 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 168 GetRequests, 144 SyntacticMatches, 0 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 90 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=230, Invalid=420, Unknown=0, NotChecked=0, Total=650 [2018-11-23 12:16:38,945 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 97 states. [2018-11-23 12:16:38,974 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 97 to 95. [2018-11-23 12:16:38,975 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:38,975 INFO L82 GeneralOperation]: Start isEquivalent. First operand 97 states. Second operand 95 states. [2018-11-23 12:16:38,975 INFO L74 IsIncluded]: Start isIncluded. First operand 97 states. Second operand 95 states. [2018-11-23 12:16:38,975 INFO L87 Difference]: Start difference. First operand 97 states. Second operand 95 states. [2018-11-23 12:16:38,978 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:38,978 INFO L93 Difference]: Finished difference Result 97 states and 107 transitions. [2018-11-23 12:16:38,978 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 107 transitions. [2018-11-23 12:16:38,979 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:38,979 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:38,979 INFO L74 IsIncluded]: Start isIncluded. First operand 95 states. Second operand 97 states. [2018-11-23 12:16:38,979 INFO L87 Difference]: Start difference. First operand 95 states. Second operand 97 states. [2018-11-23 12:16:38,981 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:38,981 INFO L93 Difference]: Finished difference Result 97 states and 107 transitions. [2018-11-23 12:16:38,981 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 107 transitions. [2018-11-23 12:16:38,982 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:38,982 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:38,982 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:38,982 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:38,982 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 95 states. [2018-11-23 12:16:38,984 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 95 states to 95 states and 105 transitions. [2018-11-23 12:16:38,984 INFO L78 Accepts]: Start accepts. Automaton has 95 states and 105 transitions. Word has length 148 [2018-11-23 12:16:38,985 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:38,985 INFO L480 AbstractCegarLoop]: Abstraction has 95 states and 105 transitions. [2018-11-23 12:16:38,985 INFO L481 AbstractCegarLoop]: Interpolant automaton has 26 states. [2018-11-23 12:16:38,985 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 105 transitions. [2018-11-23 12:16:38,986 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 153 [2018-11-23 12:16:38,986 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:38,987 INFO L402 BasicCegarLoop]: trace histogram [19, 19, 18, 18, 18, 18, 5, 5, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:38,987 INFO L423 AbstractCegarLoop]: === Iteration 22 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:38,987 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:38,987 INFO L82 PathProgramCache]: Analyzing trace with hash -462803735, now seen corresponding path program 19 times [2018-11-23 12:16:38,987 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:38,987 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:38,988 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:38,988 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:16:38,988 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:39,016 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:39,939 INFO L256 TraceCheckUtils]: 0: Hoare triple {12484#true} call ULTIMATE.init(); {12484#true} is VALID [2018-11-23 12:16:39,939 INFO L273 TraceCheckUtils]: 1: Hoare triple {12484#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {12484#true} is VALID [2018-11-23 12:16:39,939 INFO L273 TraceCheckUtils]: 2: Hoare triple {12484#true} assume true; {12484#true} is VALID [2018-11-23 12:16:39,940 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {12484#true} {12484#true} #73#return; {12484#true} is VALID [2018-11-23 12:16:39,940 INFO L256 TraceCheckUtils]: 4: Hoare triple {12484#true} call #t~ret14 := main(); {12484#true} is VALID [2018-11-23 12:16:39,940 INFO L273 TraceCheckUtils]: 5: Hoare triple {12484#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {12486#(= main_~i~1 0)} is VALID [2018-11-23 12:16:39,940 INFO L273 TraceCheckUtils]: 6: Hoare triple {12486#(= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12486#(= main_~i~1 0)} is VALID [2018-11-23 12:16:39,941 INFO L273 TraceCheckUtils]: 7: Hoare triple {12486#(= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12487#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:39,941 INFO L273 TraceCheckUtils]: 8: Hoare triple {12487#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12487#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:39,942 INFO L273 TraceCheckUtils]: 9: Hoare triple {12487#(<= main_~i~1 1)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12488#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:39,942 INFO L273 TraceCheckUtils]: 10: Hoare triple {12488#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12488#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:39,943 INFO L273 TraceCheckUtils]: 11: Hoare triple {12488#(<= main_~i~1 2)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12489#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:39,943 INFO L273 TraceCheckUtils]: 12: Hoare triple {12489#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12489#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:39,944 INFO L273 TraceCheckUtils]: 13: Hoare triple {12489#(<= main_~i~1 3)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12490#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:39,945 INFO L273 TraceCheckUtils]: 14: Hoare triple {12490#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12490#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:39,946 INFO L273 TraceCheckUtils]: 15: Hoare triple {12490#(<= main_~i~1 4)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12491#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:39,946 INFO L273 TraceCheckUtils]: 16: Hoare triple {12491#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12491#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:39,947 INFO L273 TraceCheckUtils]: 17: Hoare triple {12491#(<= main_~i~1 5)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12492#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:39,948 INFO L273 TraceCheckUtils]: 18: Hoare triple {12492#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12492#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:39,948 INFO L273 TraceCheckUtils]: 19: Hoare triple {12492#(<= main_~i~1 6)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12493#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:39,949 INFO L273 TraceCheckUtils]: 20: Hoare triple {12493#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12493#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:39,950 INFO L273 TraceCheckUtils]: 21: Hoare triple {12493#(<= main_~i~1 7)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12494#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:39,950 INFO L273 TraceCheckUtils]: 22: Hoare triple {12494#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12494#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:39,951 INFO L273 TraceCheckUtils]: 23: Hoare triple {12494#(<= main_~i~1 8)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12495#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:39,952 INFO L273 TraceCheckUtils]: 24: Hoare triple {12495#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12495#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:39,953 INFO L273 TraceCheckUtils]: 25: Hoare triple {12495#(<= main_~i~1 9)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12496#(<= main_~i~1 10)} is VALID [2018-11-23 12:16:39,953 INFO L273 TraceCheckUtils]: 26: Hoare triple {12496#(<= main_~i~1 10)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12496#(<= main_~i~1 10)} is VALID [2018-11-23 12:16:39,954 INFO L273 TraceCheckUtils]: 27: Hoare triple {12496#(<= main_~i~1 10)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12497#(<= main_~i~1 11)} is VALID [2018-11-23 12:16:39,955 INFO L273 TraceCheckUtils]: 28: Hoare triple {12497#(<= main_~i~1 11)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12497#(<= main_~i~1 11)} is VALID [2018-11-23 12:16:39,956 INFO L273 TraceCheckUtils]: 29: Hoare triple {12497#(<= main_~i~1 11)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12498#(<= main_~i~1 12)} is VALID [2018-11-23 12:16:39,956 INFO L273 TraceCheckUtils]: 30: Hoare triple {12498#(<= main_~i~1 12)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12498#(<= main_~i~1 12)} is VALID [2018-11-23 12:16:39,957 INFO L273 TraceCheckUtils]: 31: Hoare triple {12498#(<= main_~i~1 12)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12499#(<= main_~i~1 13)} is VALID [2018-11-23 12:16:39,958 INFO L273 TraceCheckUtils]: 32: Hoare triple {12499#(<= main_~i~1 13)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12499#(<= main_~i~1 13)} is VALID [2018-11-23 12:16:39,959 INFO L273 TraceCheckUtils]: 33: Hoare triple {12499#(<= main_~i~1 13)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12500#(<= main_~i~1 14)} is VALID [2018-11-23 12:16:39,959 INFO L273 TraceCheckUtils]: 34: Hoare triple {12500#(<= main_~i~1 14)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12500#(<= main_~i~1 14)} is VALID [2018-11-23 12:16:39,960 INFO L273 TraceCheckUtils]: 35: Hoare triple {12500#(<= main_~i~1 14)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12501#(<= main_~i~1 15)} is VALID [2018-11-23 12:16:39,960 INFO L273 TraceCheckUtils]: 36: Hoare triple {12501#(<= main_~i~1 15)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12501#(<= main_~i~1 15)} is VALID [2018-11-23 12:16:39,961 INFO L273 TraceCheckUtils]: 37: Hoare triple {12501#(<= main_~i~1 15)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12502#(<= main_~i~1 16)} is VALID [2018-11-23 12:16:39,962 INFO L273 TraceCheckUtils]: 38: Hoare triple {12502#(<= main_~i~1 16)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12502#(<= main_~i~1 16)} is VALID [2018-11-23 12:16:39,963 INFO L273 TraceCheckUtils]: 39: Hoare triple {12502#(<= main_~i~1 16)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12503#(<= main_~i~1 17)} is VALID [2018-11-23 12:16:39,963 INFO L273 TraceCheckUtils]: 40: Hoare triple {12503#(<= main_~i~1 17)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12503#(<= main_~i~1 17)} is VALID [2018-11-23 12:16:39,964 INFO L273 TraceCheckUtils]: 41: Hoare triple {12503#(<= main_~i~1 17)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12504#(<= main_~i~1 18)} is VALID [2018-11-23 12:16:39,965 INFO L273 TraceCheckUtils]: 42: Hoare triple {12504#(<= main_~i~1 18)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12504#(<= main_~i~1 18)} is VALID [2018-11-23 12:16:39,965 INFO L273 TraceCheckUtils]: 43: Hoare triple {12504#(<= main_~i~1 18)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12505#(<= main_~i~1 19)} is VALID [2018-11-23 12:16:39,966 INFO L273 TraceCheckUtils]: 44: Hoare triple {12505#(<= main_~i~1 19)} assume !(~i~1 < 20); {12485#false} is VALID [2018-11-23 12:16:39,966 INFO L256 TraceCheckUtils]: 45: Hoare triple {12485#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {12484#true} is VALID [2018-11-23 12:16:39,967 INFO L273 TraceCheckUtils]: 46: Hoare triple {12484#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {12484#true} is VALID [2018-11-23 12:16:39,967 INFO L273 TraceCheckUtils]: 47: Hoare triple {12484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12484#true} is VALID [2018-11-23 12:16:39,967 INFO L273 TraceCheckUtils]: 48: Hoare triple {12484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12484#true} is VALID [2018-11-23 12:16:39,967 INFO L273 TraceCheckUtils]: 49: Hoare triple {12484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12484#true} is VALID [2018-11-23 12:16:39,968 INFO L273 TraceCheckUtils]: 50: Hoare triple {12484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12484#true} is VALID [2018-11-23 12:16:39,968 INFO L273 TraceCheckUtils]: 51: Hoare triple {12484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12484#true} is VALID [2018-11-23 12:16:39,968 INFO L273 TraceCheckUtils]: 52: Hoare triple {12484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12484#true} is VALID [2018-11-23 12:16:39,968 INFO L273 TraceCheckUtils]: 53: Hoare triple {12484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12484#true} is VALID [2018-11-23 12:16:39,969 INFO L273 TraceCheckUtils]: 54: Hoare triple {12484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12484#true} is VALID [2018-11-23 12:16:39,969 INFO L273 TraceCheckUtils]: 55: Hoare triple {12484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12484#true} is VALID [2018-11-23 12:16:39,969 INFO L273 TraceCheckUtils]: 56: Hoare triple {12484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12484#true} is VALID [2018-11-23 12:16:39,969 INFO L273 TraceCheckUtils]: 57: Hoare triple {12484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12484#true} is VALID [2018-11-23 12:16:39,969 INFO L273 TraceCheckUtils]: 58: Hoare triple {12484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12484#true} is VALID [2018-11-23 12:16:39,969 INFO L273 TraceCheckUtils]: 59: Hoare triple {12484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12484#true} is VALID [2018-11-23 12:16:39,969 INFO L273 TraceCheckUtils]: 60: Hoare triple {12484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12484#true} is VALID [2018-11-23 12:16:39,970 INFO L273 TraceCheckUtils]: 61: Hoare triple {12484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12484#true} is VALID [2018-11-23 12:16:39,970 INFO L273 TraceCheckUtils]: 62: Hoare triple {12484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12484#true} is VALID [2018-11-23 12:16:39,970 INFO L273 TraceCheckUtils]: 63: Hoare triple {12484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12484#true} is VALID [2018-11-23 12:16:39,970 INFO L273 TraceCheckUtils]: 64: Hoare triple {12484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12484#true} is VALID [2018-11-23 12:16:39,970 INFO L273 TraceCheckUtils]: 65: Hoare triple {12484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12484#true} is VALID [2018-11-23 12:16:39,970 INFO L273 TraceCheckUtils]: 66: Hoare triple {12484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12484#true} is VALID [2018-11-23 12:16:39,970 INFO L273 TraceCheckUtils]: 67: Hoare triple {12484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12484#true} is VALID [2018-11-23 12:16:39,971 INFO L273 TraceCheckUtils]: 68: Hoare triple {12484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12484#true} is VALID [2018-11-23 12:16:39,971 INFO L273 TraceCheckUtils]: 69: Hoare triple {12484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12484#true} is VALID [2018-11-23 12:16:39,971 INFO L273 TraceCheckUtils]: 70: Hoare triple {12484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12484#true} is VALID [2018-11-23 12:16:39,971 INFO L273 TraceCheckUtils]: 71: Hoare triple {12484#true} assume !(~i~0 < 20); {12484#true} is VALID [2018-11-23 12:16:39,971 INFO L273 TraceCheckUtils]: 72: Hoare triple {12484#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {12484#true} is VALID [2018-11-23 12:16:39,971 INFO L273 TraceCheckUtils]: 73: Hoare triple {12484#true} assume true; {12484#true} is VALID [2018-11-23 12:16:39,972 INFO L268 TraceCheckUtils]: 74: Hoare quadruple {12484#true} {12485#false} #77#return; {12485#false} is VALID [2018-11-23 12:16:39,972 INFO L273 TraceCheckUtils]: 75: Hoare triple {12485#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {12485#false} is VALID [2018-11-23 12:16:39,972 INFO L256 TraceCheckUtils]: 76: Hoare triple {12485#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {12484#true} is VALID [2018-11-23 12:16:39,972 INFO L273 TraceCheckUtils]: 77: Hoare triple {12484#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {12484#true} is VALID [2018-11-23 12:16:39,972 INFO L273 TraceCheckUtils]: 78: Hoare triple {12484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12484#true} is VALID [2018-11-23 12:16:39,972 INFO L273 TraceCheckUtils]: 79: Hoare triple {12484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12484#true} is VALID [2018-11-23 12:16:39,972 INFO L273 TraceCheckUtils]: 80: Hoare triple {12484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12484#true} is VALID [2018-11-23 12:16:39,973 INFO L273 TraceCheckUtils]: 81: Hoare triple {12484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12484#true} is VALID [2018-11-23 12:16:39,973 INFO L273 TraceCheckUtils]: 82: Hoare triple {12484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12484#true} is VALID [2018-11-23 12:16:39,973 INFO L273 TraceCheckUtils]: 83: Hoare triple {12484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12484#true} is VALID [2018-11-23 12:16:39,973 INFO L273 TraceCheckUtils]: 84: Hoare triple {12484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12484#true} is VALID [2018-11-23 12:16:39,973 INFO L273 TraceCheckUtils]: 85: Hoare triple {12484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12484#true} is VALID [2018-11-23 12:16:39,973 INFO L273 TraceCheckUtils]: 86: Hoare triple {12484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12484#true} is VALID [2018-11-23 12:16:39,973 INFO L273 TraceCheckUtils]: 87: Hoare triple {12484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12484#true} is VALID [2018-11-23 12:16:39,973 INFO L273 TraceCheckUtils]: 88: Hoare triple {12484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12484#true} is VALID [2018-11-23 12:16:39,974 INFO L273 TraceCheckUtils]: 89: Hoare triple {12484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12484#true} is VALID [2018-11-23 12:16:39,974 INFO L273 TraceCheckUtils]: 90: Hoare triple {12484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12484#true} is VALID [2018-11-23 12:16:39,974 INFO L273 TraceCheckUtils]: 91: Hoare triple {12484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12484#true} is VALID [2018-11-23 12:16:39,974 INFO L273 TraceCheckUtils]: 92: Hoare triple {12484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12484#true} is VALID [2018-11-23 12:16:39,974 INFO L273 TraceCheckUtils]: 93: Hoare triple {12484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12484#true} is VALID [2018-11-23 12:16:39,975 INFO L273 TraceCheckUtils]: 94: Hoare triple {12484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12484#true} is VALID [2018-11-23 12:16:39,975 INFO L273 TraceCheckUtils]: 95: Hoare triple {12484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12484#true} is VALID [2018-11-23 12:16:39,975 INFO L273 TraceCheckUtils]: 96: Hoare triple {12484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12484#true} is VALID [2018-11-23 12:16:39,975 INFO L273 TraceCheckUtils]: 97: Hoare triple {12484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12484#true} is VALID [2018-11-23 12:16:39,975 INFO L273 TraceCheckUtils]: 98: Hoare triple {12484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12484#true} is VALID [2018-11-23 12:16:39,976 INFO L273 TraceCheckUtils]: 99: Hoare triple {12484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12484#true} is VALID [2018-11-23 12:16:39,976 INFO L273 TraceCheckUtils]: 100: Hoare triple {12484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12484#true} is VALID [2018-11-23 12:16:39,976 INFO L273 TraceCheckUtils]: 101: Hoare triple {12484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12484#true} is VALID [2018-11-23 12:16:39,976 INFO L273 TraceCheckUtils]: 102: Hoare triple {12484#true} assume !(~i~0 < 20); {12484#true} is VALID [2018-11-23 12:16:39,976 INFO L273 TraceCheckUtils]: 103: Hoare triple {12484#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {12484#true} is VALID [2018-11-23 12:16:39,977 INFO L273 TraceCheckUtils]: 104: Hoare triple {12484#true} assume true; {12484#true} is VALID [2018-11-23 12:16:39,977 INFO L268 TraceCheckUtils]: 105: Hoare quadruple {12484#true} {12485#false} #79#return; {12485#false} is VALID [2018-11-23 12:16:39,977 INFO L273 TraceCheckUtils]: 106: Hoare triple {12485#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {12485#false} is VALID [2018-11-23 12:16:39,977 INFO L273 TraceCheckUtils]: 107: Hoare triple {12485#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {12485#false} is VALID [2018-11-23 12:16:39,977 INFO L273 TraceCheckUtils]: 108: Hoare triple {12485#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {12485#false} is VALID [2018-11-23 12:16:39,978 INFO L273 TraceCheckUtils]: 109: Hoare triple {12485#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {12485#false} is VALID [2018-11-23 12:16:39,978 INFO L273 TraceCheckUtils]: 110: Hoare triple {12485#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {12485#false} is VALID [2018-11-23 12:16:39,978 INFO L273 TraceCheckUtils]: 111: Hoare triple {12485#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {12485#false} is VALID [2018-11-23 12:16:39,978 INFO L273 TraceCheckUtils]: 112: Hoare triple {12485#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {12485#false} is VALID [2018-11-23 12:16:39,978 INFO L273 TraceCheckUtils]: 113: Hoare triple {12485#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {12485#false} is VALID [2018-11-23 12:16:39,978 INFO L273 TraceCheckUtils]: 114: Hoare triple {12485#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {12485#false} is VALID [2018-11-23 12:16:39,978 INFO L273 TraceCheckUtils]: 115: Hoare triple {12485#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {12485#false} is VALID [2018-11-23 12:16:39,979 INFO L273 TraceCheckUtils]: 116: Hoare triple {12485#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {12485#false} is VALID [2018-11-23 12:16:39,979 INFO L273 TraceCheckUtils]: 117: Hoare triple {12485#false} assume !(~i~2 < 19); {12485#false} is VALID [2018-11-23 12:16:39,979 INFO L273 TraceCheckUtils]: 118: Hoare triple {12485#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {12485#false} is VALID [2018-11-23 12:16:39,979 INFO L256 TraceCheckUtils]: 119: Hoare triple {12485#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {12484#true} is VALID [2018-11-23 12:16:39,979 INFO L273 TraceCheckUtils]: 120: Hoare triple {12484#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {12484#true} is VALID [2018-11-23 12:16:39,979 INFO L273 TraceCheckUtils]: 121: Hoare triple {12484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12484#true} is VALID [2018-11-23 12:16:39,980 INFO L273 TraceCheckUtils]: 122: Hoare triple {12484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12484#true} is VALID [2018-11-23 12:16:39,980 INFO L273 TraceCheckUtils]: 123: Hoare triple {12484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12484#true} is VALID [2018-11-23 12:16:39,980 INFO L273 TraceCheckUtils]: 124: Hoare triple {12484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12484#true} is VALID [2018-11-23 12:16:39,980 INFO L273 TraceCheckUtils]: 125: Hoare triple {12484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12484#true} is VALID [2018-11-23 12:16:39,980 INFO L273 TraceCheckUtils]: 126: Hoare triple {12484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12484#true} is VALID [2018-11-23 12:16:39,980 INFO L273 TraceCheckUtils]: 127: Hoare triple {12484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12484#true} is VALID [2018-11-23 12:16:39,981 INFO L273 TraceCheckUtils]: 128: Hoare triple {12484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12484#true} is VALID [2018-11-23 12:16:39,981 INFO L273 TraceCheckUtils]: 129: Hoare triple {12484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12484#true} is VALID [2018-11-23 12:16:39,981 INFO L273 TraceCheckUtils]: 130: Hoare triple {12484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12484#true} is VALID [2018-11-23 12:16:39,981 INFO L273 TraceCheckUtils]: 131: Hoare triple {12484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12484#true} is VALID [2018-11-23 12:16:39,981 INFO L273 TraceCheckUtils]: 132: Hoare triple {12484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12484#true} is VALID [2018-11-23 12:16:39,982 INFO L273 TraceCheckUtils]: 133: Hoare triple {12484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12484#true} is VALID [2018-11-23 12:16:39,982 INFO L273 TraceCheckUtils]: 134: Hoare triple {12484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12484#true} is VALID [2018-11-23 12:16:39,982 INFO L273 TraceCheckUtils]: 135: Hoare triple {12484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12484#true} is VALID [2018-11-23 12:16:39,982 INFO L273 TraceCheckUtils]: 136: Hoare triple {12484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12484#true} is VALID [2018-11-23 12:16:39,982 INFO L273 TraceCheckUtils]: 137: Hoare triple {12484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12484#true} is VALID [2018-11-23 12:16:39,982 INFO L273 TraceCheckUtils]: 138: Hoare triple {12484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12484#true} is VALID [2018-11-23 12:16:39,983 INFO L273 TraceCheckUtils]: 139: Hoare triple {12484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12484#true} is VALID [2018-11-23 12:16:39,983 INFO L273 TraceCheckUtils]: 140: Hoare triple {12484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12484#true} is VALID [2018-11-23 12:16:39,983 INFO L273 TraceCheckUtils]: 141: Hoare triple {12484#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12484#true} is VALID [2018-11-23 12:16:39,983 INFO L273 TraceCheckUtils]: 142: Hoare triple {12484#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12484#true} is VALID [2018-11-23 12:16:39,983 INFO L273 TraceCheckUtils]: 143: Hoare triple {12484#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12484#true} is VALID [2018-11-23 12:16:39,983 INFO L273 TraceCheckUtils]: 144: Hoare triple {12484#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12484#true} is VALID [2018-11-23 12:16:39,983 INFO L273 TraceCheckUtils]: 145: Hoare triple {12484#true} assume !(~i~0 < 20); {12484#true} is VALID [2018-11-23 12:16:39,984 INFO L273 TraceCheckUtils]: 146: Hoare triple {12484#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {12484#true} is VALID [2018-11-23 12:16:39,984 INFO L273 TraceCheckUtils]: 147: Hoare triple {12484#true} assume true; {12484#true} is VALID [2018-11-23 12:16:39,984 INFO L268 TraceCheckUtils]: 148: Hoare quadruple {12484#true} {12485#false} #81#return; {12485#false} is VALID [2018-11-23 12:16:39,984 INFO L273 TraceCheckUtils]: 149: Hoare triple {12485#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {12485#false} is VALID [2018-11-23 12:16:39,984 INFO L273 TraceCheckUtils]: 150: Hoare triple {12485#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {12485#false} is VALID [2018-11-23 12:16:39,984 INFO L273 TraceCheckUtils]: 151: Hoare triple {12485#false} assume !false; {12485#false} is VALID [2018-11-23 12:16:40,005 INFO L134 CoverageAnalysis]: Checked inductivity of 1067 backedges. 0 proven. 361 refuted. 0 times theorem prover too weak. 706 trivial. 0 not checked. [2018-11-23 12:16:40,005 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:16:40,006 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 21 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 21 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:16:40,034 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:16:40,111 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:40,144 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:40,146 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:40,429 INFO L256 TraceCheckUtils]: 0: Hoare triple {12484#true} call ULTIMATE.init(); {12484#true} is VALID [2018-11-23 12:16:40,430 INFO L273 TraceCheckUtils]: 1: Hoare triple {12484#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {12484#true} is VALID [2018-11-23 12:16:40,430 INFO L273 TraceCheckUtils]: 2: Hoare triple {12484#true} assume true; {12484#true} is VALID [2018-11-23 12:16:40,430 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {12484#true} {12484#true} #73#return; {12484#true} is VALID [2018-11-23 12:16:40,430 INFO L256 TraceCheckUtils]: 4: Hoare triple {12484#true} call #t~ret14 := main(); {12484#true} is VALID [2018-11-23 12:16:40,431 INFO L273 TraceCheckUtils]: 5: Hoare triple {12484#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {12524#(<= main_~i~1 0)} is VALID [2018-11-23 12:16:40,432 INFO L273 TraceCheckUtils]: 6: Hoare triple {12524#(<= main_~i~1 0)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12524#(<= main_~i~1 0)} is VALID [2018-11-23 12:16:40,432 INFO L273 TraceCheckUtils]: 7: Hoare triple {12524#(<= main_~i~1 0)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12487#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:40,432 INFO L273 TraceCheckUtils]: 8: Hoare triple {12487#(<= main_~i~1 1)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12487#(<= main_~i~1 1)} is VALID [2018-11-23 12:16:40,433 INFO L273 TraceCheckUtils]: 9: Hoare triple {12487#(<= main_~i~1 1)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12488#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:40,433 INFO L273 TraceCheckUtils]: 10: Hoare triple {12488#(<= main_~i~1 2)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12488#(<= main_~i~1 2)} is VALID [2018-11-23 12:16:40,434 INFO L273 TraceCheckUtils]: 11: Hoare triple {12488#(<= main_~i~1 2)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12489#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:40,434 INFO L273 TraceCheckUtils]: 12: Hoare triple {12489#(<= main_~i~1 3)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12489#(<= main_~i~1 3)} is VALID [2018-11-23 12:16:40,434 INFO L273 TraceCheckUtils]: 13: Hoare triple {12489#(<= main_~i~1 3)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12490#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:40,435 INFO L273 TraceCheckUtils]: 14: Hoare triple {12490#(<= main_~i~1 4)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12490#(<= main_~i~1 4)} is VALID [2018-11-23 12:16:40,435 INFO L273 TraceCheckUtils]: 15: Hoare triple {12490#(<= main_~i~1 4)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12491#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:40,436 INFO L273 TraceCheckUtils]: 16: Hoare triple {12491#(<= main_~i~1 5)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12491#(<= main_~i~1 5)} is VALID [2018-11-23 12:16:40,437 INFO L273 TraceCheckUtils]: 17: Hoare triple {12491#(<= main_~i~1 5)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12492#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:40,437 INFO L273 TraceCheckUtils]: 18: Hoare triple {12492#(<= main_~i~1 6)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12492#(<= main_~i~1 6)} is VALID [2018-11-23 12:16:40,438 INFO L273 TraceCheckUtils]: 19: Hoare triple {12492#(<= main_~i~1 6)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12493#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:40,438 INFO L273 TraceCheckUtils]: 20: Hoare triple {12493#(<= main_~i~1 7)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12493#(<= main_~i~1 7)} is VALID [2018-11-23 12:16:40,439 INFO L273 TraceCheckUtils]: 21: Hoare triple {12493#(<= main_~i~1 7)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12494#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:40,440 INFO L273 TraceCheckUtils]: 22: Hoare triple {12494#(<= main_~i~1 8)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12494#(<= main_~i~1 8)} is VALID [2018-11-23 12:16:40,440 INFO L273 TraceCheckUtils]: 23: Hoare triple {12494#(<= main_~i~1 8)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12495#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:40,441 INFO L273 TraceCheckUtils]: 24: Hoare triple {12495#(<= main_~i~1 9)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12495#(<= main_~i~1 9)} is VALID [2018-11-23 12:16:40,442 INFO L273 TraceCheckUtils]: 25: Hoare triple {12495#(<= main_~i~1 9)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12496#(<= main_~i~1 10)} is VALID [2018-11-23 12:16:40,442 INFO L273 TraceCheckUtils]: 26: Hoare triple {12496#(<= main_~i~1 10)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12496#(<= main_~i~1 10)} is VALID [2018-11-23 12:16:40,443 INFO L273 TraceCheckUtils]: 27: Hoare triple {12496#(<= main_~i~1 10)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12497#(<= main_~i~1 11)} is VALID [2018-11-23 12:16:40,443 INFO L273 TraceCheckUtils]: 28: Hoare triple {12497#(<= main_~i~1 11)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12497#(<= main_~i~1 11)} is VALID [2018-11-23 12:16:40,444 INFO L273 TraceCheckUtils]: 29: Hoare triple {12497#(<= main_~i~1 11)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12498#(<= main_~i~1 12)} is VALID [2018-11-23 12:16:40,445 INFO L273 TraceCheckUtils]: 30: Hoare triple {12498#(<= main_~i~1 12)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12498#(<= main_~i~1 12)} is VALID [2018-11-23 12:16:40,455 INFO L273 TraceCheckUtils]: 31: Hoare triple {12498#(<= main_~i~1 12)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12499#(<= main_~i~1 13)} is VALID [2018-11-23 12:16:40,455 INFO L273 TraceCheckUtils]: 32: Hoare triple {12499#(<= main_~i~1 13)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12499#(<= main_~i~1 13)} is VALID [2018-11-23 12:16:40,456 INFO L273 TraceCheckUtils]: 33: Hoare triple {12499#(<= main_~i~1 13)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12500#(<= main_~i~1 14)} is VALID [2018-11-23 12:16:40,456 INFO L273 TraceCheckUtils]: 34: Hoare triple {12500#(<= main_~i~1 14)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12500#(<= main_~i~1 14)} is VALID [2018-11-23 12:16:40,457 INFO L273 TraceCheckUtils]: 35: Hoare triple {12500#(<= main_~i~1 14)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12501#(<= main_~i~1 15)} is VALID [2018-11-23 12:16:40,457 INFO L273 TraceCheckUtils]: 36: Hoare triple {12501#(<= main_~i~1 15)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12501#(<= main_~i~1 15)} is VALID [2018-11-23 12:16:40,458 INFO L273 TraceCheckUtils]: 37: Hoare triple {12501#(<= main_~i~1 15)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12502#(<= main_~i~1 16)} is VALID [2018-11-23 12:16:40,458 INFO L273 TraceCheckUtils]: 38: Hoare triple {12502#(<= main_~i~1 16)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12502#(<= main_~i~1 16)} is VALID [2018-11-23 12:16:40,458 INFO L273 TraceCheckUtils]: 39: Hoare triple {12502#(<= main_~i~1 16)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12503#(<= main_~i~1 17)} is VALID [2018-11-23 12:16:40,459 INFO L273 TraceCheckUtils]: 40: Hoare triple {12503#(<= main_~i~1 17)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12503#(<= main_~i~1 17)} is VALID [2018-11-23 12:16:40,459 INFO L273 TraceCheckUtils]: 41: Hoare triple {12503#(<= main_~i~1 17)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12504#(<= main_~i~1 18)} is VALID [2018-11-23 12:16:40,460 INFO L273 TraceCheckUtils]: 42: Hoare triple {12504#(<= main_~i~1 18)} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {12504#(<= main_~i~1 18)} is VALID [2018-11-23 12:16:40,460 INFO L273 TraceCheckUtils]: 43: Hoare triple {12504#(<= main_~i~1 18)} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {12505#(<= main_~i~1 19)} is VALID [2018-11-23 12:16:40,461 INFO L273 TraceCheckUtils]: 44: Hoare triple {12505#(<= main_~i~1 19)} assume !(~i~1 < 20); {12485#false} is VALID [2018-11-23 12:16:40,461 INFO L256 TraceCheckUtils]: 45: Hoare triple {12485#false} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {12485#false} is VALID [2018-11-23 12:16:40,462 INFO L273 TraceCheckUtils]: 46: Hoare triple {12485#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {12485#false} is VALID [2018-11-23 12:16:40,462 INFO L273 TraceCheckUtils]: 47: Hoare triple {12485#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12485#false} is VALID [2018-11-23 12:16:40,462 INFO L273 TraceCheckUtils]: 48: Hoare triple {12485#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12485#false} is VALID [2018-11-23 12:16:40,462 INFO L273 TraceCheckUtils]: 49: Hoare triple {12485#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12485#false} is VALID [2018-11-23 12:16:40,462 INFO L273 TraceCheckUtils]: 50: Hoare triple {12485#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12485#false} is VALID [2018-11-23 12:16:40,462 INFO L273 TraceCheckUtils]: 51: Hoare triple {12485#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12485#false} is VALID [2018-11-23 12:16:40,463 INFO L273 TraceCheckUtils]: 52: Hoare triple {12485#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12485#false} is VALID [2018-11-23 12:16:40,463 INFO L273 TraceCheckUtils]: 53: Hoare triple {12485#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12485#false} is VALID [2018-11-23 12:16:40,463 INFO L273 TraceCheckUtils]: 54: Hoare triple {12485#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12485#false} is VALID [2018-11-23 12:16:40,463 INFO L273 TraceCheckUtils]: 55: Hoare triple {12485#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12485#false} is VALID [2018-11-23 12:16:40,463 INFO L273 TraceCheckUtils]: 56: Hoare triple {12485#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12485#false} is VALID [2018-11-23 12:16:40,464 INFO L273 TraceCheckUtils]: 57: Hoare triple {12485#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12485#false} is VALID [2018-11-23 12:16:40,464 INFO L273 TraceCheckUtils]: 58: Hoare triple {12485#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12485#false} is VALID [2018-11-23 12:16:40,464 INFO L273 TraceCheckUtils]: 59: Hoare triple {12485#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12485#false} is VALID [2018-11-23 12:16:40,464 INFO L273 TraceCheckUtils]: 60: Hoare triple {12485#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12485#false} is VALID [2018-11-23 12:16:40,464 INFO L273 TraceCheckUtils]: 61: Hoare triple {12485#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12485#false} is VALID [2018-11-23 12:16:40,464 INFO L273 TraceCheckUtils]: 62: Hoare triple {12485#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12485#false} is VALID [2018-11-23 12:16:40,465 INFO L273 TraceCheckUtils]: 63: Hoare triple {12485#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12485#false} is VALID [2018-11-23 12:16:40,465 INFO L273 TraceCheckUtils]: 64: Hoare triple {12485#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12485#false} is VALID [2018-11-23 12:16:40,465 INFO L273 TraceCheckUtils]: 65: Hoare triple {12485#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12485#false} is VALID [2018-11-23 12:16:40,465 INFO L273 TraceCheckUtils]: 66: Hoare triple {12485#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12485#false} is VALID [2018-11-23 12:16:40,465 INFO L273 TraceCheckUtils]: 67: Hoare triple {12485#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12485#false} is VALID [2018-11-23 12:16:40,465 INFO L273 TraceCheckUtils]: 68: Hoare triple {12485#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12485#false} is VALID [2018-11-23 12:16:40,466 INFO L273 TraceCheckUtils]: 69: Hoare triple {12485#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12485#false} is VALID [2018-11-23 12:16:40,466 INFO L273 TraceCheckUtils]: 70: Hoare triple {12485#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12485#false} is VALID [2018-11-23 12:16:40,466 INFO L273 TraceCheckUtils]: 71: Hoare triple {12485#false} assume !(~i~0 < 20); {12485#false} is VALID [2018-11-23 12:16:40,466 INFO L273 TraceCheckUtils]: 72: Hoare triple {12485#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {12485#false} is VALID [2018-11-23 12:16:40,466 INFO L273 TraceCheckUtils]: 73: Hoare triple {12485#false} assume true; {12485#false} is VALID [2018-11-23 12:16:40,466 INFO L268 TraceCheckUtils]: 74: Hoare quadruple {12485#false} {12485#false} #77#return; {12485#false} is VALID [2018-11-23 12:16:40,466 INFO L273 TraceCheckUtils]: 75: Hoare triple {12485#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {12485#false} is VALID [2018-11-23 12:16:40,467 INFO L256 TraceCheckUtils]: 76: Hoare triple {12485#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {12485#false} is VALID [2018-11-23 12:16:40,467 INFO L273 TraceCheckUtils]: 77: Hoare triple {12485#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {12485#false} is VALID [2018-11-23 12:16:40,467 INFO L273 TraceCheckUtils]: 78: Hoare triple {12485#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12485#false} is VALID [2018-11-23 12:16:40,467 INFO L273 TraceCheckUtils]: 79: Hoare triple {12485#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12485#false} is VALID [2018-11-23 12:16:40,467 INFO L273 TraceCheckUtils]: 80: Hoare triple {12485#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12485#false} is VALID [2018-11-23 12:16:40,467 INFO L273 TraceCheckUtils]: 81: Hoare triple {12485#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12485#false} is VALID [2018-11-23 12:16:40,467 INFO L273 TraceCheckUtils]: 82: Hoare triple {12485#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12485#false} is VALID [2018-11-23 12:16:40,468 INFO L273 TraceCheckUtils]: 83: Hoare triple {12485#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12485#false} is VALID [2018-11-23 12:16:40,468 INFO L273 TraceCheckUtils]: 84: Hoare triple {12485#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12485#false} is VALID [2018-11-23 12:16:40,468 INFO L273 TraceCheckUtils]: 85: Hoare triple {12485#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12485#false} is VALID [2018-11-23 12:16:40,468 INFO L273 TraceCheckUtils]: 86: Hoare triple {12485#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12485#false} is VALID [2018-11-23 12:16:40,468 INFO L273 TraceCheckUtils]: 87: Hoare triple {12485#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12485#false} is VALID [2018-11-23 12:16:40,468 INFO L273 TraceCheckUtils]: 88: Hoare triple {12485#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12485#false} is VALID [2018-11-23 12:16:40,468 INFO L273 TraceCheckUtils]: 89: Hoare triple {12485#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12485#false} is VALID [2018-11-23 12:16:40,469 INFO L273 TraceCheckUtils]: 90: Hoare triple {12485#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12485#false} is VALID [2018-11-23 12:16:40,469 INFO L273 TraceCheckUtils]: 91: Hoare triple {12485#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12485#false} is VALID [2018-11-23 12:16:40,469 INFO L273 TraceCheckUtils]: 92: Hoare triple {12485#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12485#false} is VALID [2018-11-23 12:16:40,469 INFO L273 TraceCheckUtils]: 93: Hoare triple {12485#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12485#false} is VALID [2018-11-23 12:16:40,469 INFO L273 TraceCheckUtils]: 94: Hoare triple {12485#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12485#false} is VALID [2018-11-23 12:16:40,469 INFO L273 TraceCheckUtils]: 95: Hoare triple {12485#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12485#false} is VALID [2018-11-23 12:16:40,470 INFO L273 TraceCheckUtils]: 96: Hoare triple {12485#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12485#false} is VALID [2018-11-23 12:16:40,470 INFO L273 TraceCheckUtils]: 97: Hoare triple {12485#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12485#false} is VALID [2018-11-23 12:16:40,470 INFO L273 TraceCheckUtils]: 98: Hoare triple {12485#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12485#false} is VALID [2018-11-23 12:16:40,470 INFO L273 TraceCheckUtils]: 99: Hoare triple {12485#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12485#false} is VALID [2018-11-23 12:16:40,470 INFO L273 TraceCheckUtils]: 100: Hoare triple {12485#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12485#false} is VALID [2018-11-23 12:16:40,470 INFO L273 TraceCheckUtils]: 101: Hoare triple {12485#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12485#false} is VALID [2018-11-23 12:16:40,470 INFO L273 TraceCheckUtils]: 102: Hoare triple {12485#false} assume !(~i~0 < 20); {12485#false} is VALID [2018-11-23 12:16:40,470 INFO L273 TraceCheckUtils]: 103: Hoare triple {12485#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {12485#false} is VALID [2018-11-23 12:16:40,471 INFO L273 TraceCheckUtils]: 104: Hoare triple {12485#false} assume true; {12485#false} is VALID [2018-11-23 12:16:40,471 INFO L268 TraceCheckUtils]: 105: Hoare quadruple {12485#false} {12485#false} #79#return; {12485#false} is VALID [2018-11-23 12:16:40,471 INFO L273 TraceCheckUtils]: 106: Hoare triple {12485#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {12485#false} is VALID [2018-11-23 12:16:40,471 INFO L273 TraceCheckUtils]: 107: Hoare triple {12485#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {12485#false} is VALID [2018-11-23 12:16:40,471 INFO L273 TraceCheckUtils]: 108: Hoare triple {12485#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {12485#false} is VALID [2018-11-23 12:16:40,471 INFO L273 TraceCheckUtils]: 109: Hoare triple {12485#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {12485#false} is VALID [2018-11-23 12:16:40,471 INFO L273 TraceCheckUtils]: 110: Hoare triple {12485#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {12485#false} is VALID [2018-11-23 12:16:40,471 INFO L273 TraceCheckUtils]: 111: Hoare triple {12485#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {12485#false} is VALID [2018-11-23 12:16:40,471 INFO L273 TraceCheckUtils]: 112: Hoare triple {12485#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {12485#false} is VALID [2018-11-23 12:16:40,472 INFO L273 TraceCheckUtils]: 113: Hoare triple {12485#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {12485#false} is VALID [2018-11-23 12:16:40,472 INFO L273 TraceCheckUtils]: 114: Hoare triple {12485#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {12485#false} is VALID [2018-11-23 12:16:40,472 INFO L273 TraceCheckUtils]: 115: Hoare triple {12485#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {12485#false} is VALID [2018-11-23 12:16:40,472 INFO L273 TraceCheckUtils]: 116: Hoare triple {12485#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {12485#false} is VALID [2018-11-23 12:16:40,472 INFO L273 TraceCheckUtils]: 117: Hoare triple {12485#false} assume !(~i~2 < 19); {12485#false} is VALID [2018-11-23 12:16:40,472 INFO L273 TraceCheckUtils]: 118: Hoare triple {12485#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {12485#false} is VALID [2018-11-23 12:16:40,472 INFO L256 TraceCheckUtils]: 119: Hoare triple {12485#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {12485#false} is VALID [2018-11-23 12:16:40,472 INFO L273 TraceCheckUtils]: 120: Hoare triple {12485#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {12485#false} is VALID [2018-11-23 12:16:40,472 INFO L273 TraceCheckUtils]: 121: Hoare triple {12485#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12485#false} is VALID [2018-11-23 12:16:40,472 INFO L273 TraceCheckUtils]: 122: Hoare triple {12485#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12485#false} is VALID [2018-11-23 12:16:40,473 INFO L273 TraceCheckUtils]: 123: Hoare triple {12485#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12485#false} is VALID [2018-11-23 12:16:40,473 INFO L273 TraceCheckUtils]: 124: Hoare triple {12485#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12485#false} is VALID [2018-11-23 12:16:40,473 INFO L273 TraceCheckUtils]: 125: Hoare triple {12485#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12485#false} is VALID [2018-11-23 12:16:40,473 INFO L273 TraceCheckUtils]: 126: Hoare triple {12485#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12485#false} is VALID [2018-11-23 12:16:40,473 INFO L273 TraceCheckUtils]: 127: Hoare triple {12485#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12485#false} is VALID [2018-11-23 12:16:40,473 INFO L273 TraceCheckUtils]: 128: Hoare triple {12485#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12485#false} is VALID [2018-11-23 12:16:40,473 INFO L273 TraceCheckUtils]: 129: Hoare triple {12485#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12485#false} is VALID [2018-11-23 12:16:40,473 INFO L273 TraceCheckUtils]: 130: Hoare triple {12485#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12485#false} is VALID [2018-11-23 12:16:40,473 INFO L273 TraceCheckUtils]: 131: Hoare triple {12485#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12485#false} is VALID [2018-11-23 12:16:40,474 INFO L273 TraceCheckUtils]: 132: Hoare triple {12485#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12485#false} is VALID [2018-11-23 12:16:40,474 INFO L273 TraceCheckUtils]: 133: Hoare triple {12485#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12485#false} is VALID [2018-11-23 12:16:40,474 INFO L273 TraceCheckUtils]: 134: Hoare triple {12485#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12485#false} is VALID [2018-11-23 12:16:40,474 INFO L273 TraceCheckUtils]: 135: Hoare triple {12485#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12485#false} is VALID [2018-11-23 12:16:40,474 INFO L273 TraceCheckUtils]: 136: Hoare triple {12485#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12485#false} is VALID [2018-11-23 12:16:40,474 INFO L273 TraceCheckUtils]: 137: Hoare triple {12485#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12485#false} is VALID [2018-11-23 12:16:40,474 INFO L273 TraceCheckUtils]: 138: Hoare triple {12485#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12485#false} is VALID [2018-11-23 12:16:40,474 INFO L273 TraceCheckUtils]: 139: Hoare triple {12485#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12485#false} is VALID [2018-11-23 12:16:40,475 INFO L273 TraceCheckUtils]: 140: Hoare triple {12485#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12485#false} is VALID [2018-11-23 12:16:40,475 INFO L273 TraceCheckUtils]: 141: Hoare triple {12485#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {12485#false} is VALID [2018-11-23 12:16:40,475 INFO L273 TraceCheckUtils]: 142: Hoare triple {12485#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {12485#false} is VALID [2018-11-23 12:16:40,475 INFO L273 TraceCheckUtils]: 143: Hoare triple {12485#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {12485#false} is VALID [2018-11-23 12:16:40,475 INFO L273 TraceCheckUtils]: 144: Hoare triple {12485#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {12485#false} is VALID [2018-11-23 12:16:40,475 INFO L273 TraceCheckUtils]: 145: Hoare triple {12485#false} assume !(~i~0 < 20); {12485#false} is VALID [2018-11-23 12:16:40,476 INFO L273 TraceCheckUtils]: 146: Hoare triple {12485#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {12485#false} is VALID [2018-11-23 12:16:40,476 INFO L273 TraceCheckUtils]: 147: Hoare triple {12485#false} assume true; {12485#false} is VALID [2018-11-23 12:16:40,476 INFO L268 TraceCheckUtils]: 148: Hoare quadruple {12485#false} {12485#false} #81#return; {12485#false} is VALID [2018-11-23 12:16:40,476 INFO L273 TraceCheckUtils]: 149: Hoare triple {12485#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {12485#false} is VALID [2018-11-23 12:16:40,476 INFO L273 TraceCheckUtils]: 150: Hoare triple {12485#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {12485#false} is VALID [2018-11-23 12:16:40,476 INFO L273 TraceCheckUtils]: 151: Hoare triple {12485#false} assume !false; {12485#false} is VALID [2018-11-23 12:16:40,486 INFO L134 CoverageAnalysis]: Checked inductivity of 1067 backedges. 0 proven. 361 refuted. 0 times theorem prover too weak. 706 trivial. 0 not checked. [2018-11-23 12:16:40,505 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:16:40,505 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [22, 22] total 23 [2018-11-23 12:16:40,506 INFO L78 Accepts]: Start accepts. Automaton has 23 states. Word has length 152 [2018-11-23 12:16:40,506 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:40,506 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 23 states. [2018-11-23 12:16:40,586 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:40,586 INFO L459 AbstractCegarLoop]: Interpolant automaton has 23 states [2018-11-23 12:16:40,586 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2018-11-23 12:16:40,587 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=253, Invalid=253, Unknown=0, NotChecked=0, Total=506 [2018-11-23 12:16:40,587 INFO L87 Difference]: Start difference. First operand 95 states and 105 transitions. Second operand 23 states. [2018-11-23 12:16:41,259 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:41,260 INFO L93 Difference]: Finished difference Result 147 states and 167 transitions. [2018-11-23 12:16:41,260 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2018-11-23 12:16:41,260 INFO L78 Accepts]: Start accepts. Automaton has 23 states. Word has length 152 [2018-11-23 12:16:41,260 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:41,260 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 23 states. [2018-11-23 12:16:41,262 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 97 transitions. [2018-11-23 12:16:41,262 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 23 states. [2018-11-23 12:16:41,264 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 97 transitions. [2018-11-23 12:16:41,265 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 22 states and 97 transitions. [2018-11-23 12:16:41,434 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 97 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:16:41,437 INFO L225 Difference]: With dead ends: 147 [2018-11-23 12:16:41,437 INFO L226 Difference]: Without dead ends: 97 [2018-11-23 12:16:41,438 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 173 GetRequests, 152 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 36 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=253, Invalid=253, Unknown=0, NotChecked=0, Total=506 [2018-11-23 12:16:41,438 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 97 states. [2018-11-23 12:16:41,544 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 97 to 97. [2018-11-23 12:16:41,544 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:41,544 INFO L82 GeneralOperation]: Start isEquivalent. First operand 97 states. Second operand 97 states. [2018-11-23 12:16:41,544 INFO L74 IsIncluded]: Start isIncluded. First operand 97 states. Second operand 97 states. [2018-11-23 12:16:41,544 INFO L87 Difference]: Start difference. First operand 97 states. Second operand 97 states. [2018-11-23 12:16:41,548 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:41,548 INFO L93 Difference]: Finished difference Result 97 states and 107 transitions. [2018-11-23 12:16:41,548 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 107 transitions. [2018-11-23 12:16:41,549 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:41,549 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:41,549 INFO L74 IsIncluded]: Start isIncluded. First operand 97 states. Second operand 97 states. [2018-11-23 12:16:41,549 INFO L87 Difference]: Start difference. First operand 97 states. Second operand 97 states. [2018-11-23 12:16:41,553 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:41,553 INFO L93 Difference]: Finished difference Result 97 states and 107 transitions. [2018-11-23 12:16:41,553 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 107 transitions. [2018-11-23 12:16:41,554 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:41,554 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:41,554 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:41,554 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:41,554 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 97 states. [2018-11-23 12:16:41,557 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 97 states to 97 states and 107 transitions. [2018-11-23 12:16:41,557 INFO L78 Accepts]: Start accepts. Automaton has 97 states and 107 transitions. Word has length 152 [2018-11-23 12:16:41,557 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:41,557 INFO L480 AbstractCegarLoop]: Abstraction has 97 states and 107 transitions. [2018-11-23 12:16:41,558 INFO L481 AbstractCegarLoop]: Interpolant automaton has 23 states. [2018-11-23 12:16:41,558 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 107 transitions. [2018-11-23 12:16:41,559 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 155 [2018-11-23 12:16:41,559 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:41,559 INFO L402 BasicCegarLoop]: trace histogram [20, 20, 18, 18, 18, 18, 5, 5, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:41,559 INFO L423 AbstractCegarLoop]: === Iteration 23 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:41,559 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:41,560 INFO L82 PathProgramCache]: Analyzing trace with hash 1779127339, now seen corresponding path program 20 times [2018-11-23 12:16:41,560 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:41,560 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:41,560 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:41,561 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:16:41,561 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:41,587 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:41,785 INFO L256 TraceCheckUtils]: 0: Hoare triple {13501#true} call ULTIMATE.init(); {13501#true} is VALID [2018-11-23 12:16:41,785 INFO L273 TraceCheckUtils]: 1: Hoare triple {13501#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {13501#true} is VALID [2018-11-23 12:16:41,785 INFO L273 TraceCheckUtils]: 2: Hoare triple {13501#true} assume true; {13501#true} is VALID [2018-11-23 12:16:41,785 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {13501#true} {13501#true} #73#return; {13501#true} is VALID [2018-11-23 12:16:41,786 INFO L256 TraceCheckUtils]: 4: Hoare triple {13501#true} call #t~ret14 := main(); {13501#true} is VALID [2018-11-23 12:16:41,786 INFO L273 TraceCheckUtils]: 5: Hoare triple {13501#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {13501#true} is VALID [2018-11-23 12:16:41,786 INFO L273 TraceCheckUtils]: 6: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:41,786 INFO L273 TraceCheckUtils]: 7: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:41,787 INFO L273 TraceCheckUtils]: 8: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:41,787 INFO L273 TraceCheckUtils]: 9: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:41,787 INFO L273 TraceCheckUtils]: 10: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:41,787 INFO L273 TraceCheckUtils]: 11: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:41,788 INFO L273 TraceCheckUtils]: 12: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:41,788 INFO L273 TraceCheckUtils]: 13: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:41,788 INFO L273 TraceCheckUtils]: 14: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:41,788 INFO L273 TraceCheckUtils]: 15: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:41,789 INFO L273 TraceCheckUtils]: 16: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:41,789 INFO L273 TraceCheckUtils]: 17: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:41,789 INFO L273 TraceCheckUtils]: 18: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:41,789 INFO L273 TraceCheckUtils]: 19: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:41,789 INFO L273 TraceCheckUtils]: 20: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:41,789 INFO L273 TraceCheckUtils]: 21: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:41,789 INFO L273 TraceCheckUtils]: 22: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:41,790 INFO L273 TraceCheckUtils]: 23: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:41,790 INFO L273 TraceCheckUtils]: 24: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:41,790 INFO L273 TraceCheckUtils]: 25: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:41,790 INFO L273 TraceCheckUtils]: 26: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:41,790 INFO L273 TraceCheckUtils]: 27: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:41,790 INFO L273 TraceCheckUtils]: 28: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:41,790 INFO L273 TraceCheckUtils]: 29: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:41,790 INFO L273 TraceCheckUtils]: 30: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:41,790 INFO L273 TraceCheckUtils]: 31: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:41,791 INFO L273 TraceCheckUtils]: 32: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:41,791 INFO L273 TraceCheckUtils]: 33: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:41,791 INFO L273 TraceCheckUtils]: 34: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:41,791 INFO L273 TraceCheckUtils]: 35: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:41,791 INFO L273 TraceCheckUtils]: 36: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:41,791 INFO L273 TraceCheckUtils]: 37: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:41,791 INFO L273 TraceCheckUtils]: 38: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:41,791 INFO L273 TraceCheckUtils]: 39: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:41,791 INFO L273 TraceCheckUtils]: 40: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:41,791 INFO L273 TraceCheckUtils]: 41: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:41,792 INFO L273 TraceCheckUtils]: 42: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:41,792 INFO L273 TraceCheckUtils]: 43: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:41,792 INFO L273 TraceCheckUtils]: 44: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:41,792 INFO L273 TraceCheckUtils]: 45: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:41,792 INFO L273 TraceCheckUtils]: 46: Hoare triple {13501#true} assume !(~i~1 < 20); {13501#true} is VALID [2018-11-23 12:16:41,792 INFO L256 TraceCheckUtils]: 47: Hoare triple {13501#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {13501#true} is VALID [2018-11-23 12:16:41,793 INFO L273 TraceCheckUtils]: 48: Hoare triple {13501#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {13503#(= max_~i~0 0)} is VALID [2018-11-23 12:16:41,793 INFO L273 TraceCheckUtils]: 49: Hoare triple {13503#(= max_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13503#(= max_~i~0 0)} is VALID [2018-11-23 12:16:41,793 INFO L273 TraceCheckUtils]: 50: Hoare triple {13503#(= max_~i~0 0)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13503#(= max_~i~0 0)} is VALID [2018-11-23 12:16:41,793 INFO L273 TraceCheckUtils]: 51: Hoare triple {13503#(= max_~i~0 0)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13503#(= max_~i~0 0)} is VALID [2018-11-23 12:16:41,794 INFO L273 TraceCheckUtils]: 52: Hoare triple {13503#(= max_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13504#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:41,794 INFO L273 TraceCheckUtils]: 53: Hoare triple {13504#(<= max_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13504#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:41,794 INFO L273 TraceCheckUtils]: 54: Hoare triple {13504#(<= max_~i~0 1)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13504#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:41,795 INFO L273 TraceCheckUtils]: 55: Hoare triple {13504#(<= max_~i~0 1)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13504#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:41,795 INFO L273 TraceCheckUtils]: 56: Hoare triple {13504#(<= max_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13505#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:41,796 INFO L273 TraceCheckUtils]: 57: Hoare triple {13505#(<= max_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13505#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:41,796 INFO L273 TraceCheckUtils]: 58: Hoare triple {13505#(<= max_~i~0 2)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13505#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:41,797 INFO L273 TraceCheckUtils]: 59: Hoare triple {13505#(<= max_~i~0 2)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13505#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:41,797 INFO L273 TraceCheckUtils]: 60: Hoare triple {13505#(<= max_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13506#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:41,798 INFO L273 TraceCheckUtils]: 61: Hoare triple {13506#(<= max_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13506#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:41,798 INFO L273 TraceCheckUtils]: 62: Hoare triple {13506#(<= max_~i~0 3)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13506#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:41,799 INFO L273 TraceCheckUtils]: 63: Hoare triple {13506#(<= max_~i~0 3)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13506#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:41,800 INFO L273 TraceCheckUtils]: 64: Hoare triple {13506#(<= max_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13507#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:41,800 INFO L273 TraceCheckUtils]: 65: Hoare triple {13507#(<= max_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13507#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:41,801 INFO L273 TraceCheckUtils]: 66: Hoare triple {13507#(<= max_~i~0 4)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13507#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:41,801 INFO L273 TraceCheckUtils]: 67: Hoare triple {13507#(<= max_~i~0 4)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13507#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:41,802 INFO L273 TraceCheckUtils]: 68: Hoare triple {13507#(<= max_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13508#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:41,803 INFO L273 TraceCheckUtils]: 69: Hoare triple {13508#(<= max_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13508#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:41,823 INFO L273 TraceCheckUtils]: 70: Hoare triple {13508#(<= max_~i~0 5)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13508#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:41,838 INFO L273 TraceCheckUtils]: 71: Hoare triple {13508#(<= max_~i~0 5)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13508#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:41,847 INFO L273 TraceCheckUtils]: 72: Hoare triple {13508#(<= max_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13509#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:41,860 INFO L273 TraceCheckUtils]: 73: Hoare triple {13509#(<= max_~i~0 6)} assume !(~i~0 < 20); {13502#false} is VALID [2018-11-23 12:16:41,860 INFO L273 TraceCheckUtils]: 74: Hoare triple {13502#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {13502#false} is VALID [2018-11-23 12:16:41,860 INFO L273 TraceCheckUtils]: 75: Hoare triple {13502#false} assume true; {13502#false} is VALID [2018-11-23 12:16:41,860 INFO L268 TraceCheckUtils]: 76: Hoare quadruple {13502#false} {13501#true} #77#return; {13502#false} is VALID [2018-11-23 12:16:41,861 INFO L273 TraceCheckUtils]: 77: Hoare triple {13502#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {13502#false} is VALID [2018-11-23 12:16:41,861 INFO L256 TraceCheckUtils]: 78: Hoare triple {13502#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {13501#true} is VALID [2018-11-23 12:16:41,861 INFO L273 TraceCheckUtils]: 79: Hoare triple {13501#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {13501#true} is VALID [2018-11-23 12:16:41,861 INFO L273 TraceCheckUtils]: 80: Hoare triple {13501#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13501#true} is VALID [2018-11-23 12:16:41,861 INFO L273 TraceCheckUtils]: 81: Hoare triple {13501#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13501#true} is VALID [2018-11-23 12:16:41,861 INFO L273 TraceCheckUtils]: 82: Hoare triple {13501#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13501#true} is VALID [2018-11-23 12:16:41,862 INFO L273 TraceCheckUtils]: 83: Hoare triple {13501#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13501#true} is VALID [2018-11-23 12:16:41,862 INFO L273 TraceCheckUtils]: 84: Hoare triple {13501#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13501#true} is VALID [2018-11-23 12:16:41,862 INFO L273 TraceCheckUtils]: 85: Hoare triple {13501#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13501#true} is VALID [2018-11-23 12:16:41,862 INFO L273 TraceCheckUtils]: 86: Hoare triple {13501#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13501#true} is VALID [2018-11-23 12:16:41,862 INFO L273 TraceCheckUtils]: 87: Hoare triple {13501#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13501#true} is VALID [2018-11-23 12:16:41,862 INFO L273 TraceCheckUtils]: 88: Hoare triple {13501#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13501#true} is VALID [2018-11-23 12:16:41,863 INFO L273 TraceCheckUtils]: 89: Hoare triple {13501#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13501#true} is VALID [2018-11-23 12:16:41,863 INFO L273 TraceCheckUtils]: 90: Hoare triple {13501#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13501#true} is VALID [2018-11-23 12:16:41,863 INFO L273 TraceCheckUtils]: 91: Hoare triple {13501#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13501#true} is VALID [2018-11-23 12:16:41,863 INFO L273 TraceCheckUtils]: 92: Hoare triple {13501#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13501#true} is VALID [2018-11-23 12:16:41,863 INFO L273 TraceCheckUtils]: 93: Hoare triple {13501#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13501#true} is VALID [2018-11-23 12:16:41,863 INFO L273 TraceCheckUtils]: 94: Hoare triple {13501#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13501#true} is VALID [2018-11-23 12:16:41,864 INFO L273 TraceCheckUtils]: 95: Hoare triple {13501#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13501#true} is VALID [2018-11-23 12:16:41,864 INFO L273 TraceCheckUtils]: 96: Hoare triple {13501#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13501#true} is VALID [2018-11-23 12:16:41,864 INFO L273 TraceCheckUtils]: 97: Hoare triple {13501#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13501#true} is VALID [2018-11-23 12:16:41,864 INFO L273 TraceCheckUtils]: 98: Hoare triple {13501#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13501#true} is VALID [2018-11-23 12:16:41,864 INFO L273 TraceCheckUtils]: 99: Hoare triple {13501#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13501#true} is VALID [2018-11-23 12:16:41,864 INFO L273 TraceCheckUtils]: 100: Hoare triple {13501#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13501#true} is VALID [2018-11-23 12:16:41,864 INFO L273 TraceCheckUtils]: 101: Hoare triple {13501#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13501#true} is VALID [2018-11-23 12:16:41,865 INFO L273 TraceCheckUtils]: 102: Hoare triple {13501#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13501#true} is VALID [2018-11-23 12:16:41,865 INFO L273 TraceCheckUtils]: 103: Hoare triple {13501#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13501#true} is VALID [2018-11-23 12:16:41,865 INFO L273 TraceCheckUtils]: 104: Hoare triple {13501#true} assume !(~i~0 < 20); {13501#true} is VALID [2018-11-23 12:16:41,865 INFO L273 TraceCheckUtils]: 105: Hoare triple {13501#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {13501#true} is VALID [2018-11-23 12:16:41,865 INFO L273 TraceCheckUtils]: 106: Hoare triple {13501#true} assume true; {13501#true} is VALID [2018-11-23 12:16:41,865 INFO L268 TraceCheckUtils]: 107: Hoare quadruple {13501#true} {13502#false} #79#return; {13502#false} is VALID [2018-11-23 12:16:41,866 INFO L273 TraceCheckUtils]: 108: Hoare triple {13502#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {13502#false} is VALID [2018-11-23 12:16:41,866 INFO L273 TraceCheckUtils]: 109: Hoare triple {13502#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {13502#false} is VALID [2018-11-23 12:16:41,866 INFO L273 TraceCheckUtils]: 110: Hoare triple {13502#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {13502#false} is VALID [2018-11-23 12:16:41,866 INFO L273 TraceCheckUtils]: 111: Hoare triple {13502#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {13502#false} is VALID [2018-11-23 12:16:41,866 INFO L273 TraceCheckUtils]: 112: Hoare triple {13502#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {13502#false} is VALID [2018-11-23 12:16:41,866 INFO L273 TraceCheckUtils]: 113: Hoare triple {13502#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {13502#false} is VALID [2018-11-23 12:16:41,866 INFO L273 TraceCheckUtils]: 114: Hoare triple {13502#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {13502#false} is VALID [2018-11-23 12:16:41,867 INFO L273 TraceCheckUtils]: 115: Hoare triple {13502#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {13502#false} is VALID [2018-11-23 12:16:41,867 INFO L273 TraceCheckUtils]: 116: Hoare triple {13502#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {13502#false} is VALID [2018-11-23 12:16:41,867 INFO L273 TraceCheckUtils]: 117: Hoare triple {13502#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {13502#false} is VALID [2018-11-23 12:16:41,867 INFO L273 TraceCheckUtils]: 118: Hoare triple {13502#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {13502#false} is VALID [2018-11-23 12:16:41,867 INFO L273 TraceCheckUtils]: 119: Hoare triple {13502#false} assume !(~i~2 < 19); {13502#false} is VALID [2018-11-23 12:16:41,867 INFO L273 TraceCheckUtils]: 120: Hoare triple {13502#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {13502#false} is VALID [2018-11-23 12:16:41,867 INFO L256 TraceCheckUtils]: 121: Hoare triple {13502#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {13501#true} is VALID [2018-11-23 12:16:41,868 INFO L273 TraceCheckUtils]: 122: Hoare triple {13501#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {13501#true} is VALID [2018-11-23 12:16:41,868 INFO L273 TraceCheckUtils]: 123: Hoare triple {13501#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13501#true} is VALID [2018-11-23 12:16:41,868 INFO L273 TraceCheckUtils]: 124: Hoare triple {13501#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13501#true} is VALID [2018-11-23 12:16:41,868 INFO L273 TraceCheckUtils]: 125: Hoare triple {13501#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13501#true} is VALID [2018-11-23 12:16:41,868 INFO L273 TraceCheckUtils]: 126: Hoare triple {13501#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13501#true} is VALID [2018-11-23 12:16:41,868 INFO L273 TraceCheckUtils]: 127: Hoare triple {13501#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13501#true} is VALID [2018-11-23 12:16:41,868 INFO L273 TraceCheckUtils]: 128: Hoare triple {13501#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13501#true} is VALID [2018-11-23 12:16:41,869 INFO L273 TraceCheckUtils]: 129: Hoare triple {13501#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13501#true} is VALID [2018-11-23 12:16:41,869 INFO L273 TraceCheckUtils]: 130: Hoare triple {13501#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13501#true} is VALID [2018-11-23 12:16:41,869 INFO L273 TraceCheckUtils]: 131: Hoare triple {13501#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13501#true} is VALID [2018-11-23 12:16:41,869 INFO L273 TraceCheckUtils]: 132: Hoare triple {13501#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13501#true} is VALID [2018-11-23 12:16:41,869 INFO L273 TraceCheckUtils]: 133: Hoare triple {13501#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13501#true} is VALID [2018-11-23 12:16:41,869 INFO L273 TraceCheckUtils]: 134: Hoare triple {13501#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13501#true} is VALID [2018-11-23 12:16:41,870 INFO L273 TraceCheckUtils]: 135: Hoare triple {13501#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13501#true} is VALID [2018-11-23 12:16:41,870 INFO L273 TraceCheckUtils]: 136: Hoare triple {13501#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13501#true} is VALID [2018-11-23 12:16:41,870 INFO L273 TraceCheckUtils]: 137: Hoare triple {13501#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13501#true} is VALID [2018-11-23 12:16:41,870 INFO L273 TraceCheckUtils]: 138: Hoare triple {13501#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13501#true} is VALID [2018-11-23 12:16:41,870 INFO L273 TraceCheckUtils]: 139: Hoare triple {13501#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13501#true} is VALID [2018-11-23 12:16:41,870 INFO L273 TraceCheckUtils]: 140: Hoare triple {13501#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13501#true} is VALID [2018-11-23 12:16:41,870 INFO L273 TraceCheckUtils]: 141: Hoare triple {13501#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13501#true} is VALID [2018-11-23 12:16:41,871 INFO L273 TraceCheckUtils]: 142: Hoare triple {13501#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13501#true} is VALID [2018-11-23 12:16:41,871 INFO L273 TraceCheckUtils]: 143: Hoare triple {13501#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13501#true} is VALID [2018-11-23 12:16:41,871 INFO L273 TraceCheckUtils]: 144: Hoare triple {13501#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13501#true} is VALID [2018-11-23 12:16:41,871 INFO L273 TraceCheckUtils]: 145: Hoare triple {13501#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13501#true} is VALID [2018-11-23 12:16:41,871 INFO L273 TraceCheckUtils]: 146: Hoare triple {13501#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13501#true} is VALID [2018-11-23 12:16:41,871 INFO L273 TraceCheckUtils]: 147: Hoare triple {13501#true} assume !(~i~0 < 20); {13501#true} is VALID [2018-11-23 12:16:41,871 INFO L273 TraceCheckUtils]: 148: Hoare triple {13501#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {13501#true} is VALID [2018-11-23 12:16:41,872 INFO L273 TraceCheckUtils]: 149: Hoare triple {13501#true} assume true; {13501#true} is VALID [2018-11-23 12:16:41,872 INFO L268 TraceCheckUtils]: 150: Hoare quadruple {13501#true} {13502#false} #81#return; {13502#false} is VALID [2018-11-23 12:16:41,872 INFO L273 TraceCheckUtils]: 151: Hoare triple {13502#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {13502#false} is VALID [2018-11-23 12:16:41,872 INFO L273 TraceCheckUtils]: 152: Hoare triple {13502#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {13502#false} is VALID [2018-11-23 12:16:41,872 INFO L273 TraceCheckUtils]: 153: Hoare triple {13502#false} assume !false; {13502#false} is VALID [2018-11-23 12:16:41,884 INFO L134 CoverageAnalysis]: Checked inductivity of 1106 backedges. 0 proven. 386 refuted. 0 times theorem prover too weak. 720 trivial. 0 not checked. [2018-11-23 12:16:41,884 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:16:41,885 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 22 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 22 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:16:41,893 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:16:41,977 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:16:41,977 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:16:42,023 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:42,025 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:43,193 INFO L256 TraceCheckUtils]: 0: Hoare triple {13501#true} call ULTIMATE.init(); {13501#true} is VALID [2018-11-23 12:16:43,194 INFO L273 TraceCheckUtils]: 1: Hoare triple {13501#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {13501#true} is VALID [2018-11-23 12:16:43,194 INFO L273 TraceCheckUtils]: 2: Hoare triple {13501#true} assume true; {13501#true} is VALID [2018-11-23 12:16:43,194 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {13501#true} {13501#true} #73#return; {13501#true} is VALID [2018-11-23 12:16:43,194 INFO L256 TraceCheckUtils]: 4: Hoare triple {13501#true} call #t~ret14 := main(); {13501#true} is VALID [2018-11-23 12:16:43,194 INFO L273 TraceCheckUtils]: 5: Hoare triple {13501#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {13501#true} is VALID [2018-11-23 12:16:43,195 INFO L273 TraceCheckUtils]: 6: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:43,195 INFO L273 TraceCheckUtils]: 7: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:43,195 INFO L273 TraceCheckUtils]: 8: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:43,195 INFO L273 TraceCheckUtils]: 9: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:43,195 INFO L273 TraceCheckUtils]: 10: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:43,196 INFO L273 TraceCheckUtils]: 11: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:43,196 INFO L273 TraceCheckUtils]: 12: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:43,196 INFO L273 TraceCheckUtils]: 13: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:43,196 INFO L273 TraceCheckUtils]: 14: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:43,196 INFO L273 TraceCheckUtils]: 15: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:43,196 INFO L273 TraceCheckUtils]: 16: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:43,196 INFO L273 TraceCheckUtils]: 17: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:43,196 INFO L273 TraceCheckUtils]: 18: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:43,197 INFO L273 TraceCheckUtils]: 19: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:43,197 INFO L273 TraceCheckUtils]: 20: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:43,197 INFO L273 TraceCheckUtils]: 21: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:43,197 INFO L273 TraceCheckUtils]: 22: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:43,197 INFO L273 TraceCheckUtils]: 23: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:43,197 INFO L273 TraceCheckUtils]: 24: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:43,197 INFO L273 TraceCheckUtils]: 25: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:43,197 INFO L273 TraceCheckUtils]: 26: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:43,197 INFO L273 TraceCheckUtils]: 27: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:43,198 INFO L273 TraceCheckUtils]: 28: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:43,198 INFO L273 TraceCheckUtils]: 29: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:43,198 INFO L273 TraceCheckUtils]: 30: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:43,198 INFO L273 TraceCheckUtils]: 31: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:43,198 INFO L273 TraceCheckUtils]: 32: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:43,198 INFO L273 TraceCheckUtils]: 33: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:43,198 INFO L273 TraceCheckUtils]: 34: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:43,198 INFO L273 TraceCheckUtils]: 35: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:43,198 INFO L273 TraceCheckUtils]: 36: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:43,198 INFO L273 TraceCheckUtils]: 37: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:43,199 INFO L273 TraceCheckUtils]: 38: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:43,199 INFO L273 TraceCheckUtils]: 39: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:43,199 INFO L273 TraceCheckUtils]: 40: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:43,199 INFO L273 TraceCheckUtils]: 41: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:43,199 INFO L273 TraceCheckUtils]: 42: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:43,199 INFO L273 TraceCheckUtils]: 43: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:43,199 INFO L273 TraceCheckUtils]: 44: Hoare triple {13501#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {13501#true} is VALID [2018-11-23 12:16:43,199 INFO L273 TraceCheckUtils]: 45: Hoare triple {13501#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {13501#true} is VALID [2018-11-23 12:16:43,199 INFO L273 TraceCheckUtils]: 46: Hoare triple {13501#true} assume !(~i~1 < 20); {13501#true} is VALID [2018-11-23 12:16:43,199 INFO L256 TraceCheckUtils]: 47: Hoare triple {13501#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {13501#true} is VALID [2018-11-23 12:16:43,200 INFO L273 TraceCheckUtils]: 48: Hoare triple {13501#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {13657#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:43,200 INFO L273 TraceCheckUtils]: 49: Hoare triple {13657#(<= max_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13657#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:43,201 INFO L273 TraceCheckUtils]: 50: Hoare triple {13657#(<= max_~i~0 0)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13657#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:43,201 INFO L273 TraceCheckUtils]: 51: Hoare triple {13657#(<= max_~i~0 0)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13657#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:43,201 INFO L273 TraceCheckUtils]: 52: Hoare triple {13657#(<= max_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13504#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:43,202 INFO L273 TraceCheckUtils]: 53: Hoare triple {13504#(<= max_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13504#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:43,202 INFO L273 TraceCheckUtils]: 54: Hoare triple {13504#(<= max_~i~0 1)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13504#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:43,202 INFO L273 TraceCheckUtils]: 55: Hoare triple {13504#(<= max_~i~0 1)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13504#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:43,203 INFO L273 TraceCheckUtils]: 56: Hoare triple {13504#(<= max_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13505#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:43,203 INFO L273 TraceCheckUtils]: 57: Hoare triple {13505#(<= max_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13505#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:43,204 INFO L273 TraceCheckUtils]: 58: Hoare triple {13505#(<= max_~i~0 2)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13505#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:43,204 INFO L273 TraceCheckUtils]: 59: Hoare triple {13505#(<= max_~i~0 2)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13505#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:43,205 INFO L273 TraceCheckUtils]: 60: Hoare triple {13505#(<= max_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13506#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:43,205 INFO L273 TraceCheckUtils]: 61: Hoare triple {13506#(<= max_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13506#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:43,206 INFO L273 TraceCheckUtils]: 62: Hoare triple {13506#(<= max_~i~0 3)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13506#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:43,206 INFO L273 TraceCheckUtils]: 63: Hoare triple {13506#(<= max_~i~0 3)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13506#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:43,207 INFO L273 TraceCheckUtils]: 64: Hoare triple {13506#(<= max_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13507#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:43,208 INFO L273 TraceCheckUtils]: 65: Hoare triple {13507#(<= max_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13507#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:43,208 INFO L273 TraceCheckUtils]: 66: Hoare triple {13507#(<= max_~i~0 4)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13507#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:43,208 INFO L273 TraceCheckUtils]: 67: Hoare triple {13507#(<= max_~i~0 4)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13507#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:43,209 INFO L273 TraceCheckUtils]: 68: Hoare triple {13507#(<= max_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13508#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:43,210 INFO L273 TraceCheckUtils]: 69: Hoare triple {13508#(<= max_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13508#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:43,210 INFO L273 TraceCheckUtils]: 70: Hoare triple {13508#(<= max_~i~0 5)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13508#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:43,211 INFO L273 TraceCheckUtils]: 71: Hoare triple {13508#(<= max_~i~0 5)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13508#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:43,211 INFO L273 TraceCheckUtils]: 72: Hoare triple {13508#(<= max_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13509#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:43,212 INFO L273 TraceCheckUtils]: 73: Hoare triple {13509#(<= max_~i~0 6)} assume !(~i~0 < 20); {13502#false} is VALID [2018-11-23 12:16:43,212 INFO L273 TraceCheckUtils]: 74: Hoare triple {13502#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {13502#false} is VALID [2018-11-23 12:16:43,212 INFO L273 TraceCheckUtils]: 75: Hoare triple {13502#false} assume true; {13502#false} is VALID [2018-11-23 12:16:43,212 INFO L268 TraceCheckUtils]: 76: Hoare quadruple {13502#false} {13501#true} #77#return; {13502#false} is VALID [2018-11-23 12:16:43,213 INFO L273 TraceCheckUtils]: 77: Hoare triple {13502#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {13502#false} is VALID [2018-11-23 12:16:43,213 INFO L256 TraceCheckUtils]: 78: Hoare triple {13502#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {13502#false} is VALID [2018-11-23 12:16:43,213 INFO L273 TraceCheckUtils]: 79: Hoare triple {13502#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {13502#false} is VALID [2018-11-23 12:16:43,213 INFO L273 TraceCheckUtils]: 80: Hoare triple {13502#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13502#false} is VALID [2018-11-23 12:16:43,213 INFO L273 TraceCheckUtils]: 81: Hoare triple {13502#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13502#false} is VALID [2018-11-23 12:16:43,214 INFO L273 TraceCheckUtils]: 82: Hoare triple {13502#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13502#false} is VALID [2018-11-23 12:16:43,214 INFO L273 TraceCheckUtils]: 83: Hoare triple {13502#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13502#false} is VALID [2018-11-23 12:16:43,214 INFO L273 TraceCheckUtils]: 84: Hoare triple {13502#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13502#false} is VALID [2018-11-23 12:16:43,214 INFO L273 TraceCheckUtils]: 85: Hoare triple {13502#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13502#false} is VALID [2018-11-23 12:16:43,214 INFO L273 TraceCheckUtils]: 86: Hoare triple {13502#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13502#false} is VALID [2018-11-23 12:16:43,214 INFO L273 TraceCheckUtils]: 87: Hoare triple {13502#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13502#false} is VALID [2018-11-23 12:16:43,215 INFO L273 TraceCheckUtils]: 88: Hoare triple {13502#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13502#false} is VALID [2018-11-23 12:16:43,215 INFO L273 TraceCheckUtils]: 89: Hoare triple {13502#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13502#false} is VALID [2018-11-23 12:16:43,215 INFO L273 TraceCheckUtils]: 90: Hoare triple {13502#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13502#false} is VALID [2018-11-23 12:16:43,215 INFO L273 TraceCheckUtils]: 91: Hoare triple {13502#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13502#false} is VALID [2018-11-23 12:16:43,215 INFO L273 TraceCheckUtils]: 92: Hoare triple {13502#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13502#false} is VALID [2018-11-23 12:16:43,216 INFO L273 TraceCheckUtils]: 93: Hoare triple {13502#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13502#false} is VALID [2018-11-23 12:16:43,216 INFO L273 TraceCheckUtils]: 94: Hoare triple {13502#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13502#false} is VALID [2018-11-23 12:16:43,216 INFO L273 TraceCheckUtils]: 95: Hoare triple {13502#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13502#false} is VALID [2018-11-23 12:16:43,216 INFO L273 TraceCheckUtils]: 96: Hoare triple {13502#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13502#false} is VALID [2018-11-23 12:16:43,216 INFO L273 TraceCheckUtils]: 97: Hoare triple {13502#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13502#false} is VALID [2018-11-23 12:16:43,216 INFO L273 TraceCheckUtils]: 98: Hoare triple {13502#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13502#false} is VALID [2018-11-23 12:16:43,217 INFO L273 TraceCheckUtils]: 99: Hoare triple {13502#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13502#false} is VALID [2018-11-23 12:16:43,217 INFO L273 TraceCheckUtils]: 100: Hoare triple {13502#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13502#false} is VALID [2018-11-23 12:16:43,217 INFO L273 TraceCheckUtils]: 101: Hoare triple {13502#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13502#false} is VALID [2018-11-23 12:16:43,217 INFO L273 TraceCheckUtils]: 102: Hoare triple {13502#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13502#false} is VALID [2018-11-23 12:16:43,217 INFO L273 TraceCheckUtils]: 103: Hoare triple {13502#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13502#false} is VALID [2018-11-23 12:16:43,217 INFO L273 TraceCheckUtils]: 104: Hoare triple {13502#false} assume !(~i~0 < 20); {13502#false} is VALID [2018-11-23 12:16:43,218 INFO L273 TraceCheckUtils]: 105: Hoare triple {13502#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {13502#false} is VALID [2018-11-23 12:16:43,218 INFO L273 TraceCheckUtils]: 106: Hoare triple {13502#false} assume true; {13502#false} is VALID [2018-11-23 12:16:43,218 INFO L268 TraceCheckUtils]: 107: Hoare quadruple {13502#false} {13502#false} #79#return; {13502#false} is VALID [2018-11-23 12:16:43,218 INFO L273 TraceCheckUtils]: 108: Hoare triple {13502#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {13502#false} is VALID [2018-11-23 12:16:43,218 INFO L273 TraceCheckUtils]: 109: Hoare triple {13502#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {13502#false} is VALID [2018-11-23 12:16:43,218 INFO L273 TraceCheckUtils]: 110: Hoare triple {13502#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {13502#false} is VALID [2018-11-23 12:16:43,219 INFO L273 TraceCheckUtils]: 111: Hoare triple {13502#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {13502#false} is VALID [2018-11-23 12:16:43,219 INFO L273 TraceCheckUtils]: 112: Hoare triple {13502#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {13502#false} is VALID [2018-11-23 12:16:43,219 INFO L273 TraceCheckUtils]: 113: Hoare triple {13502#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {13502#false} is VALID [2018-11-23 12:16:43,219 INFO L273 TraceCheckUtils]: 114: Hoare triple {13502#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {13502#false} is VALID [2018-11-23 12:16:43,219 INFO L273 TraceCheckUtils]: 115: Hoare triple {13502#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {13502#false} is VALID [2018-11-23 12:16:43,219 INFO L273 TraceCheckUtils]: 116: Hoare triple {13502#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {13502#false} is VALID [2018-11-23 12:16:43,220 INFO L273 TraceCheckUtils]: 117: Hoare triple {13502#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {13502#false} is VALID [2018-11-23 12:16:43,220 INFO L273 TraceCheckUtils]: 118: Hoare triple {13502#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {13502#false} is VALID [2018-11-23 12:16:43,220 INFO L273 TraceCheckUtils]: 119: Hoare triple {13502#false} assume !(~i~2 < 19); {13502#false} is VALID [2018-11-23 12:16:43,220 INFO L273 TraceCheckUtils]: 120: Hoare triple {13502#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {13502#false} is VALID [2018-11-23 12:16:43,220 INFO L256 TraceCheckUtils]: 121: Hoare triple {13502#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {13502#false} is VALID [2018-11-23 12:16:43,220 INFO L273 TraceCheckUtils]: 122: Hoare triple {13502#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {13502#false} is VALID [2018-11-23 12:16:43,220 INFO L273 TraceCheckUtils]: 123: Hoare triple {13502#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13502#false} is VALID [2018-11-23 12:16:43,221 INFO L273 TraceCheckUtils]: 124: Hoare triple {13502#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13502#false} is VALID [2018-11-23 12:16:43,221 INFO L273 TraceCheckUtils]: 125: Hoare triple {13502#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13502#false} is VALID [2018-11-23 12:16:43,221 INFO L273 TraceCheckUtils]: 126: Hoare triple {13502#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13502#false} is VALID [2018-11-23 12:16:43,221 INFO L273 TraceCheckUtils]: 127: Hoare triple {13502#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13502#false} is VALID [2018-11-23 12:16:43,221 INFO L273 TraceCheckUtils]: 128: Hoare triple {13502#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13502#false} is VALID [2018-11-23 12:16:43,221 INFO L273 TraceCheckUtils]: 129: Hoare triple {13502#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13502#false} is VALID [2018-11-23 12:16:43,221 INFO L273 TraceCheckUtils]: 130: Hoare triple {13502#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13502#false} is VALID [2018-11-23 12:16:43,222 INFO L273 TraceCheckUtils]: 131: Hoare triple {13502#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13502#false} is VALID [2018-11-23 12:16:43,222 INFO L273 TraceCheckUtils]: 132: Hoare triple {13502#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13502#false} is VALID [2018-11-23 12:16:43,222 INFO L273 TraceCheckUtils]: 133: Hoare triple {13502#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13502#false} is VALID [2018-11-23 12:16:43,222 INFO L273 TraceCheckUtils]: 134: Hoare triple {13502#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13502#false} is VALID [2018-11-23 12:16:43,222 INFO L273 TraceCheckUtils]: 135: Hoare triple {13502#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13502#false} is VALID [2018-11-23 12:16:43,223 INFO L273 TraceCheckUtils]: 136: Hoare triple {13502#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13502#false} is VALID [2018-11-23 12:16:43,223 INFO L273 TraceCheckUtils]: 137: Hoare triple {13502#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13502#false} is VALID [2018-11-23 12:16:43,223 INFO L273 TraceCheckUtils]: 138: Hoare triple {13502#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13502#false} is VALID [2018-11-23 12:16:43,223 INFO L273 TraceCheckUtils]: 139: Hoare triple {13502#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13502#false} is VALID [2018-11-23 12:16:43,223 INFO L273 TraceCheckUtils]: 140: Hoare triple {13502#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13502#false} is VALID [2018-11-23 12:16:43,223 INFO L273 TraceCheckUtils]: 141: Hoare triple {13502#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13502#false} is VALID [2018-11-23 12:16:43,223 INFO L273 TraceCheckUtils]: 142: Hoare triple {13502#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13502#false} is VALID [2018-11-23 12:16:43,223 INFO L273 TraceCheckUtils]: 143: Hoare triple {13502#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {13502#false} is VALID [2018-11-23 12:16:43,223 INFO L273 TraceCheckUtils]: 144: Hoare triple {13502#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {13502#false} is VALID [2018-11-23 12:16:43,223 INFO L273 TraceCheckUtils]: 145: Hoare triple {13502#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {13502#false} is VALID [2018-11-23 12:16:43,224 INFO L273 TraceCheckUtils]: 146: Hoare triple {13502#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {13502#false} is VALID [2018-11-23 12:16:43,224 INFO L273 TraceCheckUtils]: 147: Hoare triple {13502#false} assume !(~i~0 < 20); {13502#false} is VALID [2018-11-23 12:16:43,224 INFO L273 TraceCheckUtils]: 148: Hoare triple {13502#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {13502#false} is VALID [2018-11-23 12:16:43,224 INFO L273 TraceCheckUtils]: 149: Hoare triple {13502#false} assume true; {13502#false} is VALID [2018-11-23 12:16:43,224 INFO L268 TraceCheckUtils]: 150: Hoare quadruple {13502#false} {13502#false} #81#return; {13502#false} is VALID [2018-11-23 12:16:43,224 INFO L273 TraceCheckUtils]: 151: Hoare triple {13502#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {13502#false} is VALID [2018-11-23 12:16:43,224 INFO L273 TraceCheckUtils]: 152: Hoare triple {13502#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {13502#false} is VALID [2018-11-23 12:16:43,224 INFO L273 TraceCheckUtils]: 153: Hoare triple {13502#false} assume !false; {13502#false} is VALID [2018-11-23 12:16:43,233 INFO L134 CoverageAnalysis]: Checked inductivity of 1106 backedges. 316 proven. 66 refuted. 0 times theorem prover too weak. 724 trivial. 0 not checked. [2018-11-23 12:16:43,252 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:16:43,253 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 10 [2018-11-23 12:16:43,253 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 154 [2018-11-23 12:16:43,254 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:43,254 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states. [2018-11-23 12:16:43,375 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:43,376 INFO L459 AbstractCegarLoop]: Interpolant automaton has 10 states [2018-11-23 12:16:43,376 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2018-11-23 12:16:43,376 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=45, Unknown=0, NotChecked=0, Total=90 [2018-11-23 12:16:43,377 INFO L87 Difference]: Start difference. First operand 97 states and 107 transitions. Second operand 10 states. [2018-11-23 12:16:43,630 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:43,630 INFO L93 Difference]: Finished difference Result 153 states and 177 transitions. [2018-11-23 12:16:43,631 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2018-11-23 12:16:43,631 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 154 [2018-11-23 12:16:43,631 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:43,631 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2018-11-23 12:16:43,633 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 94 transitions. [2018-11-23 12:16:43,633 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2018-11-23 12:16:43,635 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 94 transitions. [2018-11-23 12:16:43,636 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 94 transitions. [2018-11-23 12:16:43,733 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:16:43,735 INFO L225 Difference]: With dead ends: 153 [2018-11-23 12:16:43,736 INFO L226 Difference]: Without dead ends: 104 [2018-11-23 12:16:43,736 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 162 GetRequests, 154 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=45, Invalid=45, Unknown=0, NotChecked=0, Total=90 [2018-11-23 12:16:43,736 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 104 states. [2018-11-23 12:16:43,776 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 104 to 101. [2018-11-23 12:16:43,776 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:43,776 INFO L82 GeneralOperation]: Start isEquivalent. First operand 104 states. Second operand 101 states. [2018-11-23 12:16:43,776 INFO L74 IsIncluded]: Start isIncluded. First operand 104 states. Second operand 101 states. [2018-11-23 12:16:43,777 INFO L87 Difference]: Start difference. First operand 104 states. Second operand 101 states. [2018-11-23 12:16:43,779 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:43,779 INFO L93 Difference]: Finished difference Result 104 states and 116 transitions. [2018-11-23 12:16:43,779 INFO L276 IsEmpty]: Start isEmpty. Operand 104 states and 116 transitions. [2018-11-23 12:16:43,780 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:43,780 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:43,780 INFO L74 IsIncluded]: Start isIncluded. First operand 101 states. Second operand 104 states. [2018-11-23 12:16:43,780 INFO L87 Difference]: Start difference. First operand 101 states. Second operand 104 states. [2018-11-23 12:16:43,784 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:43,784 INFO L93 Difference]: Finished difference Result 104 states and 116 transitions. [2018-11-23 12:16:43,784 INFO L276 IsEmpty]: Start isEmpty. Operand 104 states and 116 transitions. [2018-11-23 12:16:43,784 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:43,785 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:43,785 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:43,785 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:43,785 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 101 states. [2018-11-23 12:16:43,788 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 101 states to 101 states and 112 transitions. [2018-11-23 12:16:43,788 INFO L78 Accepts]: Start accepts. Automaton has 101 states and 112 transitions. Word has length 154 [2018-11-23 12:16:43,788 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:43,788 INFO L480 AbstractCegarLoop]: Abstraction has 101 states and 112 transitions. [2018-11-23 12:16:43,789 INFO L481 AbstractCegarLoop]: Interpolant automaton has 10 states. [2018-11-23 12:16:43,789 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 112 transitions. [2018-11-23 12:16:43,790 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 167 [2018-11-23 12:16:43,790 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:43,790 INFO L402 BasicCegarLoop]: trace histogram [21, 21, 21, 21, 20, 20, 5, 5, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:43,790 INFO L423 AbstractCegarLoop]: === Iteration 24 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:43,790 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:43,791 INFO L82 PathProgramCache]: Analyzing trace with hash -1900284986, now seen corresponding path program 21 times [2018-11-23 12:16:43,791 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:43,791 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:43,792 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:43,792 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:16:43,792 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:43,821 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:44,157 INFO L256 TraceCheckUtils]: 0: Hoare triple {14536#true} call ULTIMATE.init(); {14536#true} is VALID [2018-11-23 12:16:44,158 INFO L273 TraceCheckUtils]: 1: Hoare triple {14536#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {14536#true} is VALID [2018-11-23 12:16:44,158 INFO L273 TraceCheckUtils]: 2: Hoare triple {14536#true} assume true; {14536#true} is VALID [2018-11-23 12:16:44,158 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {14536#true} {14536#true} #73#return; {14536#true} is VALID [2018-11-23 12:16:44,158 INFO L256 TraceCheckUtils]: 4: Hoare triple {14536#true} call #t~ret14 := main(); {14536#true} is VALID [2018-11-23 12:16:44,159 INFO L273 TraceCheckUtils]: 5: Hoare triple {14536#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {14536#true} is VALID [2018-11-23 12:16:44,159 INFO L273 TraceCheckUtils]: 6: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,159 INFO L273 TraceCheckUtils]: 7: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,159 INFO L273 TraceCheckUtils]: 8: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,159 INFO L273 TraceCheckUtils]: 9: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,160 INFO L273 TraceCheckUtils]: 10: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,160 INFO L273 TraceCheckUtils]: 11: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,160 INFO L273 TraceCheckUtils]: 12: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,160 INFO L273 TraceCheckUtils]: 13: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,160 INFO L273 TraceCheckUtils]: 14: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,160 INFO L273 TraceCheckUtils]: 15: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,160 INFO L273 TraceCheckUtils]: 16: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,160 INFO L273 TraceCheckUtils]: 17: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,160 INFO L273 TraceCheckUtils]: 18: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,161 INFO L273 TraceCheckUtils]: 19: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,161 INFO L273 TraceCheckUtils]: 20: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,161 INFO L273 TraceCheckUtils]: 21: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,161 INFO L273 TraceCheckUtils]: 22: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,161 INFO L273 TraceCheckUtils]: 23: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,161 INFO L273 TraceCheckUtils]: 24: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,161 INFO L273 TraceCheckUtils]: 25: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,161 INFO L273 TraceCheckUtils]: 26: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,161 INFO L273 TraceCheckUtils]: 27: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,162 INFO L273 TraceCheckUtils]: 28: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,162 INFO L273 TraceCheckUtils]: 29: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,162 INFO L273 TraceCheckUtils]: 30: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,162 INFO L273 TraceCheckUtils]: 31: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,162 INFO L273 TraceCheckUtils]: 32: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,162 INFO L273 TraceCheckUtils]: 33: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,162 INFO L273 TraceCheckUtils]: 34: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,162 INFO L273 TraceCheckUtils]: 35: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,162 INFO L273 TraceCheckUtils]: 36: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,163 INFO L273 TraceCheckUtils]: 37: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,163 INFO L273 TraceCheckUtils]: 38: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,163 INFO L273 TraceCheckUtils]: 39: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,163 INFO L273 TraceCheckUtils]: 40: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,163 INFO L273 TraceCheckUtils]: 41: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,163 INFO L273 TraceCheckUtils]: 42: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,163 INFO L273 TraceCheckUtils]: 43: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,163 INFO L273 TraceCheckUtils]: 44: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,163 INFO L273 TraceCheckUtils]: 45: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,163 INFO L273 TraceCheckUtils]: 46: Hoare triple {14536#true} assume !(~i~1 < 20); {14536#true} is VALID [2018-11-23 12:16:44,164 INFO L256 TraceCheckUtils]: 47: Hoare triple {14536#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {14536#true} is VALID [2018-11-23 12:16:44,164 INFO L273 TraceCheckUtils]: 48: Hoare triple {14536#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {14538#(= max_~i~0 0)} is VALID [2018-11-23 12:16:44,164 INFO L273 TraceCheckUtils]: 49: Hoare triple {14538#(= max_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14538#(= max_~i~0 0)} is VALID [2018-11-23 12:16:44,165 INFO L273 TraceCheckUtils]: 50: Hoare triple {14538#(= max_~i~0 0)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14538#(= max_~i~0 0)} is VALID [2018-11-23 12:16:44,165 INFO L273 TraceCheckUtils]: 51: Hoare triple {14538#(= max_~i~0 0)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14538#(= max_~i~0 0)} is VALID [2018-11-23 12:16:44,165 INFO L273 TraceCheckUtils]: 52: Hoare triple {14538#(= max_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14539#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:44,166 INFO L273 TraceCheckUtils]: 53: Hoare triple {14539#(<= max_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14539#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:44,166 INFO L273 TraceCheckUtils]: 54: Hoare triple {14539#(<= max_~i~0 1)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14539#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:44,166 INFO L273 TraceCheckUtils]: 55: Hoare triple {14539#(<= max_~i~0 1)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14539#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:44,167 INFO L273 TraceCheckUtils]: 56: Hoare triple {14539#(<= max_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14540#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:44,167 INFO L273 TraceCheckUtils]: 57: Hoare triple {14540#(<= max_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14540#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:44,167 INFO L273 TraceCheckUtils]: 58: Hoare triple {14540#(<= max_~i~0 2)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14540#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:44,167 INFO L273 TraceCheckUtils]: 59: Hoare triple {14540#(<= max_~i~0 2)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14540#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:44,168 INFO L273 TraceCheckUtils]: 60: Hoare triple {14540#(<= max_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14541#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:44,169 INFO L273 TraceCheckUtils]: 61: Hoare triple {14541#(<= max_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14541#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:44,169 INFO L273 TraceCheckUtils]: 62: Hoare triple {14541#(<= max_~i~0 3)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14541#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:44,169 INFO L273 TraceCheckUtils]: 63: Hoare triple {14541#(<= max_~i~0 3)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14541#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:44,170 INFO L273 TraceCheckUtils]: 64: Hoare triple {14541#(<= max_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14542#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:44,171 INFO L273 TraceCheckUtils]: 65: Hoare triple {14542#(<= max_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14542#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:44,171 INFO L273 TraceCheckUtils]: 66: Hoare triple {14542#(<= max_~i~0 4)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14542#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:44,172 INFO L273 TraceCheckUtils]: 67: Hoare triple {14542#(<= max_~i~0 4)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14542#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:44,172 INFO L273 TraceCheckUtils]: 68: Hoare triple {14542#(<= max_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14543#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:44,173 INFO L273 TraceCheckUtils]: 69: Hoare triple {14543#(<= max_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14543#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:44,173 INFO L273 TraceCheckUtils]: 70: Hoare triple {14543#(<= max_~i~0 5)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14543#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:44,174 INFO L273 TraceCheckUtils]: 71: Hoare triple {14543#(<= max_~i~0 5)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14543#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:44,175 INFO L273 TraceCheckUtils]: 72: Hoare triple {14543#(<= max_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14544#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:44,175 INFO L273 TraceCheckUtils]: 73: Hoare triple {14544#(<= max_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14544#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:44,176 INFO L273 TraceCheckUtils]: 74: Hoare triple {14544#(<= max_~i~0 6)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14544#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:44,176 INFO L273 TraceCheckUtils]: 75: Hoare triple {14544#(<= max_~i~0 6)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14544#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:44,177 INFO L273 TraceCheckUtils]: 76: Hoare triple {14544#(<= max_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14545#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:44,177 INFO L273 TraceCheckUtils]: 77: Hoare triple {14545#(<= max_~i~0 7)} assume !(~i~0 < 20); {14537#false} is VALID [2018-11-23 12:16:44,178 INFO L273 TraceCheckUtils]: 78: Hoare triple {14537#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {14537#false} is VALID [2018-11-23 12:16:44,178 INFO L273 TraceCheckUtils]: 79: Hoare triple {14537#false} assume true; {14537#false} is VALID [2018-11-23 12:16:44,178 INFO L268 TraceCheckUtils]: 80: Hoare quadruple {14537#false} {14536#true} #77#return; {14537#false} is VALID [2018-11-23 12:16:44,178 INFO L273 TraceCheckUtils]: 81: Hoare triple {14537#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {14537#false} is VALID [2018-11-23 12:16:44,178 INFO L256 TraceCheckUtils]: 82: Hoare triple {14537#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {14536#true} is VALID [2018-11-23 12:16:44,178 INFO L273 TraceCheckUtils]: 83: Hoare triple {14536#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {14536#true} is VALID [2018-11-23 12:16:44,179 INFO L273 TraceCheckUtils]: 84: Hoare triple {14536#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14536#true} is VALID [2018-11-23 12:16:44,179 INFO L273 TraceCheckUtils]: 85: Hoare triple {14536#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14536#true} is VALID [2018-11-23 12:16:44,179 INFO L273 TraceCheckUtils]: 86: Hoare triple {14536#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14536#true} is VALID [2018-11-23 12:16:44,179 INFO L273 TraceCheckUtils]: 87: Hoare triple {14536#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14536#true} is VALID [2018-11-23 12:16:44,179 INFO L273 TraceCheckUtils]: 88: Hoare triple {14536#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14536#true} is VALID [2018-11-23 12:16:44,179 INFO L273 TraceCheckUtils]: 89: Hoare triple {14536#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14536#true} is VALID [2018-11-23 12:16:44,180 INFO L273 TraceCheckUtils]: 90: Hoare triple {14536#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14536#true} is VALID [2018-11-23 12:16:44,180 INFO L273 TraceCheckUtils]: 91: Hoare triple {14536#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14536#true} is VALID [2018-11-23 12:16:44,180 INFO L273 TraceCheckUtils]: 92: Hoare triple {14536#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14536#true} is VALID [2018-11-23 12:16:44,180 INFO L273 TraceCheckUtils]: 93: Hoare triple {14536#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14536#true} is VALID [2018-11-23 12:16:44,180 INFO L273 TraceCheckUtils]: 94: Hoare triple {14536#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14536#true} is VALID [2018-11-23 12:16:44,180 INFO L273 TraceCheckUtils]: 95: Hoare triple {14536#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14536#true} is VALID [2018-11-23 12:16:44,181 INFO L273 TraceCheckUtils]: 96: Hoare triple {14536#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14536#true} is VALID [2018-11-23 12:16:44,181 INFO L273 TraceCheckUtils]: 97: Hoare triple {14536#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14536#true} is VALID [2018-11-23 12:16:44,181 INFO L273 TraceCheckUtils]: 98: Hoare triple {14536#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14536#true} is VALID [2018-11-23 12:16:44,181 INFO L273 TraceCheckUtils]: 99: Hoare triple {14536#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14536#true} is VALID [2018-11-23 12:16:44,181 INFO L273 TraceCheckUtils]: 100: Hoare triple {14536#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14536#true} is VALID [2018-11-23 12:16:44,181 INFO L273 TraceCheckUtils]: 101: Hoare triple {14536#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14536#true} is VALID [2018-11-23 12:16:44,182 INFO L273 TraceCheckUtils]: 102: Hoare triple {14536#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14536#true} is VALID [2018-11-23 12:16:44,182 INFO L273 TraceCheckUtils]: 103: Hoare triple {14536#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14536#true} is VALID [2018-11-23 12:16:44,182 INFO L273 TraceCheckUtils]: 104: Hoare triple {14536#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14536#true} is VALID [2018-11-23 12:16:44,182 INFO L273 TraceCheckUtils]: 105: Hoare triple {14536#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14536#true} is VALID [2018-11-23 12:16:44,182 INFO L273 TraceCheckUtils]: 106: Hoare triple {14536#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14536#true} is VALID [2018-11-23 12:16:44,182 INFO L273 TraceCheckUtils]: 107: Hoare triple {14536#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14536#true} is VALID [2018-11-23 12:16:44,182 INFO L273 TraceCheckUtils]: 108: Hoare triple {14536#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14536#true} is VALID [2018-11-23 12:16:44,182 INFO L273 TraceCheckUtils]: 109: Hoare triple {14536#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14536#true} is VALID [2018-11-23 12:16:44,183 INFO L273 TraceCheckUtils]: 110: Hoare triple {14536#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14536#true} is VALID [2018-11-23 12:16:44,183 INFO L273 TraceCheckUtils]: 111: Hoare triple {14536#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14536#true} is VALID [2018-11-23 12:16:44,183 INFO L273 TraceCheckUtils]: 112: Hoare triple {14536#true} assume !(~i~0 < 20); {14536#true} is VALID [2018-11-23 12:16:44,183 INFO L273 TraceCheckUtils]: 113: Hoare triple {14536#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {14536#true} is VALID [2018-11-23 12:16:44,183 INFO L273 TraceCheckUtils]: 114: Hoare triple {14536#true} assume true; {14536#true} is VALID [2018-11-23 12:16:44,183 INFO L268 TraceCheckUtils]: 115: Hoare quadruple {14536#true} {14537#false} #79#return; {14537#false} is VALID [2018-11-23 12:16:44,183 INFO L273 TraceCheckUtils]: 116: Hoare triple {14537#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {14537#false} is VALID [2018-11-23 12:16:44,183 INFO L273 TraceCheckUtils]: 117: Hoare triple {14537#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {14537#false} is VALID [2018-11-23 12:16:44,183 INFO L273 TraceCheckUtils]: 118: Hoare triple {14537#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {14537#false} is VALID [2018-11-23 12:16:44,183 INFO L273 TraceCheckUtils]: 119: Hoare triple {14537#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {14537#false} is VALID [2018-11-23 12:16:44,184 INFO L273 TraceCheckUtils]: 120: Hoare triple {14537#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {14537#false} is VALID [2018-11-23 12:16:44,184 INFO L273 TraceCheckUtils]: 121: Hoare triple {14537#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {14537#false} is VALID [2018-11-23 12:16:44,184 INFO L273 TraceCheckUtils]: 122: Hoare triple {14537#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {14537#false} is VALID [2018-11-23 12:16:44,184 INFO L273 TraceCheckUtils]: 123: Hoare triple {14537#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {14537#false} is VALID [2018-11-23 12:16:44,184 INFO L273 TraceCheckUtils]: 124: Hoare triple {14537#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {14537#false} is VALID [2018-11-23 12:16:44,184 INFO L273 TraceCheckUtils]: 125: Hoare triple {14537#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {14537#false} is VALID [2018-11-23 12:16:44,184 INFO L273 TraceCheckUtils]: 126: Hoare triple {14537#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {14537#false} is VALID [2018-11-23 12:16:44,184 INFO L273 TraceCheckUtils]: 127: Hoare triple {14537#false} assume !(~i~2 < 19); {14537#false} is VALID [2018-11-23 12:16:44,184 INFO L273 TraceCheckUtils]: 128: Hoare triple {14537#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {14537#false} is VALID [2018-11-23 12:16:44,185 INFO L256 TraceCheckUtils]: 129: Hoare triple {14537#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {14536#true} is VALID [2018-11-23 12:16:44,185 INFO L273 TraceCheckUtils]: 130: Hoare triple {14536#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {14536#true} is VALID [2018-11-23 12:16:44,185 INFO L273 TraceCheckUtils]: 131: Hoare triple {14536#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14536#true} is VALID [2018-11-23 12:16:44,185 INFO L273 TraceCheckUtils]: 132: Hoare triple {14536#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14536#true} is VALID [2018-11-23 12:16:44,185 INFO L273 TraceCheckUtils]: 133: Hoare triple {14536#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14536#true} is VALID [2018-11-23 12:16:44,185 INFO L273 TraceCheckUtils]: 134: Hoare triple {14536#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14536#true} is VALID [2018-11-23 12:16:44,185 INFO L273 TraceCheckUtils]: 135: Hoare triple {14536#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14536#true} is VALID [2018-11-23 12:16:44,185 INFO L273 TraceCheckUtils]: 136: Hoare triple {14536#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14536#true} is VALID [2018-11-23 12:16:44,185 INFO L273 TraceCheckUtils]: 137: Hoare triple {14536#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14536#true} is VALID [2018-11-23 12:16:44,185 INFO L273 TraceCheckUtils]: 138: Hoare triple {14536#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14536#true} is VALID [2018-11-23 12:16:44,186 INFO L273 TraceCheckUtils]: 139: Hoare triple {14536#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14536#true} is VALID [2018-11-23 12:16:44,186 INFO L273 TraceCheckUtils]: 140: Hoare triple {14536#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14536#true} is VALID [2018-11-23 12:16:44,186 INFO L273 TraceCheckUtils]: 141: Hoare triple {14536#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14536#true} is VALID [2018-11-23 12:16:44,186 INFO L273 TraceCheckUtils]: 142: Hoare triple {14536#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14536#true} is VALID [2018-11-23 12:16:44,186 INFO L273 TraceCheckUtils]: 143: Hoare triple {14536#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14536#true} is VALID [2018-11-23 12:16:44,186 INFO L273 TraceCheckUtils]: 144: Hoare triple {14536#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14536#true} is VALID [2018-11-23 12:16:44,186 INFO L273 TraceCheckUtils]: 145: Hoare triple {14536#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14536#true} is VALID [2018-11-23 12:16:44,186 INFO L273 TraceCheckUtils]: 146: Hoare triple {14536#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14536#true} is VALID [2018-11-23 12:16:44,186 INFO L273 TraceCheckUtils]: 147: Hoare triple {14536#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14536#true} is VALID [2018-11-23 12:16:44,186 INFO L273 TraceCheckUtils]: 148: Hoare triple {14536#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14536#true} is VALID [2018-11-23 12:16:44,187 INFO L273 TraceCheckUtils]: 149: Hoare triple {14536#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14536#true} is VALID [2018-11-23 12:16:44,187 INFO L273 TraceCheckUtils]: 150: Hoare triple {14536#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14536#true} is VALID [2018-11-23 12:16:44,187 INFO L273 TraceCheckUtils]: 151: Hoare triple {14536#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14536#true} is VALID [2018-11-23 12:16:44,187 INFO L273 TraceCheckUtils]: 152: Hoare triple {14536#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14536#true} is VALID [2018-11-23 12:16:44,187 INFO L273 TraceCheckUtils]: 153: Hoare triple {14536#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14536#true} is VALID [2018-11-23 12:16:44,187 INFO L273 TraceCheckUtils]: 154: Hoare triple {14536#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14536#true} is VALID [2018-11-23 12:16:44,187 INFO L273 TraceCheckUtils]: 155: Hoare triple {14536#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14536#true} is VALID [2018-11-23 12:16:44,187 INFO L273 TraceCheckUtils]: 156: Hoare triple {14536#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14536#true} is VALID [2018-11-23 12:16:44,187 INFO L273 TraceCheckUtils]: 157: Hoare triple {14536#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14536#true} is VALID [2018-11-23 12:16:44,188 INFO L273 TraceCheckUtils]: 158: Hoare triple {14536#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14536#true} is VALID [2018-11-23 12:16:44,188 INFO L273 TraceCheckUtils]: 159: Hoare triple {14536#true} assume !(~i~0 < 20); {14536#true} is VALID [2018-11-23 12:16:44,188 INFO L273 TraceCheckUtils]: 160: Hoare triple {14536#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {14536#true} is VALID [2018-11-23 12:16:44,188 INFO L273 TraceCheckUtils]: 161: Hoare triple {14536#true} assume true; {14536#true} is VALID [2018-11-23 12:16:44,188 INFO L268 TraceCheckUtils]: 162: Hoare quadruple {14536#true} {14537#false} #81#return; {14537#false} is VALID [2018-11-23 12:16:44,188 INFO L273 TraceCheckUtils]: 163: Hoare triple {14537#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {14537#false} is VALID [2018-11-23 12:16:44,188 INFO L273 TraceCheckUtils]: 164: Hoare triple {14537#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {14537#false} is VALID [2018-11-23 12:16:44,188 INFO L273 TraceCheckUtils]: 165: Hoare triple {14537#false} assume !false; {14537#false} is VALID [2018-11-23 12:16:44,199 INFO L134 CoverageAnalysis]: Checked inductivity of 1343 backedges. 0 proven. 519 refuted. 0 times theorem prover too weak. 824 trivial. 0 not checked. [2018-11-23 12:16:44,199 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:16:44,199 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 23 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 23 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:16:44,209 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:16:44,300 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 7 check-sat command(s) [2018-11-23 12:16:44,300 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:16:44,335 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:44,337 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:44,524 INFO L256 TraceCheckUtils]: 0: Hoare triple {14536#true} call ULTIMATE.init(); {14536#true} is VALID [2018-11-23 12:16:44,524 INFO L273 TraceCheckUtils]: 1: Hoare triple {14536#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {14536#true} is VALID [2018-11-23 12:16:44,525 INFO L273 TraceCheckUtils]: 2: Hoare triple {14536#true} assume true; {14536#true} is VALID [2018-11-23 12:16:44,525 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {14536#true} {14536#true} #73#return; {14536#true} is VALID [2018-11-23 12:16:44,525 INFO L256 TraceCheckUtils]: 4: Hoare triple {14536#true} call #t~ret14 := main(); {14536#true} is VALID [2018-11-23 12:16:44,525 INFO L273 TraceCheckUtils]: 5: Hoare triple {14536#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {14536#true} is VALID [2018-11-23 12:16:44,525 INFO L273 TraceCheckUtils]: 6: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,526 INFO L273 TraceCheckUtils]: 7: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,526 INFO L273 TraceCheckUtils]: 8: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,526 INFO L273 TraceCheckUtils]: 9: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,526 INFO L273 TraceCheckUtils]: 10: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,526 INFO L273 TraceCheckUtils]: 11: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,526 INFO L273 TraceCheckUtils]: 12: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,527 INFO L273 TraceCheckUtils]: 13: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,527 INFO L273 TraceCheckUtils]: 14: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,527 INFO L273 TraceCheckUtils]: 15: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,527 INFO L273 TraceCheckUtils]: 16: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,527 INFO L273 TraceCheckUtils]: 17: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,527 INFO L273 TraceCheckUtils]: 18: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,527 INFO L273 TraceCheckUtils]: 19: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,527 INFO L273 TraceCheckUtils]: 20: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,527 INFO L273 TraceCheckUtils]: 21: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,527 INFO L273 TraceCheckUtils]: 22: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,528 INFO L273 TraceCheckUtils]: 23: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,528 INFO L273 TraceCheckUtils]: 24: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,528 INFO L273 TraceCheckUtils]: 25: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,528 INFO L273 TraceCheckUtils]: 26: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,528 INFO L273 TraceCheckUtils]: 27: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,528 INFO L273 TraceCheckUtils]: 28: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,528 INFO L273 TraceCheckUtils]: 29: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,528 INFO L273 TraceCheckUtils]: 30: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,528 INFO L273 TraceCheckUtils]: 31: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,529 INFO L273 TraceCheckUtils]: 32: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,529 INFO L273 TraceCheckUtils]: 33: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,529 INFO L273 TraceCheckUtils]: 34: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,529 INFO L273 TraceCheckUtils]: 35: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,529 INFO L273 TraceCheckUtils]: 36: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,529 INFO L273 TraceCheckUtils]: 37: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,529 INFO L273 TraceCheckUtils]: 38: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,529 INFO L273 TraceCheckUtils]: 39: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,529 INFO L273 TraceCheckUtils]: 40: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,529 INFO L273 TraceCheckUtils]: 41: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,530 INFO L273 TraceCheckUtils]: 42: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,530 INFO L273 TraceCheckUtils]: 43: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,530 INFO L273 TraceCheckUtils]: 44: Hoare triple {14536#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {14536#true} is VALID [2018-11-23 12:16:44,530 INFO L273 TraceCheckUtils]: 45: Hoare triple {14536#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {14536#true} is VALID [2018-11-23 12:16:44,530 INFO L273 TraceCheckUtils]: 46: Hoare triple {14536#true} assume !(~i~1 < 20); {14536#true} is VALID [2018-11-23 12:16:44,530 INFO L256 TraceCheckUtils]: 47: Hoare triple {14536#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {14536#true} is VALID [2018-11-23 12:16:44,530 INFO L273 TraceCheckUtils]: 48: Hoare triple {14536#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {14536#true} is VALID [2018-11-23 12:16:44,530 INFO L273 TraceCheckUtils]: 49: Hoare triple {14536#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14536#true} is VALID [2018-11-23 12:16:44,530 INFO L273 TraceCheckUtils]: 50: Hoare triple {14536#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14536#true} is VALID [2018-11-23 12:16:44,530 INFO L273 TraceCheckUtils]: 51: Hoare triple {14536#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14536#true} is VALID [2018-11-23 12:16:44,531 INFO L273 TraceCheckUtils]: 52: Hoare triple {14536#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14536#true} is VALID [2018-11-23 12:16:44,531 INFO L273 TraceCheckUtils]: 53: Hoare triple {14536#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14536#true} is VALID [2018-11-23 12:16:44,531 INFO L273 TraceCheckUtils]: 54: Hoare triple {14536#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14536#true} is VALID [2018-11-23 12:16:44,531 INFO L273 TraceCheckUtils]: 55: Hoare triple {14536#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14536#true} is VALID [2018-11-23 12:16:44,531 INFO L273 TraceCheckUtils]: 56: Hoare triple {14536#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14536#true} is VALID [2018-11-23 12:16:44,531 INFO L273 TraceCheckUtils]: 57: Hoare triple {14536#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14536#true} is VALID [2018-11-23 12:16:44,531 INFO L273 TraceCheckUtils]: 58: Hoare triple {14536#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14536#true} is VALID [2018-11-23 12:16:44,531 INFO L273 TraceCheckUtils]: 59: Hoare triple {14536#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14536#true} is VALID [2018-11-23 12:16:44,531 INFO L273 TraceCheckUtils]: 60: Hoare triple {14536#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14536#true} is VALID [2018-11-23 12:16:44,531 INFO L273 TraceCheckUtils]: 61: Hoare triple {14536#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14536#true} is VALID [2018-11-23 12:16:44,532 INFO L273 TraceCheckUtils]: 62: Hoare triple {14536#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14536#true} is VALID [2018-11-23 12:16:44,532 INFO L273 TraceCheckUtils]: 63: Hoare triple {14536#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14536#true} is VALID [2018-11-23 12:16:44,532 INFO L273 TraceCheckUtils]: 64: Hoare triple {14536#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14536#true} is VALID [2018-11-23 12:16:44,532 INFO L273 TraceCheckUtils]: 65: Hoare triple {14536#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14536#true} is VALID [2018-11-23 12:16:44,532 INFO L273 TraceCheckUtils]: 66: Hoare triple {14536#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14536#true} is VALID [2018-11-23 12:16:44,532 INFO L273 TraceCheckUtils]: 67: Hoare triple {14536#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14536#true} is VALID [2018-11-23 12:16:44,532 INFO L273 TraceCheckUtils]: 68: Hoare triple {14536#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14536#true} is VALID [2018-11-23 12:16:44,532 INFO L273 TraceCheckUtils]: 69: Hoare triple {14536#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14536#true} is VALID [2018-11-23 12:16:44,532 INFO L273 TraceCheckUtils]: 70: Hoare triple {14536#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14536#true} is VALID [2018-11-23 12:16:44,533 INFO L273 TraceCheckUtils]: 71: Hoare triple {14536#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14536#true} is VALID [2018-11-23 12:16:44,533 INFO L273 TraceCheckUtils]: 72: Hoare triple {14536#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14536#true} is VALID [2018-11-23 12:16:44,533 INFO L273 TraceCheckUtils]: 73: Hoare triple {14536#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14536#true} is VALID [2018-11-23 12:16:44,533 INFO L273 TraceCheckUtils]: 74: Hoare triple {14536#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14536#true} is VALID [2018-11-23 12:16:44,533 INFO L273 TraceCheckUtils]: 75: Hoare triple {14536#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14536#true} is VALID [2018-11-23 12:16:44,533 INFO L273 TraceCheckUtils]: 76: Hoare triple {14536#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14536#true} is VALID [2018-11-23 12:16:44,533 INFO L273 TraceCheckUtils]: 77: Hoare triple {14536#true} assume !(~i~0 < 20); {14536#true} is VALID [2018-11-23 12:16:44,533 INFO L273 TraceCheckUtils]: 78: Hoare triple {14536#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {14536#true} is VALID [2018-11-23 12:16:44,533 INFO L273 TraceCheckUtils]: 79: Hoare triple {14536#true} assume true; {14536#true} is VALID [2018-11-23 12:16:44,533 INFO L268 TraceCheckUtils]: 80: Hoare quadruple {14536#true} {14536#true} #77#return; {14536#true} is VALID [2018-11-23 12:16:44,534 INFO L273 TraceCheckUtils]: 81: Hoare triple {14536#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {14536#true} is VALID [2018-11-23 12:16:44,534 INFO L256 TraceCheckUtils]: 82: Hoare triple {14536#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {14536#true} is VALID [2018-11-23 12:16:44,534 INFO L273 TraceCheckUtils]: 83: Hoare triple {14536#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {14536#true} is VALID [2018-11-23 12:16:44,534 INFO L273 TraceCheckUtils]: 84: Hoare triple {14536#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14536#true} is VALID [2018-11-23 12:16:44,534 INFO L273 TraceCheckUtils]: 85: Hoare triple {14536#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14536#true} is VALID [2018-11-23 12:16:44,534 INFO L273 TraceCheckUtils]: 86: Hoare triple {14536#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14536#true} is VALID [2018-11-23 12:16:44,534 INFO L273 TraceCheckUtils]: 87: Hoare triple {14536#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14536#true} is VALID [2018-11-23 12:16:44,534 INFO L273 TraceCheckUtils]: 88: Hoare triple {14536#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14536#true} is VALID [2018-11-23 12:16:44,534 INFO L273 TraceCheckUtils]: 89: Hoare triple {14536#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14536#true} is VALID [2018-11-23 12:16:44,535 INFO L273 TraceCheckUtils]: 90: Hoare triple {14536#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14536#true} is VALID [2018-11-23 12:16:44,535 INFO L273 TraceCheckUtils]: 91: Hoare triple {14536#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14536#true} is VALID [2018-11-23 12:16:44,535 INFO L273 TraceCheckUtils]: 92: Hoare triple {14536#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14536#true} is VALID [2018-11-23 12:16:44,535 INFO L273 TraceCheckUtils]: 93: Hoare triple {14536#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14536#true} is VALID [2018-11-23 12:16:44,535 INFO L273 TraceCheckUtils]: 94: Hoare triple {14536#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14536#true} is VALID [2018-11-23 12:16:44,535 INFO L273 TraceCheckUtils]: 95: Hoare triple {14536#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14536#true} is VALID [2018-11-23 12:16:44,535 INFO L273 TraceCheckUtils]: 96: Hoare triple {14536#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14536#true} is VALID [2018-11-23 12:16:44,535 INFO L273 TraceCheckUtils]: 97: Hoare triple {14536#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14536#true} is VALID [2018-11-23 12:16:44,535 INFO L273 TraceCheckUtils]: 98: Hoare triple {14536#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14536#true} is VALID [2018-11-23 12:16:44,535 INFO L273 TraceCheckUtils]: 99: Hoare triple {14536#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14536#true} is VALID [2018-11-23 12:16:44,536 INFO L273 TraceCheckUtils]: 100: Hoare triple {14536#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14536#true} is VALID [2018-11-23 12:16:44,536 INFO L273 TraceCheckUtils]: 101: Hoare triple {14536#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14536#true} is VALID [2018-11-23 12:16:44,536 INFO L273 TraceCheckUtils]: 102: Hoare triple {14536#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14536#true} is VALID [2018-11-23 12:16:44,536 INFO L273 TraceCheckUtils]: 103: Hoare triple {14536#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14536#true} is VALID [2018-11-23 12:16:44,536 INFO L273 TraceCheckUtils]: 104: Hoare triple {14536#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14536#true} is VALID [2018-11-23 12:16:44,536 INFO L273 TraceCheckUtils]: 105: Hoare triple {14536#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14536#true} is VALID [2018-11-23 12:16:44,536 INFO L273 TraceCheckUtils]: 106: Hoare triple {14536#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14536#true} is VALID [2018-11-23 12:16:44,536 INFO L273 TraceCheckUtils]: 107: Hoare triple {14536#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14536#true} is VALID [2018-11-23 12:16:44,536 INFO L273 TraceCheckUtils]: 108: Hoare triple {14536#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14536#true} is VALID [2018-11-23 12:16:44,536 INFO L273 TraceCheckUtils]: 109: Hoare triple {14536#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14536#true} is VALID [2018-11-23 12:16:44,537 INFO L273 TraceCheckUtils]: 110: Hoare triple {14536#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14536#true} is VALID [2018-11-23 12:16:44,537 INFO L273 TraceCheckUtils]: 111: Hoare triple {14536#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14536#true} is VALID [2018-11-23 12:16:44,537 INFO L273 TraceCheckUtils]: 112: Hoare triple {14536#true} assume !(~i~0 < 20); {14536#true} is VALID [2018-11-23 12:16:44,537 INFO L273 TraceCheckUtils]: 113: Hoare triple {14536#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {14536#true} is VALID [2018-11-23 12:16:44,537 INFO L273 TraceCheckUtils]: 114: Hoare triple {14536#true} assume true; {14536#true} is VALID [2018-11-23 12:16:44,537 INFO L268 TraceCheckUtils]: 115: Hoare quadruple {14536#true} {14536#true} #79#return; {14536#true} is VALID [2018-11-23 12:16:44,538 INFO L273 TraceCheckUtils]: 116: Hoare triple {14536#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {14897#(<= main_~i~2 0)} is VALID [2018-11-23 12:16:44,538 INFO L273 TraceCheckUtils]: 117: Hoare triple {14897#(<= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {14897#(<= main_~i~2 0)} is VALID [2018-11-23 12:16:44,538 INFO L273 TraceCheckUtils]: 118: Hoare triple {14897#(<= main_~i~2 0)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {14904#(<= main_~i~2 1)} is VALID [2018-11-23 12:16:44,542 INFO L273 TraceCheckUtils]: 119: Hoare triple {14904#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {14904#(<= main_~i~2 1)} is VALID [2018-11-23 12:16:44,542 INFO L273 TraceCheckUtils]: 120: Hoare triple {14904#(<= main_~i~2 1)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {14911#(<= main_~i~2 2)} is VALID [2018-11-23 12:16:44,542 INFO L273 TraceCheckUtils]: 121: Hoare triple {14911#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {14911#(<= main_~i~2 2)} is VALID [2018-11-23 12:16:44,543 INFO L273 TraceCheckUtils]: 122: Hoare triple {14911#(<= main_~i~2 2)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {14918#(<= main_~i~2 3)} is VALID [2018-11-23 12:16:44,543 INFO L273 TraceCheckUtils]: 123: Hoare triple {14918#(<= main_~i~2 3)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {14918#(<= main_~i~2 3)} is VALID [2018-11-23 12:16:44,544 INFO L273 TraceCheckUtils]: 124: Hoare triple {14918#(<= main_~i~2 3)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {14925#(<= main_~i~2 4)} is VALID [2018-11-23 12:16:44,545 INFO L273 TraceCheckUtils]: 125: Hoare triple {14925#(<= main_~i~2 4)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {14925#(<= main_~i~2 4)} is VALID [2018-11-23 12:16:44,545 INFO L273 TraceCheckUtils]: 126: Hoare triple {14925#(<= main_~i~2 4)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {14932#(<= main_~i~2 5)} is VALID [2018-11-23 12:16:44,545 INFO L273 TraceCheckUtils]: 127: Hoare triple {14932#(<= main_~i~2 5)} assume !(~i~2 < 19); {14537#false} is VALID [2018-11-23 12:16:44,546 INFO L273 TraceCheckUtils]: 128: Hoare triple {14537#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {14537#false} is VALID [2018-11-23 12:16:44,546 INFO L256 TraceCheckUtils]: 129: Hoare triple {14537#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {14537#false} is VALID [2018-11-23 12:16:44,546 INFO L273 TraceCheckUtils]: 130: Hoare triple {14537#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {14537#false} is VALID [2018-11-23 12:16:44,546 INFO L273 TraceCheckUtils]: 131: Hoare triple {14537#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14537#false} is VALID [2018-11-23 12:16:44,546 INFO L273 TraceCheckUtils]: 132: Hoare triple {14537#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14537#false} is VALID [2018-11-23 12:16:44,547 INFO L273 TraceCheckUtils]: 133: Hoare triple {14537#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14537#false} is VALID [2018-11-23 12:16:44,547 INFO L273 TraceCheckUtils]: 134: Hoare triple {14537#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14537#false} is VALID [2018-11-23 12:16:44,547 INFO L273 TraceCheckUtils]: 135: Hoare triple {14537#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14537#false} is VALID [2018-11-23 12:16:44,547 INFO L273 TraceCheckUtils]: 136: Hoare triple {14537#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14537#false} is VALID [2018-11-23 12:16:44,547 INFO L273 TraceCheckUtils]: 137: Hoare triple {14537#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14537#false} is VALID [2018-11-23 12:16:44,547 INFO L273 TraceCheckUtils]: 138: Hoare triple {14537#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14537#false} is VALID [2018-11-23 12:16:44,548 INFO L273 TraceCheckUtils]: 139: Hoare triple {14537#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14537#false} is VALID [2018-11-23 12:16:44,548 INFO L273 TraceCheckUtils]: 140: Hoare triple {14537#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14537#false} is VALID [2018-11-23 12:16:44,548 INFO L273 TraceCheckUtils]: 141: Hoare triple {14537#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14537#false} is VALID [2018-11-23 12:16:44,548 INFO L273 TraceCheckUtils]: 142: Hoare triple {14537#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14537#false} is VALID [2018-11-23 12:16:44,548 INFO L273 TraceCheckUtils]: 143: Hoare triple {14537#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14537#false} is VALID [2018-11-23 12:16:44,548 INFO L273 TraceCheckUtils]: 144: Hoare triple {14537#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14537#false} is VALID [2018-11-23 12:16:44,548 INFO L273 TraceCheckUtils]: 145: Hoare triple {14537#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14537#false} is VALID [2018-11-23 12:16:44,548 INFO L273 TraceCheckUtils]: 146: Hoare triple {14537#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14537#false} is VALID [2018-11-23 12:16:44,548 INFO L273 TraceCheckUtils]: 147: Hoare triple {14537#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14537#false} is VALID [2018-11-23 12:16:44,549 INFO L273 TraceCheckUtils]: 148: Hoare triple {14537#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14537#false} is VALID [2018-11-23 12:16:44,549 INFO L273 TraceCheckUtils]: 149: Hoare triple {14537#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14537#false} is VALID [2018-11-23 12:16:44,549 INFO L273 TraceCheckUtils]: 150: Hoare triple {14537#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14537#false} is VALID [2018-11-23 12:16:44,549 INFO L273 TraceCheckUtils]: 151: Hoare triple {14537#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14537#false} is VALID [2018-11-23 12:16:44,549 INFO L273 TraceCheckUtils]: 152: Hoare triple {14537#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14537#false} is VALID [2018-11-23 12:16:44,549 INFO L273 TraceCheckUtils]: 153: Hoare triple {14537#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14537#false} is VALID [2018-11-23 12:16:44,549 INFO L273 TraceCheckUtils]: 154: Hoare triple {14537#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14537#false} is VALID [2018-11-23 12:16:44,549 INFO L273 TraceCheckUtils]: 155: Hoare triple {14537#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {14537#false} is VALID [2018-11-23 12:16:44,549 INFO L273 TraceCheckUtils]: 156: Hoare triple {14537#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {14537#false} is VALID [2018-11-23 12:16:44,549 INFO L273 TraceCheckUtils]: 157: Hoare triple {14537#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {14537#false} is VALID [2018-11-23 12:16:44,550 INFO L273 TraceCheckUtils]: 158: Hoare triple {14537#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {14537#false} is VALID [2018-11-23 12:16:44,550 INFO L273 TraceCheckUtils]: 159: Hoare triple {14537#false} assume !(~i~0 < 20); {14537#false} is VALID [2018-11-23 12:16:44,550 INFO L273 TraceCheckUtils]: 160: Hoare triple {14537#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {14537#false} is VALID [2018-11-23 12:16:44,550 INFO L273 TraceCheckUtils]: 161: Hoare triple {14537#false} assume true; {14537#false} is VALID [2018-11-23 12:16:44,550 INFO L268 TraceCheckUtils]: 162: Hoare quadruple {14537#false} {14537#false} #81#return; {14537#false} is VALID [2018-11-23 12:16:44,550 INFO L273 TraceCheckUtils]: 163: Hoare triple {14537#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {14537#false} is VALID [2018-11-23 12:16:44,550 INFO L273 TraceCheckUtils]: 164: Hoare triple {14537#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {14537#false} is VALID [2018-11-23 12:16:44,550 INFO L273 TraceCheckUtils]: 165: Hoare triple {14537#false} assume !false; {14537#false} is VALID [2018-11-23 12:16:44,560 INFO L134 CoverageAnalysis]: Checked inductivity of 1343 backedges. 430 proven. 25 refuted. 0 times theorem prover too weak. 888 trivial. 0 not checked. [2018-11-23 12:16:44,579 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:16:44,579 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 8] total 16 [2018-11-23 12:16:44,579 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 166 [2018-11-23 12:16:44,580 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:44,580 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states. [2018-11-23 12:16:44,661 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:44,661 INFO L459 AbstractCegarLoop]: Interpolant automaton has 16 states [2018-11-23 12:16:44,662 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2018-11-23 12:16:44,662 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=72, Invalid=168, Unknown=0, NotChecked=0, Total=240 [2018-11-23 12:16:44,662 INFO L87 Difference]: Start difference. First operand 101 states and 112 transitions. Second operand 16 states. [2018-11-23 12:16:45,149 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:45,149 INFO L93 Difference]: Finished difference Result 164 states and 191 transitions. [2018-11-23 12:16:45,150 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2018-11-23 12:16:45,150 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 166 [2018-11-23 12:16:45,150 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:45,150 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-23 12:16:45,152 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 112 transitions. [2018-11-23 12:16:45,152 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-23 12:16:45,154 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 112 transitions. [2018-11-23 12:16:45,154 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 112 transitions. [2018-11-23 12:16:45,269 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:16:45,271 INFO L225 Difference]: With dead ends: 164 [2018-11-23 12:16:45,272 INFO L226 Difference]: Without dead ends: 111 [2018-11-23 12:16:45,272 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 175 GetRequests, 161 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 42 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=72, Invalid=168, Unknown=0, NotChecked=0, Total=240 [2018-11-23 12:16:45,272 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 111 states. [2018-11-23 12:16:45,305 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 111 to 107. [2018-11-23 12:16:45,305 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:45,305 INFO L82 GeneralOperation]: Start isEquivalent. First operand 111 states. Second operand 107 states. [2018-11-23 12:16:45,305 INFO L74 IsIncluded]: Start isIncluded. First operand 111 states. Second operand 107 states. [2018-11-23 12:16:45,306 INFO L87 Difference]: Start difference. First operand 111 states. Second operand 107 states. [2018-11-23 12:16:45,309 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:45,310 INFO L93 Difference]: Finished difference Result 111 states and 124 transitions. [2018-11-23 12:16:45,310 INFO L276 IsEmpty]: Start isEmpty. Operand 111 states and 124 transitions. [2018-11-23 12:16:45,310 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:45,311 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:45,311 INFO L74 IsIncluded]: Start isIncluded. First operand 107 states. Second operand 111 states. [2018-11-23 12:16:45,311 INFO L87 Difference]: Start difference. First operand 107 states. Second operand 111 states. [2018-11-23 12:16:45,313 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:45,313 INFO L93 Difference]: Finished difference Result 111 states and 124 transitions. [2018-11-23 12:16:45,313 INFO L276 IsEmpty]: Start isEmpty. Operand 111 states and 124 transitions. [2018-11-23 12:16:45,314 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:45,314 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:45,314 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:45,314 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:45,314 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 107 states. [2018-11-23 12:16:45,316 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 107 states to 107 states and 119 transitions. [2018-11-23 12:16:45,316 INFO L78 Accepts]: Start accepts. Automaton has 107 states and 119 transitions. Word has length 166 [2018-11-23 12:16:45,317 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:45,317 INFO L480 AbstractCegarLoop]: Abstraction has 107 states and 119 transitions. [2018-11-23 12:16:45,317 INFO L481 AbstractCegarLoop]: Interpolant automaton has 16 states. [2018-11-23 12:16:45,317 INFO L276 IsEmpty]: Start isEmpty. Operand 107 states and 119 transitions. [2018-11-23 12:16:45,318 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 181 [2018-11-23 12:16:45,318 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:45,318 INFO L402 BasicCegarLoop]: trace histogram [24, 24, 24, 24, 20, 20, 6, 6, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:45,319 INFO L423 AbstractCegarLoop]: === Iteration 25 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:45,319 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:45,319 INFO L82 PathProgramCache]: Analyzing trace with hash 614179775, now seen corresponding path program 22 times [2018-11-23 12:16:45,319 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:45,319 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:45,320 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:45,320 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:16:45,320 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:45,350 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:46,317 INFO L256 TraceCheckUtils]: 0: Hoare triple {15649#true} call ULTIMATE.init(); {15649#true} is VALID [2018-11-23 12:16:46,318 INFO L273 TraceCheckUtils]: 1: Hoare triple {15649#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {15649#true} is VALID [2018-11-23 12:16:46,318 INFO L273 TraceCheckUtils]: 2: Hoare triple {15649#true} assume true; {15649#true} is VALID [2018-11-23 12:16:46,318 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {15649#true} {15649#true} #73#return; {15649#true} is VALID [2018-11-23 12:16:46,318 INFO L256 TraceCheckUtils]: 4: Hoare triple {15649#true} call #t~ret14 := main(); {15649#true} is VALID [2018-11-23 12:16:46,318 INFO L273 TraceCheckUtils]: 5: Hoare triple {15649#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {15649#true} is VALID [2018-11-23 12:16:46,318 INFO L273 TraceCheckUtils]: 6: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,319 INFO L273 TraceCheckUtils]: 7: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,319 INFO L273 TraceCheckUtils]: 8: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,319 INFO L273 TraceCheckUtils]: 9: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,319 INFO L273 TraceCheckUtils]: 10: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,319 INFO L273 TraceCheckUtils]: 11: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,319 INFO L273 TraceCheckUtils]: 12: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,319 INFO L273 TraceCheckUtils]: 13: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,319 INFO L273 TraceCheckUtils]: 14: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,319 INFO L273 TraceCheckUtils]: 15: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,320 INFO L273 TraceCheckUtils]: 16: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,320 INFO L273 TraceCheckUtils]: 17: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,320 INFO L273 TraceCheckUtils]: 18: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,320 INFO L273 TraceCheckUtils]: 19: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,320 INFO L273 TraceCheckUtils]: 20: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,320 INFO L273 TraceCheckUtils]: 21: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,320 INFO L273 TraceCheckUtils]: 22: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,320 INFO L273 TraceCheckUtils]: 23: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,320 INFO L273 TraceCheckUtils]: 24: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,320 INFO L273 TraceCheckUtils]: 25: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,321 INFO L273 TraceCheckUtils]: 26: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,321 INFO L273 TraceCheckUtils]: 27: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,321 INFO L273 TraceCheckUtils]: 28: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,321 INFO L273 TraceCheckUtils]: 29: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,321 INFO L273 TraceCheckUtils]: 30: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,321 INFO L273 TraceCheckUtils]: 31: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,321 INFO L273 TraceCheckUtils]: 32: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,321 INFO L273 TraceCheckUtils]: 33: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,321 INFO L273 TraceCheckUtils]: 34: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,321 INFO L273 TraceCheckUtils]: 35: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,322 INFO L273 TraceCheckUtils]: 36: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,322 INFO L273 TraceCheckUtils]: 37: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,322 INFO L273 TraceCheckUtils]: 38: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,322 INFO L273 TraceCheckUtils]: 39: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,322 INFO L273 TraceCheckUtils]: 40: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,322 INFO L273 TraceCheckUtils]: 41: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,322 INFO L273 TraceCheckUtils]: 42: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,322 INFO L273 TraceCheckUtils]: 43: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,322 INFO L273 TraceCheckUtils]: 44: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,323 INFO L273 TraceCheckUtils]: 45: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,323 INFO L273 TraceCheckUtils]: 46: Hoare triple {15649#true} assume !(~i~1 < 20); {15649#true} is VALID [2018-11-23 12:16:46,323 INFO L256 TraceCheckUtils]: 47: Hoare triple {15649#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {15649#true} is VALID [2018-11-23 12:16:46,323 INFO L273 TraceCheckUtils]: 48: Hoare triple {15649#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {15651#(= max_~i~0 0)} is VALID [2018-11-23 12:16:46,323 INFO L273 TraceCheckUtils]: 49: Hoare triple {15651#(= max_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15651#(= max_~i~0 0)} is VALID [2018-11-23 12:16:46,324 INFO L273 TraceCheckUtils]: 50: Hoare triple {15651#(= max_~i~0 0)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15651#(= max_~i~0 0)} is VALID [2018-11-23 12:16:46,324 INFO L273 TraceCheckUtils]: 51: Hoare triple {15651#(= max_~i~0 0)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15651#(= max_~i~0 0)} is VALID [2018-11-23 12:16:46,324 INFO L273 TraceCheckUtils]: 52: Hoare triple {15651#(= max_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15652#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:46,325 INFO L273 TraceCheckUtils]: 53: Hoare triple {15652#(<= max_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15652#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:46,325 INFO L273 TraceCheckUtils]: 54: Hoare triple {15652#(<= max_~i~0 1)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15652#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:46,325 INFO L273 TraceCheckUtils]: 55: Hoare triple {15652#(<= max_~i~0 1)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15652#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:46,326 INFO L273 TraceCheckUtils]: 56: Hoare triple {15652#(<= max_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15653#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:46,326 INFO L273 TraceCheckUtils]: 57: Hoare triple {15653#(<= max_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15653#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:46,326 INFO L273 TraceCheckUtils]: 58: Hoare triple {15653#(<= max_~i~0 2)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15653#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:46,327 INFO L273 TraceCheckUtils]: 59: Hoare triple {15653#(<= max_~i~0 2)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15653#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:46,327 INFO L273 TraceCheckUtils]: 60: Hoare triple {15653#(<= max_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15654#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:46,328 INFO L273 TraceCheckUtils]: 61: Hoare triple {15654#(<= max_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15654#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:46,328 INFO L273 TraceCheckUtils]: 62: Hoare triple {15654#(<= max_~i~0 3)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15654#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:46,329 INFO L273 TraceCheckUtils]: 63: Hoare triple {15654#(<= max_~i~0 3)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15654#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:46,329 INFO L273 TraceCheckUtils]: 64: Hoare triple {15654#(<= max_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15655#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:46,330 INFO L273 TraceCheckUtils]: 65: Hoare triple {15655#(<= max_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15655#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:46,330 INFO L273 TraceCheckUtils]: 66: Hoare triple {15655#(<= max_~i~0 4)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15655#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:46,331 INFO L273 TraceCheckUtils]: 67: Hoare triple {15655#(<= max_~i~0 4)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15655#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:46,332 INFO L273 TraceCheckUtils]: 68: Hoare triple {15655#(<= max_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15656#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:46,332 INFO L273 TraceCheckUtils]: 69: Hoare triple {15656#(<= max_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15656#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:46,333 INFO L273 TraceCheckUtils]: 70: Hoare triple {15656#(<= max_~i~0 5)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15656#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:46,333 INFO L273 TraceCheckUtils]: 71: Hoare triple {15656#(<= max_~i~0 5)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15656#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:46,334 INFO L273 TraceCheckUtils]: 72: Hoare triple {15656#(<= max_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15657#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:46,334 INFO L273 TraceCheckUtils]: 73: Hoare triple {15657#(<= max_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15657#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:46,335 INFO L273 TraceCheckUtils]: 74: Hoare triple {15657#(<= max_~i~0 6)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15657#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:46,335 INFO L273 TraceCheckUtils]: 75: Hoare triple {15657#(<= max_~i~0 6)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15657#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:46,336 INFO L273 TraceCheckUtils]: 76: Hoare triple {15657#(<= max_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15658#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:46,337 INFO L273 TraceCheckUtils]: 77: Hoare triple {15658#(<= max_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15658#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:46,337 INFO L273 TraceCheckUtils]: 78: Hoare triple {15658#(<= max_~i~0 7)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15658#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:46,338 INFO L273 TraceCheckUtils]: 79: Hoare triple {15658#(<= max_~i~0 7)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15658#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:46,338 INFO L273 TraceCheckUtils]: 80: Hoare triple {15658#(<= max_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15659#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:46,339 INFO L273 TraceCheckUtils]: 81: Hoare triple {15659#(<= max_~i~0 8)} assume !(~i~0 < 20); {15650#false} is VALID [2018-11-23 12:16:46,339 INFO L273 TraceCheckUtils]: 82: Hoare triple {15650#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {15650#false} is VALID [2018-11-23 12:16:46,339 INFO L273 TraceCheckUtils]: 83: Hoare triple {15650#false} assume true; {15650#false} is VALID [2018-11-23 12:16:46,340 INFO L268 TraceCheckUtils]: 84: Hoare quadruple {15650#false} {15649#true} #77#return; {15650#false} is VALID [2018-11-23 12:16:46,340 INFO L273 TraceCheckUtils]: 85: Hoare triple {15650#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {15650#false} is VALID [2018-11-23 12:16:46,340 INFO L256 TraceCheckUtils]: 86: Hoare triple {15650#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {15649#true} is VALID [2018-11-23 12:16:46,340 INFO L273 TraceCheckUtils]: 87: Hoare triple {15649#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {15649#true} is VALID [2018-11-23 12:16:46,340 INFO L273 TraceCheckUtils]: 88: Hoare triple {15649#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15649#true} is VALID [2018-11-23 12:16:46,341 INFO L273 TraceCheckUtils]: 89: Hoare triple {15649#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15649#true} is VALID [2018-11-23 12:16:46,341 INFO L273 TraceCheckUtils]: 90: Hoare triple {15649#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15649#true} is VALID [2018-11-23 12:16:46,341 INFO L273 TraceCheckUtils]: 91: Hoare triple {15649#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15649#true} is VALID [2018-11-23 12:16:46,341 INFO L273 TraceCheckUtils]: 92: Hoare triple {15649#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15649#true} is VALID [2018-11-23 12:16:46,341 INFO L273 TraceCheckUtils]: 93: Hoare triple {15649#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15649#true} is VALID [2018-11-23 12:16:46,341 INFO L273 TraceCheckUtils]: 94: Hoare triple {15649#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15649#true} is VALID [2018-11-23 12:16:46,342 INFO L273 TraceCheckUtils]: 95: Hoare triple {15649#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15649#true} is VALID [2018-11-23 12:16:46,342 INFO L273 TraceCheckUtils]: 96: Hoare triple {15649#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15649#true} is VALID [2018-11-23 12:16:46,342 INFO L273 TraceCheckUtils]: 97: Hoare triple {15649#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15649#true} is VALID [2018-11-23 12:16:46,342 INFO L273 TraceCheckUtils]: 98: Hoare triple {15649#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15649#true} is VALID [2018-11-23 12:16:46,342 INFO L273 TraceCheckUtils]: 99: Hoare triple {15649#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15649#true} is VALID [2018-11-23 12:16:46,342 INFO L273 TraceCheckUtils]: 100: Hoare triple {15649#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15649#true} is VALID [2018-11-23 12:16:46,343 INFO L273 TraceCheckUtils]: 101: Hoare triple {15649#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15649#true} is VALID [2018-11-23 12:16:46,343 INFO L273 TraceCheckUtils]: 102: Hoare triple {15649#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15649#true} is VALID [2018-11-23 12:16:46,343 INFO L273 TraceCheckUtils]: 103: Hoare triple {15649#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15649#true} is VALID [2018-11-23 12:16:46,343 INFO L273 TraceCheckUtils]: 104: Hoare triple {15649#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15649#true} is VALID [2018-11-23 12:16:46,343 INFO L273 TraceCheckUtils]: 105: Hoare triple {15649#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15649#true} is VALID [2018-11-23 12:16:46,344 INFO L273 TraceCheckUtils]: 106: Hoare triple {15649#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15649#true} is VALID [2018-11-23 12:16:46,344 INFO L273 TraceCheckUtils]: 107: Hoare triple {15649#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15649#true} is VALID [2018-11-23 12:16:46,344 INFO L273 TraceCheckUtils]: 108: Hoare triple {15649#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15649#true} is VALID [2018-11-23 12:16:46,344 INFO L273 TraceCheckUtils]: 109: Hoare triple {15649#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15649#true} is VALID [2018-11-23 12:16:46,344 INFO L273 TraceCheckUtils]: 110: Hoare triple {15649#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15649#true} is VALID [2018-11-23 12:16:46,344 INFO L273 TraceCheckUtils]: 111: Hoare triple {15649#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15649#true} is VALID [2018-11-23 12:16:46,344 INFO L273 TraceCheckUtils]: 112: Hoare triple {15649#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15649#true} is VALID [2018-11-23 12:16:46,344 INFO L273 TraceCheckUtils]: 113: Hoare triple {15649#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15649#true} is VALID [2018-11-23 12:16:46,345 INFO L273 TraceCheckUtils]: 114: Hoare triple {15649#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15649#true} is VALID [2018-11-23 12:16:46,345 INFO L273 TraceCheckUtils]: 115: Hoare triple {15649#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15649#true} is VALID [2018-11-23 12:16:46,345 INFO L273 TraceCheckUtils]: 116: Hoare triple {15649#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15649#true} is VALID [2018-11-23 12:16:46,345 INFO L273 TraceCheckUtils]: 117: Hoare triple {15649#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15649#true} is VALID [2018-11-23 12:16:46,345 INFO L273 TraceCheckUtils]: 118: Hoare triple {15649#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15649#true} is VALID [2018-11-23 12:16:46,345 INFO L273 TraceCheckUtils]: 119: Hoare triple {15649#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15649#true} is VALID [2018-11-23 12:16:46,345 INFO L273 TraceCheckUtils]: 120: Hoare triple {15649#true} assume !(~i~0 < 20); {15649#true} is VALID [2018-11-23 12:16:46,345 INFO L273 TraceCheckUtils]: 121: Hoare triple {15649#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {15649#true} is VALID [2018-11-23 12:16:46,345 INFO L273 TraceCheckUtils]: 122: Hoare triple {15649#true} assume true; {15649#true} is VALID [2018-11-23 12:16:46,345 INFO L268 TraceCheckUtils]: 123: Hoare quadruple {15649#true} {15650#false} #79#return; {15650#false} is VALID [2018-11-23 12:16:46,346 INFO L273 TraceCheckUtils]: 124: Hoare triple {15650#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {15650#false} is VALID [2018-11-23 12:16:46,346 INFO L273 TraceCheckUtils]: 125: Hoare triple {15650#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {15650#false} is VALID [2018-11-23 12:16:46,346 INFO L273 TraceCheckUtils]: 126: Hoare triple {15650#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {15650#false} is VALID [2018-11-23 12:16:46,346 INFO L273 TraceCheckUtils]: 127: Hoare triple {15650#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {15650#false} is VALID [2018-11-23 12:16:46,346 INFO L273 TraceCheckUtils]: 128: Hoare triple {15650#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {15650#false} is VALID [2018-11-23 12:16:46,346 INFO L273 TraceCheckUtils]: 129: Hoare triple {15650#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {15650#false} is VALID [2018-11-23 12:16:46,346 INFO L273 TraceCheckUtils]: 130: Hoare triple {15650#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {15650#false} is VALID [2018-11-23 12:16:46,346 INFO L273 TraceCheckUtils]: 131: Hoare triple {15650#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {15650#false} is VALID [2018-11-23 12:16:46,346 INFO L273 TraceCheckUtils]: 132: Hoare triple {15650#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {15650#false} is VALID [2018-11-23 12:16:46,347 INFO L273 TraceCheckUtils]: 133: Hoare triple {15650#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {15650#false} is VALID [2018-11-23 12:16:46,347 INFO L273 TraceCheckUtils]: 134: Hoare triple {15650#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {15650#false} is VALID [2018-11-23 12:16:46,347 INFO L273 TraceCheckUtils]: 135: Hoare triple {15650#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {15650#false} is VALID [2018-11-23 12:16:46,347 INFO L273 TraceCheckUtils]: 136: Hoare triple {15650#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {15650#false} is VALID [2018-11-23 12:16:46,347 INFO L273 TraceCheckUtils]: 137: Hoare triple {15650#false} assume !(~i~2 < 19); {15650#false} is VALID [2018-11-23 12:16:46,347 INFO L273 TraceCheckUtils]: 138: Hoare triple {15650#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {15650#false} is VALID [2018-11-23 12:16:46,347 INFO L256 TraceCheckUtils]: 139: Hoare triple {15650#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {15649#true} is VALID [2018-11-23 12:16:46,347 INFO L273 TraceCheckUtils]: 140: Hoare triple {15649#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {15649#true} is VALID [2018-11-23 12:16:46,347 INFO L273 TraceCheckUtils]: 141: Hoare triple {15649#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15649#true} is VALID [2018-11-23 12:16:46,347 INFO L273 TraceCheckUtils]: 142: Hoare triple {15649#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15649#true} is VALID [2018-11-23 12:16:46,348 INFO L273 TraceCheckUtils]: 143: Hoare triple {15649#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15649#true} is VALID [2018-11-23 12:16:46,348 INFO L273 TraceCheckUtils]: 144: Hoare triple {15649#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15649#true} is VALID [2018-11-23 12:16:46,348 INFO L273 TraceCheckUtils]: 145: Hoare triple {15649#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15649#true} is VALID [2018-11-23 12:16:46,348 INFO L273 TraceCheckUtils]: 146: Hoare triple {15649#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15649#true} is VALID [2018-11-23 12:16:46,348 INFO L273 TraceCheckUtils]: 147: Hoare triple {15649#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15649#true} is VALID [2018-11-23 12:16:46,348 INFO L273 TraceCheckUtils]: 148: Hoare triple {15649#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15649#true} is VALID [2018-11-23 12:16:46,348 INFO L273 TraceCheckUtils]: 149: Hoare triple {15649#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15649#true} is VALID [2018-11-23 12:16:46,348 INFO L273 TraceCheckUtils]: 150: Hoare triple {15649#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15649#true} is VALID [2018-11-23 12:16:46,348 INFO L273 TraceCheckUtils]: 151: Hoare triple {15649#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15649#true} is VALID [2018-11-23 12:16:46,349 INFO L273 TraceCheckUtils]: 152: Hoare triple {15649#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15649#true} is VALID [2018-11-23 12:16:46,349 INFO L273 TraceCheckUtils]: 153: Hoare triple {15649#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15649#true} is VALID [2018-11-23 12:16:46,349 INFO L273 TraceCheckUtils]: 154: Hoare triple {15649#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15649#true} is VALID [2018-11-23 12:16:46,349 INFO L273 TraceCheckUtils]: 155: Hoare triple {15649#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15649#true} is VALID [2018-11-23 12:16:46,349 INFO L273 TraceCheckUtils]: 156: Hoare triple {15649#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15649#true} is VALID [2018-11-23 12:16:46,349 INFO L273 TraceCheckUtils]: 157: Hoare triple {15649#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15649#true} is VALID [2018-11-23 12:16:46,349 INFO L273 TraceCheckUtils]: 158: Hoare triple {15649#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15649#true} is VALID [2018-11-23 12:16:46,349 INFO L273 TraceCheckUtils]: 159: Hoare triple {15649#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15649#true} is VALID [2018-11-23 12:16:46,349 INFO L273 TraceCheckUtils]: 160: Hoare triple {15649#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15649#true} is VALID [2018-11-23 12:16:46,349 INFO L273 TraceCheckUtils]: 161: Hoare triple {15649#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15649#true} is VALID [2018-11-23 12:16:46,350 INFO L273 TraceCheckUtils]: 162: Hoare triple {15649#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15649#true} is VALID [2018-11-23 12:16:46,350 INFO L273 TraceCheckUtils]: 163: Hoare triple {15649#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15649#true} is VALID [2018-11-23 12:16:46,350 INFO L273 TraceCheckUtils]: 164: Hoare triple {15649#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15649#true} is VALID [2018-11-23 12:16:46,350 INFO L273 TraceCheckUtils]: 165: Hoare triple {15649#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15649#true} is VALID [2018-11-23 12:16:46,350 INFO L273 TraceCheckUtils]: 166: Hoare triple {15649#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15649#true} is VALID [2018-11-23 12:16:46,350 INFO L273 TraceCheckUtils]: 167: Hoare triple {15649#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15649#true} is VALID [2018-11-23 12:16:46,350 INFO L273 TraceCheckUtils]: 168: Hoare triple {15649#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15649#true} is VALID [2018-11-23 12:16:46,350 INFO L273 TraceCheckUtils]: 169: Hoare triple {15649#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15649#true} is VALID [2018-11-23 12:16:46,350 INFO L273 TraceCheckUtils]: 170: Hoare triple {15649#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15649#true} is VALID [2018-11-23 12:16:46,350 INFO L273 TraceCheckUtils]: 171: Hoare triple {15649#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15649#true} is VALID [2018-11-23 12:16:46,351 INFO L273 TraceCheckUtils]: 172: Hoare triple {15649#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15649#true} is VALID [2018-11-23 12:16:46,351 INFO L273 TraceCheckUtils]: 173: Hoare triple {15649#true} assume !(~i~0 < 20); {15649#true} is VALID [2018-11-23 12:16:46,351 INFO L273 TraceCheckUtils]: 174: Hoare triple {15649#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {15649#true} is VALID [2018-11-23 12:16:46,351 INFO L273 TraceCheckUtils]: 175: Hoare triple {15649#true} assume true; {15649#true} is VALID [2018-11-23 12:16:46,351 INFO L268 TraceCheckUtils]: 176: Hoare quadruple {15649#true} {15650#false} #81#return; {15650#false} is VALID [2018-11-23 12:16:46,351 INFO L273 TraceCheckUtils]: 177: Hoare triple {15650#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {15650#false} is VALID [2018-11-23 12:16:46,351 INFO L273 TraceCheckUtils]: 178: Hoare triple {15650#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {15650#false} is VALID [2018-11-23 12:16:46,351 INFO L273 TraceCheckUtils]: 179: Hoare triple {15650#false} assume !false; {15650#false} is VALID [2018-11-23 12:16:46,364 INFO L134 CoverageAnalysis]: Checked inductivity of 1627 backedges. 0 proven. 672 refuted. 0 times theorem prover too weak. 955 trivial. 0 not checked. [2018-11-23 12:16:46,364 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:16:46,364 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 24 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 24 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:16:46,372 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 12:16:46,465 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 12:16:46,466 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:16:46,504 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:46,505 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:46,684 INFO L256 TraceCheckUtils]: 0: Hoare triple {15649#true} call ULTIMATE.init(); {15649#true} is VALID [2018-11-23 12:16:46,684 INFO L273 TraceCheckUtils]: 1: Hoare triple {15649#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {15649#true} is VALID [2018-11-23 12:16:46,684 INFO L273 TraceCheckUtils]: 2: Hoare triple {15649#true} assume true; {15649#true} is VALID [2018-11-23 12:16:46,685 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {15649#true} {15649#true} #73#return; {15649#true} is VALID [2018-11-23 12:16:46,685 INFO L256 TraceCheckUtils]: 4: Hoare triple {15649#true} call #t~ret14 := main(); {15649#true} is VALID [2018-11-23 12:16:46,685 INFO L273 TraceCheckUtils]: 5: Hoare triple {15649#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {15649#true} is VALID [2018-11-23 12:16:46,685 INFO L273 TraceCheckUtils]: 6: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,686 INFO L273 TraceCheckUtils]: 7: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,686 INFO L273 TraceCheckUtils]: 8: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,686 INFO L273 TraceCheckUtils]: 9: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,686 INFO L273 TraceCheckUtils]: 10: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,686 INFO L273 TraceCheckUtils]: 11: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,687 INFO L273 TraceCheckUtils]: 12: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,687 INFO L273 TraceCheckUtils]: 13: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,687 INFO L273 TraceCheckUtils]: 14: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,687 INFO L273 TraceCheckUtils]: 15: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,687 INFO L273 TraceCheckUtils]: 16: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,688 INFO L273 TraceCheckUtils]: 17: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,688 INFO L273 TraceCheckUtils]: 18: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,688 INFO L273 TraceCheckUtils]: 19: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,688 INFO L273 TraceCheckUtils]: 20: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,688 INFO L273 TraceCheckUtils]: 21: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,689 INFO L273 TraceCheckUtils]: 22: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,689 INFO L273 TraceCheckUtils]: 23: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,689 INFO L273 TraceCheckUtils]: 24: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,689 INFO L273 TraceCheckUtils]: 25: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,689 INFO L273 TraceCheckUtils]: 26: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,690 INFO L273 TraceCheckUtils]: 27: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,690 INFO L273 TraceCheckUtils]: 28: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,690 INFO L273 TraceCheckUtils]: 29: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,690 INFO L273 TraceCheckUtils]: 30: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,690 INFO L273 TraceCheckUtils]: 31: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,691 INFO L273 TraceCheckUtils]: 32: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,691 INFO L273 TraceCheckUtils]: 33: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,691 INFO L273 TraceCheckUtils]: 34: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,691 INFO L273 TraceCheckUtils]: 35: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,691 INFO L273 TraceCheckUtils]: 36: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,692 INFO L273 TraceCheckUtils]: 37: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,692 INFO L273 TraceCheckUtils]: 38: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,692 INFO L273 TraceCheckUtils]: 39: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,692 INFO L273 TraceCheckUtils]: 40: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,692 INFO L273 TraceCheckUtils]: 41: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,692 INFO L273 TraceCheckUtils]: 42: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,693 INFO L273 TraceCheckUtils]: 43: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,693 INFO L273 TraceCheckUtils]: 44: Hoare triple {15649#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {15649#true} is VALID [2018-11-23 12:16:46,693 INFO L273 TraceCheckUtils]: 45: Hoare triple {15649#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {15649#true} is VALID [2018-11-23 12:16:46,693 INFO L273 TraceCheckUtils]: 46: Hoare triple {15649#true} assume !(~i~1 < 20); {15649#true} is VALID [2018-11-23 12:16:46,693 INFO L256 TraceCheckUtils]: 47: Hoare triple {15649#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {15649#true} is VALID [2018-11-23 12:16:46,712 INFO L273 TraceCheckUtils]: 48: Hoare triple {15649#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {15807#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:46,719 INFO L273 TraceCheckUtils]: 49: Hoare triple {15807#(<= max_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15807#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:46,720 INFO L273 TraceCheckUtils]: 50: Hoare triple {15807#(<= max_~i~0 0)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15807#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:46,721 INFO L273 TraceCheckUtils]: 51: Hoare triple {15807#(<= max_~i~0 0)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15807#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:46,721 INFO L273 TraceCheckUtils]: 52: Hoare triple {15807#(<= max_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15652#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:46,743 INFO L273 TraceCheckUtils]: 53: Hoare triple {15652#(<= max_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15652#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:46,746 INFO L273 TraceCheckUtils]: 54: Hoare triple {15652#(<= max_~i~0 1)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15652#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:46,747 INFO L273 TraceCheckUtils]: 55: Hoare triple {15652#(<= max_~i~0 1)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15652#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:46,747 INFO L273 TraceCheckUtils]: 56: Hoare triple {15652#(<= max_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15653#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:46,748 INFO L273 TraceCheckUtils]: 57: Hoare triple {15653#(<= max_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15653#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:46,748 INFO L273 TraceCheckUtils]: 58: Hoare triple {15653#(<= max_~i~0 2)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15653#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:46,748 INFO L273 TraceCheckUtils]: 59: Hoare triple {15653#(<= max_~i~0 2)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15653#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:46,749 INFO L273 TraceCheckUtils]: 60: Hoare triple {15653#(<= max_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15654#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:46,750 INFO L273 TraceCheckUtils]: 61: Hoare triple {15654#(<= max_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15654#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:46,750 INFO L273 TraceCheckUtils]: 62: Hoare triple {15654#(<= max_~i~0 3)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15654#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:46,750 INFO L273 TraceCheckUtils]: 63: Hoare triple {15654#(<= max_~i~0 3)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15654#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:46,751 INFO L273 TraceCheckUtils]: 64: Hoare triple {15654#(<= max_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15655#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:46,751 INFO L273 TraceCheckUtils]: 65: Hoare triple {15655#(<= max_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15655#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:46,752 INFO L273 TraceCheckUtils]: 66: Hoare triple {15655#(<= max_~i~0 4)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15655#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:46,752 INFO L273 TraceCheckUtils]: 67: Hoare triple {15655#(<= max_~i~0 4)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15655#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:46,753 INFO L273 TraceCheckUtils]: 68: Hoare triple {15655#(<= max_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15656#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:46,754 INFO L273 TraceCheckUtils]: 69: Hoare triple {15656#(<= max_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15656#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:46,754 INFO L273 TraceCheckUtils]: 70: Hoare triple {15656#(<= max_~i~0 5)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15656#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:46,755 INFO L273 TraceCheckUtils]: 71: Hoare triple {15656#(<= max_~i~0 5)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15656#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:46,758 INFO L273 TraceCheckUtils]: 72: Hoare triple {15656#(<= max_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15657#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:46,758 INFO L273 TraceCheckUtils]: 73: Hoare triple {15657#(<= max_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15657#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:46,760 INFO L273 TraceCheckUtils]: 74: Hoare triple {15657#(<= max_~i~0 6)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15657#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:46,760 INFO L273 TraceCheckUtils]: 75: Hoare triple {15657#(<= max_~i~0 6)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15657#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:46,762 INFO L273 TraceCheckUtils]: 76: Hoare triple {15657#(<= max_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15658#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:46,764 INFO L273 TraceCheckUtils]: 77: Hoare triple {15658#(<= max_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15658#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:46,766 INFO L273 TraceCheckUtils]: 78: Hoare triple {15658#(<= max_~i~0 7)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15658#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:46,766 INFO L273 TraceCheckUtils]: 79: Hoare triple {15658#(<= max_~i~0 7)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15658#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:46,768 INFO L273 TraceCheckUtils]: 80: Hoare triple {15658#(<= max_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15659#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:46,768 INFO L273 TraceCheckUtils]: 81: Hoare triple {15659#(<= max_~i~0 8)} assume !(~i~0 < 20); {15650#false} is VALID [2018-11-23 12:16:46,768 INFO L273 TraceCheckUtils]: 82: Hoare triple {15650#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {15650#false} is VALID [2018-11-23 12:16:46,768 INFO L273 TraceCheckUtils]: 83: Hoare triple {15650#false} assume true; {15650#false} is VALID [2018-11-23 12:16:46,768 INFO L268 TraceCheckUtils]: 84: Hoare quadruple {15650#false} {15649#true} #77#return; {15650#false} is VALID [2018-11-23 12:16:46,769 INFO L273 TraceCheckUtils]: 85: Hoare triple {15650#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {15650#false} is VALID [2018-11-23 12:16:46,769 INFO L256 TraceCheckUtils]: 86: Hoare triple {15650#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {15650#false} is VALID [2018-11-23 12:16:46,769 INFO L273 TraceCheckUtils]: 87: Hoare triple {15650#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {15650#false} is VALID [2018-11-23 12:16:46,769 INFO L273 TraceCheckUtils]: 88: Hoare triple {15650#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15650#false} is VALID [2018-11-23 12:16:46,769 INFO L273 TraceCheckUtils]: 89: Hoare triple {15650#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15650#false} is VALID [2018-11-23 12:16:46,769 INFO L273 TraceCheckUtils]: 90: Hoare triple {15650#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15650#false} is VALID [2018-11-23 12:16:46,769 INFO L273 TraceCheckUtils]: 91: Hoare triple {15650#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15650#false} is VALID [2018-11-23 12:16:46,769 INFO L273 TraceCheckUtils]: 92: Hoare triple {15650#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15650#false} is VALID [2018-11-23 12:16:46,769 INFO L273 TraceCheckUtils]: 93: Hoare triple {15650#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15650#false} is VALID [2018-11-23 12:16:46,769 INFO L273 TraceCheckUtils]: 94: Hoare triple {15650#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15650#false} is VALID [2018-11-23 12:16:46,770 INFO L273 TraceCheckUtils]: 95: Hoare triple {15650#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15650#false} is VALID [2018-11-23 12:16:46,770 INFO L273 TraceCheckUtils]: 96: Hoare triple {15650#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15650#false} is VALID [2018-11-23 12:16:46,770 INFO L273 TraceCheckUtils]: 97: Hoare triple {15650#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15650#false} is VALID [2018-11-23 12:16:46,770 INFO L273 TraceCheckUtils]: 98: Hoare triple {15650#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15650#false} is VALID [2018-11-23 12:16:46,770 INFO L273 TraceCheckUtils]: 99: Hoare triple {15650#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15650#false} is VALID [2018-11-23 12:16:46,770 INFO L273 TraceCheckUtils]: 100: Hoare triple {15650#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15650#false} is VALID [2018-11-23 12:16:46,770 INFO L273 TraceCheckUtils]: 101: Hoare triple {15650#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15650#false} is VALID [2018-11-23 12:16:46,770 INFO L273 TraceCheckUtils]: 102: Hoare triple {15650#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15650#false} is VALID [2018-11-23 12:16:46,770 INFO L273 TraceCheckUtils]: 103: Hoare triple {15650#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15650#false} is VALID [2018-11-23 12:16:46,771 INFO L273 TraceCheckUtils]: 104: Hoare triple {15650#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15650#false} is VALID [2018-11-23 12:16:46,771 INFO L273 TraceCheckUtils]: 105: Hoare triple {15650#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15650#false} is VALID [2018-11-23 12:16:46,771 INFO L273 TraceCheckUtils]: 106: Hoare triple {15650#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15650#false} is VALID [2018-11-23 12:16:46,771 INFO L273 TraceCheckUtils]: 107: Hoare triple {15650#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15650#false} is VALID [2018-11-23 12:16:46,771 INFO L273 TraceCheckUtils]: 108: Hoare triple {15650#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15650#false} is VALID [2018-11-23 12:16:46,771 INFO L273 TraceCheckUtils]: 109: Hoare triple {15650#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15650#false} is VALID [2018-11-23 12:16:46,771 INFO L273 TraceCheckUtils]: 110: Hoare triple {15650#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15650#false} is VALID [2018-11-23 12:16:46,771 INFO L273 TraceCheckUtils]: 111: Hoare triple {15650#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15650#false} is VALID [2018-11-23 12:16:46,771 INFO L273 TraceCheckUtils]: 112: Hoare triple {15650#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15650#false} is VALID [2018-11-23 12:16:46,771 INFO L273 TraceCheckUtils]: 113: Hoare triple {15650#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15650#false} is VALID [2018-11-23 12:16:46,772 INFO L273 TraceCheckUtils]: 114: Hoare triple {15650#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15650#false} is VALID [2018-11-23 12:16:46,772 INFO L273 TraceCheckUtils]: 115: Hoare triple {15650#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15650#false} is VALID [2018-11-23 12:16:46,772 INFO L273 TraceCheckUtils]: 116: Hoare triple {15650#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15650#false} is VALID [2018-11-23 12:16:46,772 INFO L273 TraceCheckUtils]: 117: Hoare triple {15650#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15650#false} is VALID [2018-11-23 12:16:46,772 INFO L273 TraceCheckUtils]: 118: Hoare triple {15650#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15650#false} is VALID [2018-11-23 12:16:46,772 INFO L273 TraceCheckUtils]: 119: Hoare triple {15650#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15650#false} is VALID [2018-11-23 12:16:46,772 INFO L273 TraceCheckUtils]: 120: Hoare triple {15650#false} assume !(~i~0 < 20); {15650#false} is VALID [2018-11-23 12:16:46,772 INFO L273 TraceCheckUtils]: 121: Hoare triple {15650#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {15650#false} is VALID [2018-11-23 12:16:46,772 INFO L273 TraceCheckUtils]: 122: Hoare triple {15650#false} assume true; {15650#false} is VALID [2018-11-23 12:16:46,773 INFO L268 TraceCheckUtils]: 123: Hoare quadruple {15650#false} {15650#false} #79#return; {15650#false} is VALID [2018-11-23 12:16:46,773 INFO L273 TraceCheckUtils]: 124: Hoare triple {15650#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {15650#false} is VALID [2018-11-23 12:16:46,773 INFO L273 TraceCheckUtils]: 125: Hoare triple {15650#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {15650#false} is VALID [2018-11-23 12:16:46,773 INFO L273 TraceCheckUtils]: 126: Hoare triple {15650#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {15650#false} is VALID [2018-11-23 12:16:46,773 INFO L273 TraceCheckUtils]: 127: Hoare triple {15650#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {15650#false} is VALID [2018-11-23 12:16:46,773 INFO L273 TraceCheckUtils]: 128: Hoare triple {15650#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {15650#false} is VALID [2018-11-23 12:16:46,774 INFO L273 TraceCheckUtils]: 129: Hoare triple {15650#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {15650#false} is VALID [2018-11-23 12:16:46,774 INFO L273 TraceCheckUtils]: 130: Hoare triple {15650#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {15650#false} is VALID [2018-11-23 12:16:46,774 INFO L273 TraceCheckUtils]: 131: Hoare triple {15650#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {15650#false} is VALID [2018-11-23 12:16:46,774 INFO L273 TraceCheckUtils]: 132: Hoare triple {15650#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {15650#false} is VALID [2018-11-23 12:16:46,774 INFO L273 TraceCheckUtils]: 133: Hoare triple {15650#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {15650#false} is VALID [2018-11-23 12:16:46,774 INFO L273 TraceCheckUtils]: 134: Hoare triple {15650#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {15650#false} is VALID [2018-11-23 12:16:46,774 INFO L273 TraceCheckUtils]: 135: Hoare triple {15650#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {15650#false} is VALID [2018-11-23 12:16:46,774 INFO L273 TraceCheckUtils]: 136: Hoare triple {15650#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {15650#false} is VALID [2018-11-23 12:16:46,775 INFO L273 TraceCheckUtils]: 137: Hoare triple {15650#false} assume !(~i~2 < 19); {15650#false} is VALID [2018-11-23 12:16:46,775 INFO L273 TraceCheckUtils]: 138: Hoare triple {15650#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {15650#false} is VALID [2018-11-23 12:16:46,775 INFO L256 TraceCheckUtils]: 139: Hoare triple {15650#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {15650#false} is VALID [2018-11-23 12:16:46,775 INFO L273 TraceCheckUtils]: 140: Hoare triple {15650#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {15650#false} is VALID [2018-11-23 12:16:46,775 INFO L273 TraceCheckUtils]: 141: Hoare triple {15650#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15650#false} is VALID [2018-11-23 12:16:46,775 INFO L273 TraceCheckUtils]: 142: Hoare triple {15650#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15650#false} is VALID [2018-11-23 12:16:46,775 INFO L273 TraceCheckUtils]: 143: Hoare triple {15650#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15650#false} is VALID [2018-11-23 12:16:46,775 INFO L273 TraceCheckUtils]: 144: Hoare triple {15650#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15650#false} is VALID [2018-11-23 12:16:46,775 INFO L273 TraceCheckUtils]: 145: Hoare triple {15650#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15650#false} is VALID [2018-11-23 12:16:46,775 INFO L273 TraceCheckUtils]: 146: Hoare triple {15650#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15650#false} is VALID [2018-11-23 12:16:46,776 INFO L273 TraceCheckUtils]: 147: Hoare triple {15650#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15650#false} is VALID [2018-11-23 12:16:46,776 INFO L273 TraceCheckUtils]: 148: Hoare triple {15650#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15650#false} is VALID [2018-11-23 12:16:46,776 INFO L273 TraceCheckUtils]: 149: Hoare triple {15650#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15650#false} is VALID [2018-11-23 12:16:46,776 INFO L273 TraceCheckUtils]: 150: Hoare triple {15650#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15650#false} is VALID [2018-11-23 12:16:46,776 INFO L273 TraceCheckUtils]: 151: Hoare triple {15650#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15650#false} is VALID [2018-11-23 12:16:46,776 INFO L273 TraceCheckUtils]: 152: Hoare triple {15650#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15650#false} is VALID [2018-11-23 12:16:46,776 INFO L273 TraceCheckUtils]: 153: Hoare triple {15650#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15650#false} is VALID [2018-11-23 12:16:46,776 INFO L273 TraceCheckUtils]: 154: Hoare triple {15650#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15650#false} is VALID [2018-11-23 12:16:46,776 INFO L273 TraceCheckUtils]: 155: Hoare triple {15650#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15650#false} is VALID [2018-11-23 12:16:46,776 INFO L273 TraceCheckUtils]: 156: Hoare triple {15650#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15650#false} is VALID [2018-11-23 12:16:46,777 INFO L273 TraceCheckUtils]: 157: Hoare triple {15650#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15650#false} is VALID [2018-11-23 12:16:46,777 INFO L273 TraceCheckUtils]: 158: Hoare triple {15650#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15650#false} is VALID [2018-11-23 12:16:46,777 INFO L273 TraceCheckUtils]: 159: Hoare triple {15650#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15650#false} is VALID [2018-11-23 12:16:46,777 INFO L273 TraceCheckUtils]: 160: Hoare triple {15650#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15650#false} is VALID [2018-11-23 12:16:46,777 INFO L273 TraceCheckUtils]: 161: Hoare triple {15650#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15650#false} is VALID [2018-11-23 12:16:46,777 INFO L273 TraceCheckUtils]: 162: Hoare triple {15650#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15650#false} is VALID [2018-11-23 12:16:46,777 INFO L273 TraceCheckUtils]: 163: Hoare triple {15650#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15650#false} is VALID [2018-11-23 12:16:46,777 INFO L273 TraceCheckUtils]: 164: Hoare triple {15650#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15650#false} is VALID [2018-11-23 12:16:46,777 INFO L273 TraceCheckUtils]: 165: Hoare triple {15650#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15650#false} is VALID [2018-11-23 12:16:46,778 INFO L273 TraceCheckUtils]: 166: Hoare triple {15650#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15650#false} is VALID [2018-11-23 12:16:46,778 INFO L273 TraceCheckUtils]: 167: Hoare triple {15650#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15650#false} is VALID [2018-11-23 12:16:46,778 INFO L273 TraceCheckUtils]: 168: Hoare triple {15650#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15650#false} is VALID [2018-11-23 12:16:46,778 INFO L273 TraceCheckUtils]: 169: Hoare triple {15650#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {15650#false} is VALID [2018-11-23 12:16:46,778 INFO L273 TraceCheckUtils]: 170: Hoare triple {15650#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {15650#false} is VALID [2018-11-23 12:16:46,778 INFO L273 TraceCheckUtils]: 171: Hoare triple {15650#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {15650#false} is VALID [2018-11-23 12:16:46,778 INFO L273 TraceCheckUtils]: 172: Hoare triple {15650#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {15650#false} is VALID [2018-11-23 12:16:46,778 INFO L273 TraceCheckUtils]: 173: Hoare triple {15650#false} assume !(~i~0 < 20); {15650#false} is VALID [2018-11-23 12:16:46,778 INFO L273 TraceCheckUtils]: 174: Hoare triple {15650#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {15650#false} is VALID [2018-11-23 12:16:46,778 INFO L273 TraceCheckUtils]: 175: Hoare triple {15650#false} assume true; {15650#false} is VALID [2018-11-23 12:16:46,779 INFO L268 TraceCheckUtils]: 176: Hoare quadruple {15650#false} {15650#false} #81#return; {15650#false} is VALID [2018-11-23 12:16:46,779 INFO L273 TraceCheckUtils]: 177: Hoare triple {15650#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {15650#false} is VALID [2018-11-23 12:16:46,779 INFO L273 TraceCheckUtils]: 178: Hoare triple {15650#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {15650#false} is VALID [2018-11-23 12:16:46,779 INFO L273 TraceCheckUtils]: 179: Hoare triple {15650#false} assume !false; {15650#false} is VALID [2018-11-23 12:16:46,795 INFO L134 CoverageAnalysis]: Checked inductivity of 1627 backedges. 548 proven. 120 refuted. 0 times theorem prover too weak. 959 trivial. 0 not checked. [2018-11-23 12:16:46,824 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:16:46,824 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 12 [2018-11-23 12:16:46,825 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 180 [2018-11-23 12:16:46,826 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:46,826 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states. [2018-11-23 12:16:46,909 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:46,909 INFO L459 AbstractCegarLoop]: Interpolant automaton has 12 states [2018-11-23 12:16:46,909 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2018-11-23 12:16:46,910 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=66, Invalid=66, Unknown=0, NotChecked=0, Total=132 [2018-11-23 12:16:46,910 INFO L87 Difference]: Start difference. First operand 107 states and 119 transitions. Second operand 12 states. [2018-11-23 12:16:47,277 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:47,277 INFO L93 Difference]: Finished difference Result 173 states and 201 transitions. [2018-11-23 12:16:47,278 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-23 12:16:47,278 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 180 [2018-11-23 12:16:47,278 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:47,278 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2018-11-23 12:16:47,279 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 104 transitions. [2018-11-23 12:16:47,280 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2018-11-23 12:16:47,281 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 104 transitions. [2018-11-23 12:16:47,281 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 104 transitions. [2018-11-23 12:16:47,387 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:16:47,390 INFO L225 Difference]: With dead ends: 173 [2018-11-23 12:16:47,390 INFO L226 Difference]: Without dead ends: 114 [2018-11-23 12:16:47,391 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 190 GetRequests, 180 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=66, Invalid=66, Unknown=0, NotChecked=0, Total=132 [2018-11-23 12:16:47,391 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 114 states. [2018-11-23 12:16:47,959 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 114 to 111. [2018-11-23 12:16:47,959 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:47,959 INFO L82 GeneralOperation]: Start isEquivalent. First operand 114 states. Second operand 111 states. [2018-11-23 12:16:47,959 INFO L74 IsIncluded]: Start isIncluded. First operand 114 states. Second operand 111 states. [2018-11-23 12:16:47,959 INFO L87 Difference]: Start difference. First operand 114 states. Second operand 111 states. [2018-11-23 12:16:47,961 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:47,961 INFO L93 Difference]: Finished difference Result 114 states and 128 transitions. [2018-11-23 12:16:47,961 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 128 transitions. [2018-11-23 12:16:47,962 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:47,962 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:47,962 INFO L74 IsIncluded]: Start isIncluded. First operand 111 states. Second operand 114 states. [2018-11-23 12:16:47,962 INFO L87 Difference]: Start difference. First operand 111 states. Second operand 114 states. [2018-11-23 12:16:47,965 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:47,965 INFO L93 Difference]: Finished difference Result 114 states and 128 transitions. [2018-11-23 12:16:47,965 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 128 transitions. [2018-11-23 12:16:47,966 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:47,966 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:47,966 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:47,966 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:47,966 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 111 states. [2018-11-23 12:16:47,968 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 111 states to 111 states and 124 transitions. [2018-11-23 12:16:47,968 INFO L78 Accepts]: Start accepts. Automaton has 111 states and 124 transitions. Word has length 180 [2018-11-23 12:16:47,968 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:47,969 INFO L480 AbstractCegarLoop]: Abstraction has 111 states and 124 transitions. [2018-11-23 12:16:47,969 INFO L481 AbstractCegarLoop]: Interpolant automaton has 12 states. [2018-11-23 12:16:47,969 INFO L276 IsEmpty]: Start isEmpty. Operand 111 states and 124 transitions. [2018-11-23 12:16:47,969 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 193 [2018-11-23 12:16:47,969 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:47,970 INFO L402 BasicCegarLoop]: trace histogram [27, 27, 27, 27, 20, 20, 6, 6, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:47,970 INFO L423 AbstractCegarLoop]: === Iteration 26 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:47,970 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:47,970 INFO L82 PathProgramCache]: Analyzing trace with hash -65754278, now seen corresponding path program 23 times [2018-11-23 12:16:47,970 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:47,970 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:47,971 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:47,971 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:16:47,971 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:48,004 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:48,279 INFO L256 TraceCheckUtils]: 0: Hoare triple {16823#true} call ULTIMATE.init(); {16823#true} is VALID [2018-11-23 12:16:48,279 INFO L273 TraceCheckUtils]: 1: Hoare triple {16823#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {16823#true} is VALID [2018-11-23 12:16:48,280 INFO L273 TraceCheckUtils]: 2: Hoare triple {16823#true} assume true; {16823#true} is VALID [2018-11-23 12:16:48,280 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {16823#true} {16823#true} #73#return; {16823#true} is VALID [2018-11-23 12:16:48,280 INFO L256 TraceCheckUtils]: 4: Hoare triple {16823#true} call #t~ret14 := main(); {16823#true} is VALID [2018-11-23 12:16:48,280 INFO L273 TraceCheckUtils]: 5: Hoare triple {16823#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {16823#true} is VALID [2018-11-23 12:16:48,280 INFO L273 TraceCheckUtils]: 6: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:48,281 INFO L273 TraceCheckUtils]: 7: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:48,281 INFO L273 TraceCheckUtils]: 8: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:48,281 INFO L273 TraceCheckUtils]: 9: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:48,281 INFO L273 TraceCheckUtils]: 10: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:48,281 INFO L273 TraceCheckUtils]: 11: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:48,281 INFO L273 TraceCheckUtils]: 12: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:48,282 INFO L273 TraceCheckUtils]: 13: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:48,282 INFO L273 TraceCheckUtils]: 14: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:48,282 INFO L273 TraceCheckUtils]: 15: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:48,282 INFO L273 TraceCheckUtils]: 16: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:48,282 INFO L273 TraceCheckUtils]: 17: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:48,282 INFO L273 TraceCheckUtils]: 18: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:48,282 INFO L273 TraceCheckUtils]: 19: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:48,282 INFO L273 TraceCheckUtils]: 20: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:48,282 INFO L273 TraceCheckUtils]: 21: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:48,283 INFO L273 TraceCheckUtils]: 22: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:48,283 INFO L273 TraceCheckUtils]: 23: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:48,283 INFO L273 TraceCheckUtils]: 24: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:48,283 INFO L273 TraceCheckUtils]: 25: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:48,283 INFO L273 TraceCheckUtils]: 26: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:48,283 INFO L273 TraceCheckUtils]: 27: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:48,283 INFO L273 TraceCheckUtils]: 28: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:48,283 INFO L273 TraceCheckUtils]: 29: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:48,283 INFO L273 TraceCheckUtils]: 30: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:48,283 INFO L273 TraceCheckUtils]: 31: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:48,284 INFO L273 TraceCheckUtils]: 32: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:48,284 INFO L273 TraceCheckUtils]: 33: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:48,284 INFO L273 TraceCheckUtils]: 34: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:48,284 INFO L273 TraceCheckUtils]: 35: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:48,284 INFO L273 TraceCheckUtils]: 36: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:48,284 INFO L273 TraceCheckUtils]: 37: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:48,284 INFO L273 TraceCheckUtils]: 38: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:48,284 INFO L273 TraceCheckUtils]: 39: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:48,284 INFO L273 TraceCheckUtils]: 40: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:48,285 INFO L273 TraceCheckUtils]: 41: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:48,285 INFO L273 TraceCheckUtils]: 42: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:48,285 INFO L273 TraceCheckUtils]: 43: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:48,285 INFO L273 TraceCheckUtils]: 44: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:48,285 INFO L273 TraceCheckUtils]: 45: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:48,285 INFO L273 TraceCheckUtils]: 46: Hoare triple {16823#true} assume !(~i~1 < 20); {16823#true} is VALID [2018-11-23 12:16:48,285 INFO L256 TraceCheckUtils]: 47: Hoare triple {16823#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {16823#true} is VALID [2018-11-23 12:16:48,285 INFO L273 TraceCheckUtils]: 48: Hoare triple {16823#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {16825#(= max_~i~0 0)} is VALID [2018-11-23 12:16:48,286 INFO L273 TraceCheckUtils]: 49: Hoare triple {16825#(= max_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16825#(= max_~i~0 0)} is VALID [2018-11-23 12:16:48,286 INFO L273 TraceCheckUtils]: 50: Hoare triple {16825#(= max_~i~0 0)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16825#(= max_~i~0 0)} is VALID [2018-11-23 12:16:48,286 INFO L273 TraceCheckUtils]: 51: Hoare triple {16825#(= max_~i~0 0)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16825#(= max_~i~0 0)} is VALID [2018-11-23 12:16:48,287 INFO L273 TraceCheckUtils]: 52: Hoare triple {16825#(= max_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16826#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:48,287 INFO L273 TraceCheckUtils]: 53: Hoare triple {16826#(<= max_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16826#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:48,287 INFO L273 TraceCheckUtils]: 54: Hoare triple {16826#(<= max_~i~0 1)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16826#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:48,288 INFO L273 TraceCheckUtils]: 55: Hoare triple {16826#(<= max_~i~0 1)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16826#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:48,288 INFO L273 TraceCheckUtils]: 56: Hoare triple {16826#(<= max_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16827#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:48,288 INFO L273 TraceCheckUtils]: 57: Hoare triple {16827#(<= max_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16827#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:48,289 INFO L273 TraceCheckUtils]: 58: Hoare triple {16827#(<= max_~i~0 2)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16827#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:48,289 INFO L273 TraceCheckUtils]: 59: Hoare triple {16827#(<= max_~i~0 2)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16827#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:48,289 INFO L273 TraceCheckUtils]: 60: Hoare triple {16827#(<= max_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16828#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:48,290 INFO L273 TraceCheckUtils]: 61: Hoare triple {16828#(<= max_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16828#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:48,290 INFO L273 TraceCheckUtils]: 62: Hoare triple {16828#(<= max_~i~0 3)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16828#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:48,291 INFO L273 TraceCheckUtils]: 63: Hoare triple {16828#(<= max_~i~0 3)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16828#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:48,291 INFO L273 TraceCheckUtils]: 64: Hoare triple {16828#(<= max_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16829#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:48,292 INFO L273 TraceCheckUtils]: 65: Hoare triple {16829#(<= max_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16829#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:48,292 INFO L273 TraceCheckUtils]: 66: Hoare triple {16829#(<= max_~i~0 4)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16829#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:48,293 INFO L273 TraceCheckUtils]: 67: Hoare triple {16829#(<= max_~i~0 4)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16829#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:48,294 INFO L273 TraceCheckUtils]: 68: Hoare triple {16829#(<= max_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16830#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:48,294 INFO L273 TraceCheckUtils]: 69: Hoare triple {16830#(<= max_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16830#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:48,294 INFO L273 TraceCheckUtils]: 70: Hoare triple {16830#(<= max_~i~0 5)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16830#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:48,295 INFO L273 TraceCheckUtils]: 71: Hoare triple {16830#(<= max_~i~0 5)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16830#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:48,296 INFO L273 TraceCheckUtils]: 72: Hoare triple {16830#(<= max_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16831#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:48,296 INFO L273 TraceCheckUtils]: 73: Hoare triple {16831#(<= max_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16831#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:48,297 INFO L273 TraceCheckUtils]: 74: Hoare triple {16831#(<= max_~i~0 6)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16831#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:48,297 INFO L273 TraceCheckUtils]: 75: Hoare triple {16831#(<= max_~i~0 6)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16831#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:48,298 INFO L273 TraceCheckUtils]: 76: Hoare triple {16831#(<= max_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16832#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:48,298 INFO L273 TraceCheckUtils]: 77: Hoare triple {16832#(<= max_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16832#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:48,299 INFO L273 TraceCheckUtils]: 78: Hoare triple {16832#(<= max_~i~0 7)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16832#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:48,299 INFO L273 TraceCheckUtils]: 79: Hoare triple {16832#(<= max_~i~0 7)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16832#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:48,300 INFO L273 TraceCheckUtils]: 80: Hoare triple {16832#(<= max_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16833#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:48,300 INFO L273 TraceCheckUtils]: 81: Hoare triple {16833#(<= max_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16833#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:48,301 INFO L273 TraceCheckUtils]: 82: Hoare triple {16833#(<= max_~i~0 8)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16833#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:48,301 INFO L273 TraceCheckUtils]: 83: Hoare triple {16833#(<= max_~i~0 8)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16833#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:48,302 INFO L273 TraceCheckUtils]: 84: Hoare triple {16833#(<= max_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16834#(<= max_~i~0 9)} is VALID [2018-11-23 12:16:48,303 INFO L273 TraceCheckUtils]: 85: Hoare triple {16834#(<= max_~i~0 9)} assume !(~i~0 < 20); {16824#false} is VALID [2018-11-23 12:16:48,303 INFO L273 TraceCheckUtils]: 86: Hoare triple {16824#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {16824#false} is VALID [2018-11-23 12:16:48,303 INFO L273 TraceCheckUtils]: 87: Hoare triple {16824#false} assume true; {16824#false} is VALID [2018-11-23 12:16:48,303 INFO L268 TraceCheckUtils]: 88: Hoare quadruple {16824#false} {16823#true} #77#return; {16824#false} is VALID [2018-11-23 12:16:48,304 INFO L273 TraceCheckUtils]: 89: Hoare triple {16824#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {16824#false} is VALID [2018-11-23 12:16:48,304 INFO L256 TraceCheckUtils]: 90: Hoare triple {16824#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {16823#true} is VALID [2018-11-23 12:16:48,304 INFO L273 TraceCheckUtils]: 91: Hoare triple {16823#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {16823#true} is VALID [2018-11-23 12:16:48,304 INFO L273 TraceCheckUtils]: 92: Hoare triple {16823#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16823#true} is VALID [2018-11-23 12:16:48,304 INFO L273 TraceCheckUtils]: 93: Hoare triple {16823#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16823#true} is VALID [2018-11-23 12:16:48,305 INFO L273 TraceCheckUtils]: 94: Hoare triple {16823#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16823#true} is VALID [2018-11-23 12:16:48,305 INFO L273 TraceCheckUtils]: 95: Hoare triple {16823#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16823#true} is VALID [2018-11-23 12:16:48,305 INFO L273 TraceCheckUtils]: 96: Hoare triple {16823#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16823#true} is VALID [2018-11-23 12:16:48,305 INFO L273 TraceCheckUtils]: 97: Hoare triple {16823#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16823#true} is VALID [2018-11-23 12:16:48,305 INFO L273 TraceCheckUtils]: 98: Hoare triple {16823#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16823#true} is VALID [2018-11-23 12:16:48,305 INFO L273 TraceCheckUtils]: 99: Hoare triple {16823#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16823#true} is VALID [2018-11-23 12:16:48,306 INFO L273 TraceCheckUtils]: 100: Hoare triple {16823#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16823#true} is VALID [2018-11-23 12:16:48,306 INFO L273 TraceCheckUtils]: 101: Hoare triple {16823#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16823#true} is VALID [2018-11-23 12:16:48,306 INFO L273 TraceCheckUtils]: 102: Hoare triple {16823#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16823#true} is VALID [2018-11-23 12:16:48,306 INFO L273 TraceCheckUtils]: 103: Hoare triple {16823#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16823#true} is VALID [2018-11-23 12:16:48,306 INFO L273 TraceCheckUtils]: 104: Hoare triple {16823#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16823#true} is VALID [2018-11-23 12:16:48,307 INFO L273 TraceCheckUtils]: 105: Hoare triple {16823#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16823#true} is VALID [2018-11-23 12:16:48,307 INFO L273 TraceCheckUtils]: 106: Hoare triple {16823#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16823#true} is VALID [2018-11-23 12:16:48,307 INFO L273 TraceCheckUtils]: 107: Hoare triple {16823#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16823#true} is VALID [2018-11-23 12:16:48,307 INFO L273 TraceCheckUtils]: 108: Hoare triple {16823#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16823#true} is VALID [2018-11-23 12:16:48,307 INFO L273 TraceCheckUtils]: 109: Hoare triple {16823#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16823#true} is VALID [2018-11-23 12:16:48,307 INFO L273 TraceCheckUtils]: 110: Hoare triple {16823#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16823#true} is VALID [2018-11-23 12:16:48,308 INFO L273 TraceCheckUtils]: 111: Hoare triple {16823#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16823#true} is VALID [2018-11-23 12:16:48,308 INFO L273 TraceCheckUtils]: 112: Hoare triple {16823#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16823#true} is VALID [2018-11-23 12:16:48,308 INFO L273 TraceCheckUtils]: 113: Hoare triple {16823#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16823#true} is VALID [2018-11-23 12:16:48,308 INFO L273 TraceCheckUtils]: 114: Hoare triple {16823#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16823#true} is VALID [2018-11-23 12:16:48,308 INFO L273 TraceCheckUtils]: 115: Hoare triple {16823#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16823#true} is VALID [2018-11-23 12:16:48,308 INFO L273 TraceCheckUtils]: 116: Hoare triple {16823#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16823#true} is VALID [2018-11-23 12:16:48,308 INFO L273 TraceCheckUtils]: 117: Hoare triple {16823#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16823#true} is VALID [2018-11-23 12:16:48,308 INFO L273 TraceCheckUtils]: 118: Hoare triple {16823#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16823#true} is VALID [2018-11-23 12:16:48,308 INFO L273 TraceCheckUtils]: 119: Hoare triple {16823#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16823#true} is VALID [2018-11-23 12:16:48,309 INFO L273 TraceCheckUtils]: 120: Hoare triple {16823#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16823#true} is VALID [2018-11-23 12:16:48,309 INFO L273 TraceCheckUtils]: 121: Hoare triple {16823#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16823#true} is VALID [2018-11-23 12:16:48,309 INFO L273 TraceCheckUtils]: 122: Hoare triple {16823#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16823#true} is VALID [2018-11-23 12:16:48,309 INFO L273 TraceCheckUtils]: 123: Hoare triple {16823#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16823#true} is VALID [2018-11-23 12:16:48,309 INFO L273 TraceCheckUtils]: 124: Hoare triple {16823#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16823#true} is VALID [2018-11-23 12:16:48,309 INFO L273 TraceCheckUtils]: 125: Hoare triple {16823#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16823#true} is VALID [2018-11-23 12:16:48,309 INFO L273 TraceCheckUtils]: 126: Hoare triple {16823#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16823#true} is VALID [2018-11-23 12:16:48,309 INFO L273 TraceCheckUtils]: 127: Hoare triple {16823#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16823#true} is VALID [2018-11-23 12:16:48,309 INFO L273 TraceCheckUtils]: 128: Hoare triple {16823#true} assume !(~i~0 < 20); {16823#true} is VALID [2018-11-23 12:16:48,310 INFO L273 TraceCheckUtils]: 129: Hoare triple {16823#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {16823#true} is VALID [2018-11-23 12:16:48,310 INFO L273 TraceCheckUtils]: 130: Hoare triple {16823#true} assume true; {16823#true} is VALID [2018-11-23 12:16:48,310 INFO L268 TraceCheckUtils]: 131: Hoare quadruple {16823#true} {16824#false} #79#return; {16824#false} is VALID [2018-11-23 12:16:48,310 INFO L273 TraceCheckUtils]: 132: Hoare triple {16824#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {16824#false} is VALID [2018-11-23 12:16:48,310 INFO L273 TraceCheckUtils]: 133: Hoare triple {16824#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {16824#false} is VALID [2018-11-23 12:16:48,310 INFO L273 TraceCheckUtils]: 134: Hoare triple {16824#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {16824#false} is VALID [2018-11-23 12:16:48,310 INFO L273 TraceCheckUtils]: 135: Hoare triple {16824#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {16824#false} is VALID [2018-11-23 12:16:48,310 INFO L273 TraceCheckUtils]: 136: Hoare triple {16824#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {16824#false} is VALID [2018-11-23 12:16:48,310 INFO L273 TraceCheckUtils]: 137: Hoare triple {16824#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {16824#false} is VALID [2018-11-23 12:16:48,310 INFO L273 TraceCheckUtils]: 138: Hoare triple {16824#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {16824#false} is VALID [2018-11-23 12:16:48,311 INFO L273 TraceCheckUtils]: 139: Hoare triple {16824#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {16824#false} is VALID [2018-11-23 12:16:48,311 INFO L273 TraceCheckUtils]: 140: Hoare triple {16824#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {16824#false} is VALID [2018-11-23 12:16:48,311 INFO L273 TraceCheckUtils]: 141: Hoare triple {16824#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {16824#false} is VALID [2018-11-23 12:16:48,311 INFO L273 TraceCheckUtils]: 142: Hoare triple {16824#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {16824#false} is VALID [2018-11-23 12:16:48,311 INFO L273 TraceCheckUtils]: 143: Hoare triple {16824#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {16824#false} is VALID [2018-11-23 12:16:48,311 INFO L273 TraceCheckUtils]: 144: Hoare triple {16824#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {16824#false} is VALID [2018-11-23 12:16:48,311 INFO L273 TraceCheckUtils]: 145: Hoare triple {16824#false} assume !(~i~2 < 19); {16824#false} is VALID [2018-11-23 12:16:48,311 INFO L273 TraceCheckUtils]: 146: Hoare triple {16824#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {16824#false} is VALID [2018-11-23 12:16:48,311 INFO L256 TraceCheckUtils]: 147: Hoare triple {16824#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {16823#true} is VALID [2018-11-23 12:16:48,311 INFO L273 TraceCheckUtils]: 148: Hoare triple {16823#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {16823#true} is VALID [2018-11-23 12:16:48,312 INFO L273 TraceCheckUtils]: 149: Hoare triple {16823#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16823#true} is VALID [2018-11-23 12:16:48,312 INFO L273 TraceCheckUtils]: 150: Hoare triple {16823#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16823#true} is VALID [2018-11-23 12:16:48,312 INFO L273 TraceCheckUtils]: 151: Hoare triple {16823#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16823#true} is VALID [2018-11-23 12:16:48,312 INFO L273 TraceCheckUtils]: 152: Hoare triple {16823#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16823#true} is VALID [2018-11-23 12:16:48,312 INFO L273 TraceCheckUtils]: 153: Hoare triple {16823#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16823#true} is VALID [2018-11-23 12:16:48,312 INFO L273 TraceCheckUtils]: 154: Hoare triple {16823#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16823#true} is VALID [2018-11-23 12:16:48,312 INFO L273 TraceCheckUtils]: 155: Hoare triple {16823#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16823#true} is VALID [2018-11-23 12:16:48,312 INFO L273 TraceCheckUtils]: 156: Hoare triple {16823#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16823#true} is VALID [2018-11-23 12:16:48,312 INFO L273 TraceCheckUtils]: 157: Hoare triple {16823#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16823#true} is VALID [2018-11-23 12:16:48,313 INFO L273 TraceCheckUtils]: 158: Hoare triple {16823#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16823#true} is VALID [2018-11-23 12:16:48,313 INFO L273 TraceCheckUtils]: 159: Hoare triple {16823#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16823#true} is VALID [2018-11-23 12:16:48,313 INFO L273 TraceCheckUtils]: 160: Hoare triple {16823#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16823#true} is VALID [2018-11-23 12:16:48,313 INFO L273 TraceCheckUtils]: 161: Hoare triple {16823#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16823#true} is VALID [2018-11-23 12:16:48,313 INFO L273 TraceCheckUtils]: 162: Hoare triple {16823#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16823#true} is VALID [2018-11-23 12:16:48,313 INFO L273 TraceCheckUtils]: 163: Hoare triple {16823#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16823#true} is VALID [2018-11-23 12:16:48,313 INFO L273 TraceCheckUtils]: 164: Hoare triple {16823#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16823#true} is VALID [2018-11-23 12:16:48,313 INFO L273 TraceCheckUtils]: 165: Hoare triple {16823#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16823#true} is VALID [2018-11-23 12:16:48,313 INFO L273 TraceCheckUtils]: 166: Hoare triple {16823#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16823#true} is VALID [2018-11-23 12:16:48,313 INFO L273 TraceCheckUtils]: 167: Hoare triple {16823#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16823#true} is VALID [2018-11-23 12:16:48,314 INFO L273 TraceCheckUtils]: 168: Hoare triple {16823#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16823#true} is VALID [2018-11-23 12:16:48,314 INFO L273 TraceCheckUtils]: 169: Hoare triple {16823#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16823#true} is VALID [2018-11-23 12:16:48,314 INFO L273 TraceCheckUtils]: 170: Hoare triple {16823#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16823#true} is VALID [2018-11-23 12:16:48,314 INFO L273 TraceCheckUtils]: 171: Hoare triple {16823#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16823#true} is VALID [2018-11-23 12:16:48,314 INFO L273 TraceCheckUtils]: 172: Hoare triple {16823#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16823#true} is VALID [2018-11-23 12:16:48,314 INFO L273 TraceCheckUtils]: 173: Hoare triple {16823#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16823#true} is VALID [2018-11-23 12:16:48,314 INFO L273 TraceCheckUtils]: 174: Hoare triple {16823#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16823#true} is VALID [2018-11-23 12:16:48,314 INFO L273 TraceCheckUtils]: 175: Hoare triple {16823#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16823#true} is VALID [2018-11-23 12:16:48,314 INFO L273 TraceCheckUtils]: 176: Hoare triple {16823#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16823#true} is VALID [2018-11-23 12:16:48,315 INFO L273 TraceCheckUtils]: 177: Hoare triple {16823#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16823#true} is VALID [2018-11-23 12:16:48,315 INFO L273 TraceCheckUtils]: 178: Hoare triple {16823#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16823#true} is VALID [2018-11-23 12:16:48,315 INFO L273 TraceCheckUtils]: 179: Hoare triple {16823#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16823#true} is VALID [2018-11-23 12:16:48,315 INFO L273 TraceCheckUtils]: 180: Hoare triple {16823#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16823#true} is VALID [2018-11-23 12:16:48,315 INFO L273 TraceCheckUtils]: 181: Hoare triple {16823#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16823#true} is VALID [2018-11-23 12:16:48,315 INFO L273 TraceCheckUtils]: 182: Hoare triple {16823#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16823#true} is VALID [2018-11-23 12:16:48,315 INFO L273 TraceCheckUtils]: 183: Hoare triple {16823#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16823#true} is VALID [2018-11-23 12:16:48,315 INFO L273 TraceCheckUtils]: 184: Hoare triple {16823#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16823#true} is VALID [2018-11-23 12:16:48,315 INFO L273 TraceCheckUtils]: 185: Hoare triple {16823#true} assume !(~i~0 < 20); {16823#true} is VALID [2018-11-23 12:16:48,315 INFO L273 TraceCheckUtils]: 186: Hoare triple {16823#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {16823#true} is VALID [2018-11-23 12:16:48,316 INFO L273 TraceCheckUtils]: 187: Hoare triple {16823#true} assume true; {16823#true} is VALID [2018-11-23 12:16:48,316 INFO L268 TraceCheckUtils]: 188: Hoare quadruple {16823#true} {16824#false} #81#return; {16824#false} is VALID [2018-11-23 12:16:48,316 INFO L273 TraceCheckUtils]: 189: Hoare triple {16824#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {16824#false} is VALID [2018-11-23 12:16:48,316 INFO L273 TraceCheckUtils]: 190: Hoare triple {16824#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {16824#false} is VALID [2018-11-23 12:16:48,316 INFO L273 TraceCheckUtils]: 191: Hoare triple {16824#false} assume !false; {16824#false} is VALID [2018-11-23 12:16:48,331 INFO L134 CoverageAnalysis]: Checked inductivity of 1936 backedges. 0 proven. 845 refuted. 0 times theorem prover too weak. 1091 trivial. 0 not checked. [2018-11-23 12:16:48,331 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:16:48,331 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 25 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 25 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:16:48,339 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 12:16:49,976 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 20 check-sat command(s) [2018-11-23 12:16:49,976 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:16:50,015 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:50,018 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:50,216 INFO L256 TraceCheckUtils]: 0: Hoare triple {16823#true} call ULTIMATE.init(); {16823#true} is VALID [2018-11-23 12:16:50,217 INFO L273 TraceCheckUtils]: 1: Hoare triple {16823#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {16823#true} is VALID [2018-11-23 12:16:50,217 INFO L273 TraceCheckUtils]: 2: Hoare triple {16823#true} assume true; {16823#true} is VALID [2018-11-23 12:16:50,217 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {16823#true} {16823#true} #73#return; {16823#true} is VALID [2018-11-23 12:16:50,217 INFO L256 TraceCheckUtils]: 4: Hoare triple {16823#true} call #t~ret14 := main(); {16823#true} is VALID [2018-11-23 12:16:50,217 INFO L273 TraceCheckUtils]: 5: Hoare triple {16823#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {16823#true} is VALID [2018-11-23 12:16:50,217 INFO L273 TraceCheckUtils]: 6: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:50,218 INFO L273 TraceCheckUtils]: 7: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:50,218 INFO L273 TraceCheckUtils]: 8: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:50,218 INFO L273 TraceCheckUtils]: 9: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:50,218 INFO L273 TraceCheckUtils]: 10: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:50,218 INFO L273 TraceCheckUtils]: 11: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:50,219 INFO L273 TraceCheckUtils]: 12: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:50,219 INFO L273 TraceCheckUtils]: 13: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:50,219 INFO L273 TraceCheckUtils]: 14: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:50,219 INFO L273 TraceCheckUtils]: 15: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:50,219 INFO L273 TraceCheckUtils]: 16: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:50,219 INFO L273 TraceCheckUtils]: 17: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:50,220 INFO L273 TraceCheckUtils]: 18: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:50,220 INFO L273 TraceCheckUtils]: 19: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:50,220 INFO L273 TraceCheckUtils]: 20: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:50,220 INFO L273 TraceCheckUtils]: 21: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:50,220 INFO L273 TraceCheckUtils]: 22: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:50,220 INFO L273 TraceCheckUtils]: 23: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:50,220 INFO L273 TraceCheckUtils]: 24: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:50,221 INFO L273 TraceCheckUtils]: 25: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:50,221 INFO L273 TraceCheckUtils]: 26: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:50,221 INFO L273 TraceCheckUtils]: 27: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:50,221 INFO L273 TraceCheckUtils]: 28: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:50,221 INFO L273 TraceCheckUtils]: 29: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:50,221 INFO L273 TraceCheckUtils]: 30: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:50,221 INFO L273 TraceCheckUtils]: 31: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:50,221 INFO L273 TraceCheckUtils]: 32: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:50,221 INFO L273 TraceCheckUtils]: 33: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:50,222 INFO L273 TraceCheckUtils]: 34: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:50,222 INFO L273 TraceCheckUtils]: 35: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:50,222 INFO L273 TraceCheckUtils]: 36: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:50,222 INFO L273 TraceCheckUtils]: 37: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:50,222 INFO L273 TraceCheckUtils]: 38: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:50,222 INFO L273 TraceCheckUtils]: 39: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:50,222 INFO L273 TraceCheckUtils]: 40: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:50,222 INFO L273 TraceCheckUtils]: 41: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:50,222 INFO L273 TraceCheckUtils]: 42: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:50,222 INFO L273 TraceCheckUtils]: 43: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:50,223 INFO L273 TraceCheckUtils]: 44: Hoare triple {16823#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {16823#true} is VALID [2018-11-23 12:16:50,223 INFO L273 TraceCheckUtils]: 45: Hoare triple {16823#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {16823#true} is VALID [2018-11-23 12:16:50,223 INFO L273 TraceCheckUtils]: 46: Hoare triple {16823#true} assume !(~i~1 < 20); {16823#true} is VALID [2018-11-23 12:16:50,223 INFO L256 TraceCheckUtils]: 47: Hoare triple {16823#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {16823#true} is VALID [2018-11-23 12:16:50,223 INFO L273 TraceCheckUtils]: 48: Hoare triple {16823#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {16982#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:50,224 INFO L273 TraceCheckUtils]: 49: Hoare triple {16982#(<= max_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16982#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:50,224 INFO L273 TraceCheckUtils]: 50: Hoare triple {16982#(<= max_~i~0 0)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16982#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:50,224 INFO L273 TraceCheckUtils]: 51: Hoare triple {16982#(<= max_~i~0 0)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16982#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:50,225 INFO L273 TraceCheckUtils]: 52: Hoare triple {16982#(<= max_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16826#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:50,225 INFO L273 TraceCheckUtils]: 53: Hoare triple {16826#(<= max_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16826#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:50,225 INFO L273 TraceCheckUtils]: 54: Hoare triple {16826#(<= max_~i~0 1)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16826#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:50,226 INFO L273 TraceCheckUtils]: 55: Hoare triple {16826#(<= max_~i~0 1)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16826#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:50,226 INFO L273 TraceCheckUtils]: 56: Hoare triple {16826#(<= max_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16827#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:50,226 INFO L273 TraceCheckUtils]: 57: Hoare triple {16827#(<= max_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16827#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:50,227 INFO L273 TraceCheckUtils]: 58: Hoare triple {16827#(<= max_~i~0 2)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16827#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:50,227 INFO L273 TraceCheckUtils]: 59: Hoare triple {16827#(<= max_~i~0 2)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16827#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:50,228 INFO L273 TraceCheckUtils]: 60: Hoare triple {16827#(<= max_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16828#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:50,229 INFO L273 TraceCheckUtils]: 61: Hoare triple {16828#(<= max_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16828#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:50,229 INFO L273 TraceCheckUtils]: 62: Hoare triple {16828#(<= max_~i~0 3)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16828#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:50,230 INFO L273 TraceCheckUtils]: 63: Hoare triple {16828#(<= max_~i~0 3)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16828#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:50,230 INFO L273 TraceCheckUtils]: 64: Hoare triple {16828#(<= max_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16829#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:50,231 INFO L273 TraceCheckUtils]: 65: Hoare triple {16829#(<= max_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16829#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:50,231 INFO L273 TraceCheckUtils]: 66: Hoare triple {16829#(<= max_~i~0 4)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16829#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:50,232 INFO L273 TraceCheckUtils]: 67: Hoare triple {16829#(<= max_~i~0 4)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16829#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:50,233 INFO L273 TraceCheckUtils]: 68: Hoare triple {16829#(<= max_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16830#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:50,233 INFO L273 TraceCheckUtils]: 69: Hoare triple {16830#(<= max_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16830#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:50,234 INFO L273 TraceCheckUtils]: 70: Hoare triple {16830#(<= max_~i~0 5)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16830#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:50,234 INFO L273 TraceCheckUtils]: 71: Hoare triple {16830#(<= max_~i~0 5)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16830#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:50,235 INFO L273 TraceCheckUtils]: 72: Hoare triple {16830#(<= max_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16831#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:50,235 INFO L273 TraceCheckUtils]: 73: Hoare triple {16831#(<= max_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16831#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:50,236 INFO L273 TraceCheckUtils]: 74: Hoare triple {16831#(<= max_~i~0 6)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16831#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:50,236 INFO L273 TraceCheckUtils]: 75: Hoare triple {16831#(<= max_~i~0 6)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16831#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:50,237 INFO L273 TraceCheckUtils]: 76: Hoare triple {16831#(<= max_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16832#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:50,237 INFO L273 TraceCheckUtils]: 77: Hoare triple {16832#(<= max_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16832#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:50,238 INFO L273 TraceCheckUtils]: 78: Hoare triple {16832#(<= max_~i~0 7)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16832#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:50,238 INFO L273 TraceCheckUtils]: 79: Hoare triple {16832#(<= max_~i~0 7)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16832#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:50,239 INFO L273 TraceCheckUtils]: 80: Hoare triple {16832#(<= max_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16833#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:50,240 INFO L273 TraceCheckUtils]: 81: Hoare triple {16833#(<= max_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16833#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:50,240 INFO L273 TraceCheckUtils]: 82: Hoare triple {16833#(<= max_~i~0 8)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16833#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:50,241 INFO L273 TraceCheckUtils]: 83: Hoare triple {16833#(<= max_~i~0 8)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16833#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:50,241 INFO L273 TraceCheckUtils]: 84: Hoare triple {16833#(<= max_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16834#(<= max_~i~0 9)} is VALID [2018-11-23 12:16:50,242 INFO L273 TraceCheckUtils]: 85: Hoare triple {16834#(<= max_~i~0 9)} assume !(~i~0 < 20); {16824#false} is VALID [2018-11-23 12:16:50,242 INFO L273 TraceCheckUtils]: 86: Hoare triple {16824#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {16824#false} is VALID [2018-11-23 12:16:50,243 INFO L273 TraceCheckUtils]: 87: Hoare triple {16824#false} assume true; {16824#false} is VALID [2018-11-23 12:16:50,243 INFO L268 TraceCheckUtils]: 88: Hoare quadruple {16824#false} {16823#true} #77#return; {16824#false} is VALID [2018-11-23 12:16:50,243 INFO L273 TraceCheckUtils]: 89: Hoare triple {16824#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {16824#false} is VALID [2018-11-23 12:16:50,243 INFO L256 TraceCheckUtils]: 90: Hoare triple {16824#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {16824#false} is VALID [2018-11-23 12:16:50,243 INFO L273 TraceCheckUtils]: 91: Hoare triple {16824#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {16824#false} is VALID [2018-11-23 12:16:50,243 INFO L273 TraceCheckUtils]: 92: Hoare triple {16824#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16824#false} is VALID [2018-11-23 12:16:50,244 INFO L273 TraceCheckUtils]: 93: Hoare triple {16824#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16824#false} is VALID [2018-11-23 12:16:50,244 INFO L273 TraceCheckUtils]: 94: Hoare triple {16824#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16824#false} is VALID [2018-11-23 12:16:50,244 INFO L273 TraceCheckUtils]: 95: Hoare triple {16824#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16824#false} is VALID [2018-11-23 12:16:50,244 INFO L273 TraceCheckUtils]: 96: Hoare triple {16824#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16824#false} is VALID [2018-11-23 12:16:50,244 INFO L273 TraceCheckUtils]: 97: Hoare triple {16824#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16824#false} is VALID [2018-11-23 12:16:50,245 INFO L273 TraceCheckUtils]: 98: Hoare triple {16824#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16824#false} is VALID [2018-11-23 12:16:50,245 INFO L273 TraceCheckUtils]: 99: Hoare triple {16824#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16824#false} is VALID [2018-11-23 12:16:50,245 INFO L273 TraceCheckUtils]: 100: Hoare triple {16824#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16824#false} is VALID [2018-11-23 12:16:50,245 INFO L273 TraceCheckUtils]: 101: Hoare triple {16824#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16824#false} is VALID [2018-11-23 12:16:50,245 INFO L273 TraceCheckUtils]: 102: Hoare triple {16824#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16824#false} is VALID [2018-11-23 12:16:50,245 INFO L273 TraceCheckUtils]: 103: Hoare triple {16824#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16824#false} is VALID [2018-11-23 12:16:50,245 INFO L273 TraceCheckUtils]: 104: Hoare triple {16824#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16824#false} is VALID [2018-11-23 12:16:50,246 INFO L273 TraceCheckUtils]: 105: Hoare triple {16824#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16824#false} is VALID [2018-11-23 12:16:50,246 INFO L273 TraceCheckUtils]: 106: Hoare triple {16824#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16824#false} is VALID [2018-11-23 12:16:50,246 INFO L273 TraceCheckUtils]: 107: Hoare triple {16824#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16824#false} is VALID [2018-11-23 12:16:50,246 INFO L273 TraceCheckUtils]: 108: Hoare triple {16824#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16824#false} is VALID [2018-11-23 12:16:50,246 INFO L273 TraceCheckUtils]: 109: Hoare triple {16824#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16824#false} is VALID [2018-11-23 12:16:50,246 INFO L273 TraceCheckUtils]: 110: Hoare triple {16824#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16824#false} is VALID [2018-11-23 12:16:50,246 INFO L273 TraceCheckUtils]: 111: Hoare triple {16824#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16824#false} is VALID [2018-11-23 12:16:50,246 INFO L273 TraceCheckUtils]: 112: Hoare triple {16824#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16824#false} is VALID [2018-11-23 12:16:50,246 INFO L273 TraceCheckUtils]: 113: Hoare triple {16824#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16824#false} is VALID [2018-11-23 12:16:50,247 INFO L273 TraceCheckUtils]: 114: Hoare triple {16824#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16824#false} is VALID [2018-11-23 12:16:50,247 INFO L273 TraceCheckUtils]: 115: Hoare triple {16824#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16824#false} is VALID [2018-11-23 12:16:50,247 INFO L273 TraceCheckUtils]: 116: Hoare triple {16824#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16824#false} is VALID [2018-11-23 12:16:50,247 INFO L273 TraceCheckUtils]: 117: Hoare triple {16824#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16824#false} is VALID [2018-11-23 12:16:50,247 INFO L273 TraceCheckUtils]: 118: Hoare triple {16824#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16824#false} is VALID [2018-11-23 12:16:50,247 INFO L273 TraceCheckUtils]: 119: Hoare triple {16824#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16824#false} is VALID [2018-11-23 12:16:50,247 INFO L273 TraceCheckUtils]: 120: Hoare triple {16824#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16824#false} is VALID [2018-11-23 12:16:50,247 INFO L273 TraceCheckUtils]: 121: Hoare triple {16824#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16824#false} is VALID [2018-11-23 12:16:50,247 INFO L273 TraceCheckUtils]: 122: Hoare triple {16824#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16824#false} is VALID [2018-11-23 12:16:50,247 INFO L273 TraceCheckUtils]: 123: Hoare triple {16824#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16824#false} is VALID [2018-11-23 12:16:50,248 INFO L273 TraceCheckUtils]: 124: Hoare triple {16824#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16824#false} is VALID [2018-11-23 12:16:50,248 INFO L273 TraceCheckUtils]: 125: Hoare triple {16824#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16824#false} is VALID [2018-11-23 12:16:50,248 INFO L273 TraceCheckUtils]: 126: Hoare triple {16824#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16824#false} is VALID [2018-11-23 12:16:50,248 INFO L273 TraceCheckUtils]: 127: Hoare triple {16824#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16824#false} is VALID [2018-11-23 12:16:50,248 INFO L273 TraceCheckUtils]: 128: Hoare triple {16824#false} assume !(~i~0 < 20); {16824#false} is VALID [2018-11-23 12:16:50,248 INFO L273 TraceCheckUtils]: 129: Hoare triple {16824#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {16824#false} is VALID [2018-11-23 12:16:50,248 INFO L273 TraceCheckUtils]: 130: Hoare triple {16824#false} assume true; {16824#false} is VALID [2018-11-23 12:16:50,248 INFO L268 TraceCheckUtils]: 131: Hoare quadruple {16824#false} {16824#false} #79#return; {16824#false} is VALID [2018-11-23 12:16:50,248 INFO L273 TraceCheckUtils]: 132: Hoare triple {16824#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {16824#false} is VALID [2018-11-23 12:16:50,248 INFO L273 TraceCheckUtils]: 133: Hoare triple {16824#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {16824#false} is VALID [2018-11-23 12:16:50,249 INFO L273 TraceCheckUtils]: 134: Hoare triple {16824#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {16824#false} is VALID [2018-11-23 12:16:50,249 INFO L273 TraceCheckUtils]: 135: Hoare triple {16824#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {16824#false} is VALID [2018-11-23 12:16:50,249 INFO L273 TraceCheckUtils]: 136: Hoare triple {16824#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {16824#false} is VALID [2018-11-23 12:16:50,249 INFO L273 TraceCheckUtils]: 137: Hoare triple {16824#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {16824#false} is VALID [2018-11-23 12:16:50,249 INFO L273 TraceCheckUtils]: 138: Hoare triple {16824#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {16824#false} is VALID [2018-11-23 12:16:50,249 INFO L273 TraceCheckUtils]: 139: Hoare triple {16824#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {16824#false} is VALID [2018-11-23 12:16:50,249 INFO L273 TraceCheckUtils]: 140: Hoare triple {16824#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {16824#false} is VALID [2018-11-23 12:16:50,249 INFO L273 TraceCheckUtils]: 141: Hoare triple {16824#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {16824#false} is VALID [2018-11-23 12:16:50,249 INFO L273 TraceCheckUtils]: 142: Hoare triple {16824#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {16824#false} is VALID [2018-11-23 12:16:50,250 INFO L273 TraceCheckUtils]: 143: Hoare triple {16824#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {16824#false} is VALID [2018-11-23 12:16:50,250 INFO L273 TraceCheckUtils]: 144: Hoare triple {16824#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {16824#false} is VALID [2018-11-23 12:16:50,250 INFO L273 TraceCheckUtils]: 145: Hoare triple {16824#false} assume !(~i~2 < 19); {16824#false} is VALID [2018-11-23 12:16:50,250 INFO L273 TraceCheckUtils]: 146: Hoare triple {16824#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {16824#false} is VALID [2018-11-23 12:16:50,250 INFO L256 TraceCheckUtils]: 147: Hoare triple {16824#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {16824#false} is VALID [2018-11-23 12:16:50,250 INFO L273 TraceCheckUtils]: 148: Hoare triple {16824#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {16824#false} is VALID [2018-11-23 12:16:50,250 INFO L273 TraceCheckUtils]: 149: Hoare triple {16824#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16824#false} is VALID [2018-11-23 12:16:50,250 INFO L273 TraceCheckUtils]: 150: Hoare triple {16824#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16824#false} is VALID [2018-11-23 12:16:50,250 INFO L273 TraceCheckUtils]: 151: Hoare triple {16824#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16824#false} is VALID [2018-11-23 12:16:50,250 INFO L273 TraceCheckUtils]: 152: Hoare triple {16824#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16824#false} is VALID [2018-11-23 12:16:50,251 INFO L273 TraceCheckUtils]: 153: Hoare triple {16824#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16824#false} is VALID [2018-11-23 12:16:50,251 INFO L273 TraceCheckUtils]: 154: Hoare triple {16824#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16824#false} is VALID [2018-11-23 12:16:50,251 INFO L273 TraceCheckUtils]: 155: Hoare triple {16824#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16824#false} is VALID [2018-11-23 12:16:50,251 INFO L273 TraceCheckUtils]: 156: Hoare triple {16824#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16824#false} is VALID [2018-11-23 12:16:50,251 INFO L273 TraceCheckUtils]: 157: Hoare triple {16824#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16824#false} is VALID [2018-11-23 12:16:50,251 INFO L273 TraceCheckUtils]: 158: Hoare triple {16824#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16824#false} is VALID [2018-11-23 12:16:50,251 INFO L273 TraceCheckUtils]: 159: Hoare triple {16824#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16824#false} is VALID [2018-11-23 12:16:50,251 INFO L273 TraceCheckUtils]: 160: Hoare triple {16824#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16824#false} is VALID [2018-11-23 12:16:50,251 INFO L273 TraceCheckUtils]: 161: Hoare triple {16824#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16824#false} is VALID [2018-11-23 12:16:50,252 INFO L273 TraceCheckUtils]: 162: Hoare triple {16824#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16824#false} is VALID [2018-11-23 12:16:50,252 INFO L273 TraceCheckUtils]: 163: Hoare triple {16824#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16824#false} is VALID [2018-11-23 12:16:50,252 INFO L273 TraceCheckUtils]: 164: Hoare triple {16824#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16824#false} is VALID [2018-11-23 12:16:50,252 INFO L273 TraceCheckUtils]: 165: Hoare triple {16824#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16824#false} is VALID [2018-11-23 12:16:50,252 INFO L273 TraceCheckUtils]: 166: Hoare triple {16824#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16824#false} is VALID [2018-11-23 12:16:50,252 INFO L273 TraceCheckUtils]: 167: Hoare triple {16824#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16824#false} is VALID [2018-11-23 12:16:50,252 INFO L273 TraceCheckUtils]: 168: Hoare triple {16824#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16824#false} is VALID [2018-11-23 12:16:50,252 INFO L273 TraceCheckUtils]: 169: Hoare triple {16824#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16824#false} is VALID [2018-11-23 12:16:50,252 INFO L273 TraceCheckUtils]: 170: Hoare triple {16824#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16824#false} is VALID [2018-11-23 12:16:50,252 INFO L273 TraceCheckUtils]: 171: Hoare triple {16824#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16824#false} is VALID [2018-11-23 12:16:50,253 INFO L273 TraceCheckUtils]: 172: Hoare triple {16824#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16824#false} is VALID [2018-11-23 12:16:50,253 INFO L273 TraceCheckUtils]: 173: Hoare triple {16824#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16824#false} is VALID [2018-11-23 12:16:50,253 INFO L273 TraceCheckUtils]: 174: Hoare triple {16824#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16824#false} is VALID [2018-11-23 12:16:50,253 INFO L273 TraceCheckUtils]: 175: Hoare triple {16824#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16824#false} is VALID [2018-11-23 12:16:50,253 INFO L273 TraceCheckUtils]: 176: Hoare triple {16824#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16824#false} is VALID [2018-11-23 12:16:50,253 INFO L273 TraceCheckUtils]: 177: Hoare triple {16824#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16824#false} is VALID [2018-11-23 12:16:50,253 INFO L273 TraceCheckUtils]: 178: Hoare triple {16824#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16824#false} is VALID [2018-11-23 12:16:50,253 INFO L273 TraceCheckUtils]: 179: Hoare triple {16824#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16824#false} is VALID [2018-11-23 12:16:50,253 INFO L273 TraceCheckUtils]: 180: Hoare triple {16824#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16824#false} is VALID [2018-11-23 12:16:50,254 INFO L273 TraceCheckUtils]: 181: Hoare triple {16824#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {16824#false} is VALID [2018-11-23 12:16:50,254 INFO L273 TraceCheckUtils]: 182: Hoare triple {16824#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {16824#false} is VALID [2018-11-23 12:16:50,254 INFO L273 TraceCheckUtils]: 183: Hoare triple {16824#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {16824#false} is VALID [2018-11-23 12:16:50,254 INFO L273 TraceCheckUtils]: 184: Hoare triple {16824#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {16824#false} is VALID [2018-11-23 12:16:50,254 INFO L273 TraceCheckUtils]: 185: Hoare triple {16824#false} assume !(~i~0 < 20); {16824#false} is VALID [2018-11-23 12:16:50,254 INFO L273 TraceCheckUtils]: 186: Hoare triple {16824#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {16824#false} is VALID [2018-11-23 12:16:50,254 INFO L273 TraceCheckUtils]: 187: Hoare triple {16824#false} assume true; {16824#false} is VALID [2018-11-23 12:16:50,254 INFO L268 TraceCheckUtils]: 188: Hoare quadruple {16824#false} {16824#false} #81#return; {16824#false} is VALID [2018-11-23 12:16:50,254 INFO L273 TraceCheckUtils]: 189: Hoare triple {16824#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {16824#false} is VALID [2018-11-23 12:16:50,254 INFO L273 TraceCheckUtils]: 190: Hoare triple {16824#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {16824#false} is VALID [2018-11-23 12:16:50,255 INFO L273 TraceCheckUtils]: 191: Hoare triple {16824#false} assume !false; {16824#false} is VALID [2018-11-23 12:16:50,269 INFO L134 CoverageAnalysis]: Checked inductivity of 1936 backedges. 688 proven. 153 refuted. 0 times theorem prover too weak. 1095 trivial. 0 not checked. [2018-11-23 12:16:50,289 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:16:50,289 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 13 [2018-11-23 12:16:50,290 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 192 [2018-11-23 12:16:50,291 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:50,291 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states. [2018-11-23 12:16:50,367 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:50,367 INFO L459 AbstractCegarLoop]: Interpolant automaton has 13 states [2018-11-23 12:16:50,368 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2018-11-23 12:16:50,368 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=78, Invalid=78, Unknown=0, NotChecked=0, Total=156 [2018-11-23 12:16:50,368 INFO L87 Difference]: Start difference. First operand 111 states and 124 transitions. Second operand 13 states. [2018-11-23 12:16:50,594 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:50,594 INFO L93 Difference]: Finished difference Result 181 states and 211 transitions. [2018-11-23 12:16:50,594 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2018-11-23 12:16:50,595 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 192 [2018-11-23 12:16:50,595 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:50,595 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-23 12:16:50,596 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 109 transitions. [2018-11-23 12:16:50,596 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-23 12:16:50,597 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 109 transitions. [2018-11-23 12:16:50,597 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 109 transitions. [2018-11-23 12:16:51,237 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:16:51,239 INFO L225 Difference]: With dead ends: 181 [2018-11-23 12:16:51,239 INFO L226 Difference]: Without dead ends: 118 [2018-11-23 12:16:51,240 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 203 GetRequests, 192 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=78, Invalid=78, Unknown=0, NotChecked=0, Total=156 [2018-11-23 12:16:51,240 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 118 states. [2018-11-23 12:16:51,278 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 118 to 115. [2018-11-23 12:16:51,279 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:51,279 INFO L82 GeneralOperation]: Start isEquivalent. First operand 118 states. Second operand 115 states. [2018-11-23 12:16:51,279 INFO L74 IsIncluded]: Start isIncluded. First operand 118 states. Second operand 115 states. [2018-11-23 12:16:51,279 INFO L87 Difference]: Start difference. First operand 118 states. Second operand 115 states. [2018-11-23 12:16:51,282 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:51,282 INFO L93 Difference]: Finished difference Result 118 states and 133 transitions. [2018-11-23 12:16:51,283 INFO L276 IsEmpty]: Start isEmpty. Operand 118 states and 133 transitions. [2018-11-23 12:16:51,283 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:51,283 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:51,283 INFO L74 IsIncluded]: Start isIncluded. First operand 115 states. Second operand 118 states. [2018-11-23 12:16:51,283 INFO L87 Difference]: Start difference. First operand 115 states. Second operand 118 states. [2018-11-23 12:16:51,286 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:51,286 INFO L93 Difference]: Finished difference Result 118 states and 133 transitions. [2018-11-23 12:16:51,286 INFO L276 IsEmpty]: Start isEmpty. Operand 118 states and 133 transitions. [2018-11-23 12:16:51,287 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:51,287 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:51,287 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:51,287 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:51,287 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 115 states. [2018-11-23 12:16:51,289 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 115 states to 115 states and 129 transitions. [2018-11-23 12:16:51,290 INFO L78 Accepts]: Start accepts. Automaton has 115 states and 129 transitions. Word has length 192 [2018-11-23 12:16:51,290 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:51,290 INFO L480 AbstractCegarLoop]: Abstraction has 115 states and 129 transitions. [2018-11-23 12:16:51,290 INFO L481 AbstractCegarLoop]: Interpolant automaton has 13 states. [2018-11-23 12:16:51,290 INFO L276 IsEmpty]: Start isEmpty. Operand 115 states and 129 transitions. [2018-11-23 12:16:51,291 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 205 [2018-11-23 12:16:51,291 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:51,292 INFO L402 BasicCegarLoop]: trace histogram [30, 30, 30, 30, 20, 20, 6, 6, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:51,292 INFO L423 AbstractCegarLoop]: === Iteration 27 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:51,292 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:51,292 INFO L82 PathProgramCache]: Analyzing trace with hash -1833262475, now seen corresponding path program 24 times [2018-11-23 12:16:51,292 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:51,292 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:51,293 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:51,293 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:16:51,293 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:51,324 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:51,772 INFO L256 TraceCheckUtils]: 0: Hoare triple {18057#true} call ULTIMATE.init(); {18057#true} is VALID [2018-11-23 12:16:51,773 INFO L273 TraceCheckUtils]: 1: Hoare triple {18057#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {18057#true} is VALID [2018-11-23 12:16:51,773 INFO L273 TraceCheckUtils]: 2: Hoare triple {18057#true} assume true; {18057#true} is VALID [2018-11-23 12:16:51,773 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {18057#true} {18057#true} #73#return; {18057#true} is VALID [2018-11-23 12:16:51,774 INFO L256 TraceCheckUtils]: 4: Hoare triple {18057#true} call #t~ret14 := main(); {18057#true} is VALID [2018-11-23 12:16:51,774 INFO L273 TraceCheckUtils]: 5: Hoare triple {18057#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {18057#true} is VALID [2018-11-23 12:16:51,774 INFO L273 TraceCheckUtils]: 6: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:51,774 INFO L273 TraceCheckUtils]: 7: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:51,775 INFO L273 TraceCheckUtils]: 8: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:51,775 INFO L273 TraceCheckUtils]: 9: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:51,775 INFO L273 TraceCheckUtils]: 10: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:51,775 INFO L273 TraceCheckUtils]: 11: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:51,775 INFO L273 TraceCheckUtils]: 12: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:51,776 INFO L273 TraceCheckUtils]: 13: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:51,776 INFO L273 TraceCheckUtils]: 14: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:51,776 INFO L273 TraceCheckUtils]: 15: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:51,776 INFO L273 TraceCheckUtils]: 16: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:51,776 INFO L273 TraceCheckUtils]: 17: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:51,776 INFO L273 TraceCheckUtils]: 18: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:51,776 INFO L273 TraceCheckUtils]: 19: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:51,777 INFO L273 TraceCheckUtils]: 20: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:51,777 INFO L273 TraceCheckUtils]: 21: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:51,777 INFO L273 TraceCheckUtils]: 22: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:51,777 INFO L273 TraceCheckUtils]: 23: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:51,777 INFO L273 TraceCheckUtils]: 24: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:51,777 INFO L273 TraceCheckUtils]: 25: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:51,777 INFO L273 TraceCheckUtils]: 26: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:51,777 INFO L273 TraceCheckUtils]: 27: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:51,777 INFO L273 TraceCheckUtils]: 28: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:51,778 INFO L273 TraceCheckUtils]: 29: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:51,778 INFO L273 TraceCheckUtils]: 30: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:51,778 INFO L273 TraceCheckUtils]: 31: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:51,778 INFO L273 TraceCheckUtils]: 32: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:51,778 INFO L273 TraceCheckUtils]: 33: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:51,778 INFO L273 TraceCheckUtils]: 34: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:51,778 INFO L273 TraceCheckUtils]: 35: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:51,778 INFO L273 TraceCheckUtils]: 36: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:51,778 INFO L273 TraceCheckUtils]: 37: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:51,778 INFO L273 TraceCheckUtils]: 38: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:51,779 INFO L273 TraceCheckUtils]: 39: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:51,779 INFO L273 TraceCheckUtils]: 40: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:51,779 INFO L273 TraceCheckUtils]: 41: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:51,779 INFO L273 TraceCheckUtils]: 42: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:51,779 INFO L273 TraceCheckUtils]: 43: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:51,779 INFO L273 TraceCheckUtils]: 44: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:51,779 INFO L273 TraceCheckUtils]: 45: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:51,779 INFO L273 TraceCheckUtils]: 46: Hoare triple {18057#true} assume !(~i~1 < 20); {18057#true} is VALID [2018-11-23 12:16:51,779 INFO L256 TraceCheckUtils]: 47: Hoare triple {18057#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {18057#true} is VALID [2018-11-23 12:16:51,780 INFO L273 TraceCheckUtils]: 48: Hoare triple {18057#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {18059#(= max_~i~0 0)} is VALID [2018-11-23 12:16:51,780 INFO L273 TraceCheckUtils]: 49: Hoare triple {18059#(= max_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18059#(= max_~i~0 0)} is VALID [2018-11-23 12:16:51,780 INFO L273 TraceCheckUtils]: 50: Hoare triple {18059#(= max_~i~0 0)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18059#(= max_~i~0 0)} is VALID [2018-11-23 12:16:51,781 INFO L273 TraceCheckUtils]: 51: Hoare triple {18059#(= max_~i~0 0)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18059#(= max_~i~0 0)} is VALID [2018-11-23 12:16:51,781 INFO L273 TraceCheckUtils]: 52: Hoare triple {18059#(= max_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18060#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:51,781 INFO L273 TraceCheckUtils]: 53: Hoare triple {18060#(<= max_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18060#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:51,782 INFO L273 TraceCheckUtils]: 54: Hoare triple {18060#(<= max_~i~0 1)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18060#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:51,782 INFO L273 TraceCheckUtils]: 55: Hoare triple {18060#(<= max_~i~0 1)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18060#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:51,783 INFO L273 TraceCheckUtils]: 56: Hoare triple {18060#(<= max_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18061#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:51,783 INFO L273 TraceCheckUtils]: 57: Hoare triple {18061#(<= max_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18061#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:51,784 INFO L273 TraceCheckUtils]: 58: Hoare triple {18061#(<= max_~i~0 2)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18061#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:51,784 INFO L273 TraceCheckUtils]: 59: Hoare triple {18061#(<= max_~i~0 2)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18061#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:51,785 INFO L273 TraceCheckUtils]: 60: Hoare triple {18061#(<= max_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18062#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:51,785 INFO L273 TraceCheckUtils]: 61: Hoare triple {18062#(<= max_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18062#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:51,786 INFO L273 TraceCheckUtils]: 62: Hoare triple {18062#(<= max_~i~0 3)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18062#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:51,786 INFO L273 TraceCheckUtils]: 63: Hoare triple {18062#(<= max_~i~0 3)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18062#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:51,787 INFO L273 TraceCheckUtils]: 64: Hoare triple {18062#(<= max_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18063#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:51,787 INFO L273 TraceCheckUtils]: 65: Hoare triple {18063#(<= max_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18063#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:51,788 INFO L273 TraceCheckUtils]: 66: Hoare triple {18063#(<= max_~i~0 4)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18063#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:51,788 INFO L273 TraceCheckUtils]: 67: Hoare triple {18063#(<= max_~i~0 4)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18063#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:51,789 INFO L273 TraceCheckUtils]: 68: Hoare triple {18063#(<= max_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18064#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:51,790 INFO L273 TraceCheckUtils]: 69: Hoare triple {18064#(<= max_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18064#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:51,790 INFO L273 TraceCheckUtils]: 70: Hoare triple {18064#(<= max_~i~0 5)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18064#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:51,791 INFO L273 TraceCheckUtils]: 71: Hoare triple {18064#(<= max_~i~0 5)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18064#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:51,791 INFO L273 TraceCheckUtils]: 72: Hoare triple {18064#(<= max_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18065#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:51,792 INFO L273 TraceCheckUtils]: 73: Hoare triple {18065#(<= max_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18065#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:51,792 INFO L273 TraceCheckUtils]: 74: Hoare triple {18065#(<= max_~i~0 6)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18065#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:51,793 INFO L273 TraceCheckUtils]: 75: Hoare triple {18065#(<= max_~i~0 6)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18065#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:51,794 INFO L273 TraceCheckUtils]: 76: Hoare triple {18065#(<= max_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18066#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:51,794 INFO L273 TraceCheckUtils]: 77: Hoare triple {18066#(<= max_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18066#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:51,795 INFO L273 TraceCheckUtils]: 78: Hoare triple {18066#(<= max_~i~0 7)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18066#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:51,795 INFO L273 TraceCheckUtils]: 79: Hoare triple {18066#(<= max_~i~0 7)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18066#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:51,796 INFO L273 TraceCheckUtils]: 80: Hoare triple {18066#(<= max_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18067#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:51,796 INFO L273 TraceCheckUtils]: 81: Hoare triple {18067#(<= max_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18067#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:51,797 INFO L273 TraceCheckUtils]: 82: Hoare triple {18067#(<= max_~i~0 8)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18067#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:51,797 INFO L273 TraceCheckUtils]: 83: Hoare triple {18067#(<= max_~i~0 8)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18067#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:51,798 INFO L273 TraceCheckUtils]: 84: Hoare triple {18067#(<= max_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18068#(<= max_~i~0 9)} is VALID [2018-11-23 12:16:51,799 INFO L273 TraceCheckUtils]: 85: Hoare triple {18068#(<= max_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18068#(<= max_~i~0 9)} is VALID [2018-11-23 12:16:51,799 INFO L273 TraceCheckUtils]: 86: Hoare triple {18068#(<= max_~i~0 9)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18068#(<= max_~i~0 9)} is VALID [2018-11-23 12:16:51,800 INFO L273 TraceCheckUtils]: 87: Hoare triple {18068#(<= max_~i~0 9)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18068#(<= max_~i~0 9)} is VALID [2018-11-23 12:16:51,800 INFO L273 TraceCheckUtils]: 88: Hoare triple {18068#(<= max_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18069#(<= max_~i~0 10)} is VALID [2018-11-23 12:16:51,801 INFO L273 TraceCheckUtils]: 89: Hoare triple {18069#(<= max_~i~0 10)} assume !(~i~0 < 20); {18058#false} is VALID [2018-11-23 12:16:51,801 INFO L273 TraceCheckUtils]: 90: Hoare triple {18058#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {18058#false} is VALID [2018-11-23 12:16:51,801 INFO L273 TraceCheckUtils]: 91: Hoare triple {18058#false} assume true; {18058#false} is VALID [2018-11-23 12:16:51,801 INFO L268 TraceCheckUtils]: 92: Hoare quadruple {18058#false} {18057#true} #77#return; {18058#false} is VALID [2018-11-23 12:16:51,802 INFO L273 TraceCheckUtils]: 93: Hoare triple {18058#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {18058#false} is VALID [2018-11-23 12:16:51,802 INFO L256 TraceCheckUtils]: 94: Hoare triple {18058#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {18057#true} is VALID [2018-11-23 12:16:51,802 INFO L273 TraceCheckUtils]: 95: Hoare triple {18057#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {18057#true} is VALID [2018-11-23 12:16:51,802 INFO L273 TraceCheckUtils]: 96: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:51,802 INFO L273 TraceCheckUtils]: 97: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:51,803 INFO L273 TraceCheckUtils]: 98: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:51,803 INFO L273 TraceCheckUtils]: 99: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:51,803 INFO L273 TraceCheckUtils]: 100: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:51,803 INFO L273 TraceCheckUtils]: 101: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:51,803 INFO L273 TraceCheckUtils]: 102: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:51,803 INFO L273 TraceCheckUtils]: 103: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:51,804 INFO L273 TraceCheckUtils]: 104: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:51,804 INFO L273 TraceCheckUtils]: 105: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:51,804 INFO L273 TraceCheckUtils]: 106: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:51,804 INFO L273 TraceCheckUtils]: 107: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:51,804 INFO L273 TraceCheckUtils]: 108: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:51,805 INFO L273 TraceCheckUtils]: 109: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:51,805 INFO L273 TraceCheckUtils]: 110: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:51,805 INFO L273 TraceCheckUtils]: 111: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:51,805 INFO L273 TraceCheckUtils]: 112: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:51,805 INFO L273 TraceCheckUtils]: 113: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:51,806 INFO L273 TraceCheckUtils]: 114: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:51,806 INFO L273 TraceCheckUtils]: 115: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:51,806 INFO L273 TraceCheckUtils]: 116: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:51,806 INFO L273 TraceCheckUtils]: 117: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:51,806 INFO L273 TraceCheckUtils]: 118: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:51,806 INFO L273 TraceCheckUtils]: 119: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:51,806 INFO L273 TraceCheckUtils]: 120: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:51,807 INFO L273 TraceCheckUtils]: 121: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:51,807 INFO L273 TraceCheckUtils]: 122: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:51,807 INFO L273 TraceCheckUtils]: 123: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:51,807 INFO L273 TraceCheckUtils]: 124: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:51,807 INFO L273 TraceCheckUtils]: 125: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:51,807 INFO L273 TraceCheckUtils]: 126: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:51,807 INFO L273 TraceCheckUtils]: 127: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:51,807 INFO L273 TraceCheckUtils]: 128: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:51,807 INFO L273 TraceCheckUtils]: 129: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:51,807 INFO L273 TraceCheckUtils]: 130: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:51,808 INFO L273 TraceCheckUtils]: 131: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:51,808 INFO L273 TraceCheckUtils]: 132: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:51,808 INFO L273 TraceCheckUtils]: 133: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:51,808 INFO L273 TraceCheckUtils]: 134: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:51,808 INFO L273 TraceCheckUtils]: 135: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:51,808 INFO L273 TraceCheckUtils]: 136: Hoare triple {18057#true} assume !(~i~0 < 20); {18057#true} is VALID [2018-11-23 12:16:51,808 INFO L273 TraceCheckUtils]: 137: Hoare triple {18057#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {18057#true} is VALID [2018-11-23 12:16:51,808 INFO L273 TraceCheckUtils]: 138: Hoare triple {18057#true} assume true; {18057#true} is VALID [2018-11-23 12:16:51,808 INFO L268 TraceCheckUtils]: 139: Hoare quadruple {18057#true} {18058#false} #79#return; {18058#false} is VALID [2018-11-23 12:16:51,808 INFO L273 TraceCheckUtils]: 140: Hoare triple {18058#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {18058#false} is VALID [2018-11-23 12:16:51,809 INFO L273 TraceCheckUtils]: 141: Hoare triple {18058#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {18058#false} is VALID [2018-11-23 12:16:51,809 INFO L273 TraceCheckUtils]: 142: Hoare triple {18058#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {18058#false} is VALID [2018-11-23 12:16:51,809 INFO L273 TraceCheckUtils]: 143: Hoare triple {18058#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {18058#false} is VALID [2018-11-23 12:16:51,809 INFO L273 TraceCheckUtils]: 144: Hoare triple {18058#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {18058#false} is VALID [2018-11-23 12:16:51,809 INFO L273 TraceCheckUtils]: 145: Hoare triple {18058#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {18058#false} is VALID [2018-11-23 12:16:51,809 INFO L273 TraceCheckUtils]: 146: Hoare triple {18058#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {18058#false} is VALID [2018-11-23 12:16:51,809 INFO L273 TraceCheckUtils]: 147: Hoare triple {18058#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {18058#false} is VALID [2018-11-23 12:16:51,809 INFO L273 TraceCheckUtils]: 148: Hoare triple {18058#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {18058#false} is VALID [2018-11-23 12:16:51,809 INFO L273 TraceCheckUtils]: 149: Hoare triple {18058#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {18058#false} is VALID [2018-11-23 12:16:51,810 INFO L273 TraceCheckUtils]: 150: Hoare triple {18058#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {18058#false} is VALID [2018-11-23 12:16:51,810 INFO L273 TraceCheckUtils]: 151: Hoare triple {18058#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {18058#false} is VALID [2018-11-23 12:16:51,810 INFO L273 TraceCheckUtils]: 152: Hoare triple {18058#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {18058#false} is VALID [2018-11-23 12:16:51,810 INFO L273 TraceCheckUtils]: 153: Hoare triple {18058#false} assume !(~i~2 < 19); {18058#false} is VALID [2018-11-23 12:16:51,810 INFO L273 TraceCheckUtils]: 154: Hoare triple {18058#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {18058#false} is VALID [2018-11-23 12:16:51,810 INFO L256 TraceCheckUtils]: 155: Hoare triple {18058#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {18057#true} is VALID [2018-11-23 12:16:51,810 INFO L273 TraceCheckUtils]: 156: Hoare triple {18057#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {18057#true} is VALID [2018-11-23 12:16:51,810 INFO L273 TraceCheckUtils]: 157: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:51,810 INFO L273 TraceCheckUtils]: 158: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:51,810 INFO L273 TraceCheckUtils]: 159: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:51,811 INFO L273 TraceCheckUtils]: 160: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:51,811 INFO L273 TraceCheckUtils]: 161: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:51,811 INFO L273 TraceCheckUtils]: 162: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:51,811 INFO L273 TraceCheckUtils]: 163: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:51,811 INFO L273 TraceCheckUtils]: 164: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:51,811 INFO L273 TraceCheckUtils]: 165: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:51,811 INFO L273 TraceCheckUtils]: 166: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:51,811 INFO L273 TraceCheckUtils]: 167: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:51,811 INFO L273 TraceCheckUtils]: 168: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:51,812 INFO L273 TraceCheckUtils]: 169: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:51,812 INFO L273 TraceCheckUtils]: 170: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:51,812 INFO L273 TraceCheckUtils]: 171: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:51,812 INFO L273 TraceCheckUtils]: 172: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:51,812 INFO L273 TraceCheckUtils]: 173: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:51,812 INFO L273 TraceCheckUtils]: 174: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:51,812 INFO L273 TraceCheckUtils]: 175: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:51,812 INFO L273 TraceCheckUtils]: 176: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:51,812 INFO L273 TraceCheckUtils]: 177: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:51,812 INFO L273 TraceCheckUtils]: 178: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:51,813 INFO L273 TraceCheckUtils]: 179: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:51,813 INFO L273 TraceCheckUtils]: 180: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:51,813 INFO L273 TraceCheckUtils]: 181: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:51,813 INFO L273 TraceCheckUtils]: 182: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:51,813 INFO L273 TraceCheckUtils]: 183: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:51,813 INFO L273 TraceCheckUtils]: 184: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:51,813 INFO L273 TraceCheckUtils]: 185: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:51,813 INFO L273 TraceCheckUtils]: 186: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:51,814 INFO L273 TraceCheckUtils]: 187: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:51,814 INFO L273 TraceCheckUtils]: 188: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:51,814 INFO L273 TraceCheckUtils]: 189: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:51,814 INFO L273 TraceCheckUtils]: 190: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:51,814 INFO L273 TraceCheckUtils]: 191: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:51,814 INFO L273 TraceCheckUtils]: 192: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:51,815 INFO L273 TraceCheckUtils]: 193: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:51,815 INFO L273 TraceCheckUtils]: 194: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:51,815 INFO L273 TraceCheckUtils]: 195: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:51,815 INFO L273 TraceCheckUtils]: 196: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:51,815 INFO L273 TraceCheckUtils]: 197: Hoare triple {18057#true} assume !(~i~0 < 20); {18057#true} is VALID [2018-11-23 12:16:51,815 INFO L273 TraceCheckUtils]: 198: Hoare triple {18057#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {18057#true} is VALID [2018-11-23 12:16:51,815 INFO L273 TraceCheckUtils]: 199: Hoare triple {18057#true} assume true; {18057#true} is VALID [2018-11-23 12:16:51,816 INFO L268 TraceCheckUtils]: 200: Hoare quadruple {18057#true} {18058#false} #81#return; {18058#false} is VALID [2018-11-23 12:16:51,816 INFO L273 TraceCheckUtils]: 201: Hoare triple {18058#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {18058#false} is VALID [2018-11-23 12:16:51,816 INFO L273 TraceCheckUtils]: 202: Hoare triple {18058#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {18058#false} is VALID [2018-11-23 12:16:51,816 INFO L273 TraceCheckUtils]: 203: Hoare triple {18058#false} assume !false; {18058#false} is VALID [2018-11-23 12:16:51,833 INFO L134 CoverageAnalysis]: Checked inductivity of 2281 backedges. 0 proven. 1038 refuted. 0 times theorem prover too weak. 1243 trivial. 0 not checked. [2018-11-23 12:16:51,834 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:16:51,834 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 26 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 26 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:16:51,842 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 12:16:52,377 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 15 check-sat command(s) [2018-11-23 12:16:52,377 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:16:52,415 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:52,417 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:52,645 INFO L256 TraceCheckUtils]: 0: Hoare triple {18057#true} call ULTIMATE.init(); {18057#true} is VALID [2018-11-23 12:16:52,645 INFO L273 TraceCheckUtils]: 1: Hoare triple {18057#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {18057#true} is VALID [2018-11-23 12:16:52,646 INFO L273 TraceCheckUtils]: 2: Hoare triple {18057#true} assume true; {18057#true} is VALID [2018-11-23 12:16:52,646 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {18057#true} {18057#true} #73#return; {18057#true} is VALID [2018-11-23 12:16:52,646 INFO L256 TraceCheckUtils]: 4: Hoare triple {18057#true} call #t~ret14 := main(); {18057#true} is VALID [2018-11-23 12:16:52,646 INFO L273 TraceCheckUtils]: 5: Hoare triple {18057#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {18057#true} is VALID [2018-11-23 12:16:52,647 INFO L273 TraceCheckUtils]: 6: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:52,647 INFO L273 TraceCheckUtils]: 7: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:52,647 INFO L273 TraceCheckUtils]: 8: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:52,647 INFO L273 TraceCheckUtils]: 9: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:52,647 INFO L273 TraceCheckUtils]: 10: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:52,648 INFO L273 TraceCheckUtils]: 11: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:52,648 INFO L273 TraceCheckUtils]: 12: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:52,648 INFO L273 TraceCheckUtils]: 13: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:52,648 INFO L273 TraceCheckUtils]: 14: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:52,648 INFO L273 TraceCheckUtils]: 15: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:52,649 INFO L273 TraceCheckUtils]: 16: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:52,649 INFO L273 TraceCheckUtils]: 17: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:52,649 INFO L273 TraceCheckUtils]: 18: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:52,649 INFO L273 TraceCheckUtils]: 19: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:52,649 INFO L273 TraceCheckUtils]: 20: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:52,649 INFO L273 TraceCheckUtils]: 21: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:52,649 INFO L273 TraceCheckUtils]: 22: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:52,649 INFO L273 TraceCheckUtils]: 23: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:52,649 INFO L273 TraceCheckUtils]: 24: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:52,650 INFO L273 TraceCheckUtils]: 25: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:52,650 INFO L273 TraceCheckUtils]: 26: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:52,650 INFO L273 TraceCheckUtils]: 27: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:52,650 INFO L273 TraceCheckUtils]: 28: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:52,650 INFO L273 TraceCheckUtils]: 29: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:52,650 INFO L273 TraceCheckUtils]: 30: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:52,650 INFO L273 TraceCheckUtils]: 31: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:52,650 INFO L273 TraceCheckUtils]: 32: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:52,650 INFO L273 TraceCheckUtils]: 33: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:52,650 INFO L273 TraceCheckUtils]: 34: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:52,651 INFO L273 TraceCheckUtils]: 35: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:52,651 INFO L273 TraceCheckUtils]: 36: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:52,651 INFO L273 TraceCheckUtils]: 37: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:52,651 INFO L273 TraceCheckUtils]: 38: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:52,651 INFO L273 TraceCheckUtils]: 39: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:52,651 INFO L273 TraceCheckUtils]: 40: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:52,651 INFO L273 TraceCheckUtils]: 41: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:52,651 INFO L273 TraceCheckUtils]: 42: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:52,651 INFO L273 TraceCheckUtils]: 43: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:52,652 INFO L273 TraceCheckUtils]: 44: Hoare triple {18057#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {18057#true} is VALID [2018-11-23 12:16:52,652 INFO L273 TraceCheckUtils]: 45: Hoare triple {18057#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {18057#true} is VALID [2018-11-23 12:16:52,652 INFO L273 TraceCheckUtils]: 46: Hoare triple {18057#true} assume !(~i~1 < 20); {18057#true} is VALID [2018-11-23 12:16:52,652 INFO L256 TraceCheckUtils]: 47: Hoare triple {18057#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {18057#true} is VALID [2018-11-23 12:16:52,652 INFO L273 TraceCheckUtils]: 48: Hoare triple {18057#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {18057#true} is VALID [2018-11-23 12:16:52,652 INFO L273 TraceCheckUtils]: 49: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:52,652 INFO L273 TraceCheckUtils]: 50: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:52,652 INFO L273 TraceCheckUtils]: 51: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:52,652 INFO L273 TraceCheckUtils]: 52: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:52,652 INFO L273 TraceCheckUtils]: 53: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:52,653 INFO L273 TraceCheckUtils]: 54: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:52,653 INFO L273 TraceCheckUtils]: 55: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:52,653 INFO L273 TraceCheckUtils]: 56: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:52,653 INFO L273 TraceCheckUtils]: 57: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:52,653 INFO L273 TraceCheckUtils]: 58: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:52,653 INFO L273 TraceCheckUtils]: 59: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:52,653 INFO L273 TraceCheckUtils]: 60: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:52,653 INFO L273 TraceCheckUtils]: 61: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:52,653 INFO L273 TraceCheckUtils]: 62: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:52,653 INFO L273 TraceCheckUtils]: 63: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:52,654 INFO L273 TraceCheckUtils]: 64: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:52,654 INFO L273 TraceCheckUtils]: 65: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:52,654 INFO L273 TraceCheckUtils]: 66: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:52,654 INFO L273 TraceCheckUtils]: 67: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:52,654 INFO L273 TraceCheckUtils]: 68: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:52,654 INFO L273 TraceCheckUtils]: 69: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:52,654 INFO L273 TraceCheckUtils]: 70: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:52,654 INFO L273 TraceCheckUtils]: 71: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:52,654 INFO L273 TraceCheckUtils]: 72: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:52,655 INFO L273 TraceCheckUtils]: 73: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:52,655 INFO L273 TraceCheckUtils]: 74: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:52,655 INFO L273 TraceCheckUtils]: 75: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:52,655 INFO L273 TraceCheckUtils]: 76: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:52,655 INFO L273 TraceCheckUtils]: 77: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:52,655 INFO L273 TraceCheckUtils]: 78: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:52,655 INFO L273 TraceCheckUtils]: 79: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:52,655 INFO L273 TraceCheckUtils]: 80: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:52,655 INFO L273 TraceCheckUtils]: 81: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:52,655 INFO L273 TraceCheckUtils]: 82: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:52,656 INFO L273 TraceCheckUtils]: 83: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:52,656 INFO L273 TraceCheckUtils]: 84: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:52,656 INFO L273 TraceCheckUtils]: 85: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:52,656 INFO L273 TraceCheckUtils]: 86: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:52,656 INFO L273 TraceCheckUtils]: 87: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:52,656 INFO L273 TraceCheckUtils]: 88: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:52,656 INFO L273 TraceCheckUtils]: 89: Hoare triple {18057#true} assume !(~i~0 < 20); {18057#true} is VALID [2018-11-23 12:16:52,656 INFO L273 TraceCheckUtils]: 90: Hoare triple {18057#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {18057#true} is VALID [2018-11-23 12:16:52,657 INFO L273 TraceCheckUtils]: 91: Hoare triple {18057#true} assume true; {18057#true} is VALID [2018-11-23 12:16:52,657 INFO L268 TraceCheckUtils]: 92: Hoare quadruple {18057#true} {18057#true} #77#return; {18057#true} is VALID [2018-11-23 12:16:52,657 INFO L273 TraceCheckUtils]: 93: Hoare triple {18057#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {18057#true} is VALID [2018-11-23 12:16:52,657 INFO L256 TraceCheckUtils]: 94: Hoare triple {18057#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {18057#true} is VALID [2018-11-23 12:16:52,657 INFO L273 TraceCheckUtils]: 95: Hoare triple {18057#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {18057#true} is VALID [2018-11-23 12:16:52,657 INFO L273 TraceCheckUtils]: 96: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:52,658 INFO L273 TraceCheckUtils]: 97: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:52,658 INFO L273 TraceCheckUtils]: 98: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:52,658 INFO L273 TraceCheckUtils]: 99: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:52,658 INFO L273 TraceCheckUtils]: 100: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:52,658 INFO L273 TraceCheckUtils]: 101: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:52,658 INFO L273 TraceCheckUtils]: 102: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:52,659 INFO L273 TraceCheckUtils]: 103: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:52,659 INFO L273 TraceCheckUtils]: 104: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:52,659 INFO L273 TraceCheckUtils]: 105: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:52,659 INFO L273 TraceCheckUtils]: 106: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:52,659 INFO L273 TraceCheckUtils]: 107: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:52,660 INFO L273 TraceCheckUtils]: 108: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:52,660 INFO L273 TraceCheckUtils]: 109: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:52,660 INFO L273 TraceCheckUtils]: 110: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:52,660 INFO L273 TraceCheckUtils]: 111: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:52,660 INFO L273 TraceCheckUtils]: 112: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:52,661 INFO L273 TraceCheckUtils]: 113: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:52,661 INFO L273 TraceCheckUtils]: 114: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:52,661 INFO L273 TraceCheckUtils]: 115: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:52,661 INFO L273 TraceCheckUtils]: 116: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:52,661 INFO L273 TraceCheckUtils]: 117: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:52,661 INFO L273 TraceCheckUtils]: 118: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:52,662 INFO L273 TraceCheckUtils]: 119: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:52,662 INFO L273 TraceCheckUtils]: 120: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:52,662 INFO L273 TraceCheckUtils]: 121: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:52,662 INFO L273 TraceCheckUtils]: 122: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:52,662 INFO L273 TraceCheckUtils]: 123: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:52,662 INFO L273 TraceCheckUtils]: 124: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:52,663 INFO L273 TraceCheckUtils]: 125: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:52,663 INFO L273 TraceCheckUtils]: 126: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:52,663 INFO L273 TraceCheckUtils]: 127: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:52,663 INFO L273 TraceCheckUtils]: 128: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:52,663 INFO L273 TraceCheckUtils]: 129: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:52,663 INFO L273 TraceCheckUtils]: 130: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:52,664 INFO L273 TraceCheckUtils]: 131: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:52,664 INFO L273 TraceCheckUtils]: 132: Hoare triple {18057#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18057#true} is VALID [2018-11-23 12:16:52,664 INFO L273 TraceCheckUtils]: 133: Hoare triple {18057#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18057#true} is VALID [2018-11-23 12:16:52,664 INFO L273 TraceCheckUtils]: 134: Hoare triple {18057#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18057#true} is VALID [2018-11-23 12:16:52,664 INFO L273 TraceCheckUtils]: 135: Hoare triple {18057#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18057#true} is VALID [2018-11-23 12:16:52,664 INFO L273 TraceCheckUtils]: 136: Hoare triple {18057#true} assume !(~i~0 < 20); {18057#true} is VALID [2018-11-23 12:16:52,665 INFO L273 TraceCheckUtils]: 137: Hoare triple {18057#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {18057#true} is VALID [2018-11-23 12:16:52,665 INFO L273 TraceCheckUtils]: 138: Hoare triple {18057#true} assume true; {18057#true} is VALID [2018-11-23 12:16:52,665 INFO L268 TraceCheckUtils]: 139: Hoare quadruple {18057#true} {18057#true} #79#return; {18057#true} is VALID [2018-11-23 12:16:52,680 INFO L273 TraceCheckUtils]: 140: Hoare triple {18057#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {18493#(<= main_~i~2 0)} is VALID [2018-11-23 12:16:52,689 INFO L273 TraceCheckUtils]: 141: Hoare triple {18493#(<= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {18493#(<= main_~i~2 0)} is VALID [2018-11-23 12:16:52,704 INFO L273 TraceCheckUtils]: 142: Hoare triple {18493#(<= main_~i~2 0)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {18500#(<= main_~i~2 1)} is VALID [2018-11-23 12:16:52,712 INFO L273 TraceCheckUtils]: 143: Hoare triple {18500#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {18500#(<= main_~i~2 1)} is VALID [2018-11-23 12:16:52,725 INFO L273 TraceCheckUtils]: 144: Hoare triple {18500#(<= main_~i~2 1)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {18507#(<= main_~i~2 2)} is VALID [2018-11-23 12:16:52,726 INFO L273 TraceCheckUtils]: 145: Hoare triple {18507#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {18507#(<= main_~i~2 2)} is VALID [2018-11-23 12:16:52,728 INFO L273 TraceCheckUtils]: 146: Hoare triple {18507#(<= main_~i~2 2)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {18514#(<= main_~i~2 3)} is VALID [2018-11-23 12:16:52,728 INFO L273 TraceCheckUtils]: 147: Hoare triple {18514#(<= main_~i~2 3)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {18514#(<= main_~i~2 3)} is VALID [2018-11-23 12:16:52,730 INFO L273 TraceCheckUtils]: 148: Hoare triple {18514#(<= main_~i~2 3)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {18521#(<= main_~i~2 4)} is VALID [2018-11-23 12:16:52,730 INFO L273 TraceCheckUtils]: 149: Hoare triple {18521#(<= main_~i~2 4)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {18521#(<= main_~i~2 4)} is VALID [2018-11-23 12:16:52,732 INFO L273 TraceCheckUtils]: 150: Hoare triple {18521#(<= main_~i~2 4)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {18528#(<= main_~i~2 5)} is VALID [2018-11-23 12:16:52,732 INFO L273 TraceCheckUtils]: 151: Hoare triple {18528#(<= main_~i~2 5)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {18528#(<= main_~i~2 5)} is VALID [2018-11-23 12:16:52,734 INFO L273 TraceCheckUtils]: 152: Hoare triple {18528#(<= main_~i~2 5)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {18535#(<= main_~i~2 6)} is VALID [2018-11-23 12:16:52,734 INFO L273 TraceCheckUtils]: 153: Hoare triple {18535#(<= main_~i~2 6)} assume !(~i~2 < 19); {18058#false} is VALID [2018-11-23 12:16:52,734 INFO L273 TraceCheckUtils]: 154: Hoare triple {18058#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {18058#false} is VALID [2018-11-23 12:16:52,734 INFO L256 TraceCheckUtils]: 155: Hoare triple {18058#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {18058#false} is VALID [2018-11-23 12:16:52,734 INFO L273 TraceCheckUtils]: 156: Hoare triple {18058#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {18058#false} is VALID [2018-11-23 12:16:52,735 INFO L273 TraceCheckUtils]: 157: Hoare triple {18058#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18058#false} is VALID [2018-11-23 12:16:52,735 INFO L273 TraceCheckUtils]: 158: Hoare triple {18058#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18058#false} is VALID [2018-11-23 12:16:52,735 INFO L273 TraceCheckUtils]: 159: Hoare triple {18058#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18058#false} is VALID [2018-11-23 12:16:52,735 INFO L273 TraceCheckUtils]: 160: Hoare triple {18058#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18058#false} is VALID [2018-11-23 12:16:52,735 INFO L273 TraceCheckUtils]: 161: Hoare triple {18058#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18058#false} is VALID [2018-11-23 12:16:52,735 INFO L273 TraceCheckUtils]: 162: Hoare triple {18058#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18058#false} is VALID [2018-11-23 12:16:52,735 INFO L273 TraceCheckUtils]: 163: Hoare triple {18058#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18058#false} is VALID [2018-11-23 12:16:52,735 INFO L273 TraceCheckUtils]: 164: Hoare triple {18058#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18058#false} is VALID [2018-11-23 12:16:52,735 INFO L273 TraceCheckUtils]: 165: Hoare triple {18058#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18058#false} is VALID [2018-11-23 12:16:52,736 INFO L273 TraceCheckUtils]: 166: Hoare triple {18058#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18058#false} is VALID [2018-11-23 12:16:52,736 INFO L273 TraceCheckUtils]: 167: Hoare triple {18058#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18058#false} is VALID [2018-11-23 12:16:52,736 INFO L273 TraceCheckUtils]: 168: Hoare triple {18058#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18058#false} is VALID [2018-11-23 12:16:52,736 INFO L273 TraceCheckUtils]: 169: Hoare triple {18058#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18058#false} is VALID [2018-11-23 12:16:52,736 INFO L273 TraceCheckUtils]: 170: Hoare triple {18058#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18058#false} is VALID [2018-11-23 12:16:52,736 INFO L273 TraceCheckUtils]: 171: Hoare triple {18058#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18058#false} is VALID [2018-11-23 12:16:52,736 INFO L273 TraceCheckUtils]: 172: Hoare triple {18058#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18058#false} is VALID [2018-11-23 12:16:52,736 INFO L273 TraceCheckUtils]: 173: Hoare triple {18058#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18058#false} is VALID [2018-11-23 12:16:52,736 INFO L273 TraceCheckUtils]: 174: Hoare triple {18058#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18058#false} is VALID [2018-11-23 12:16:52,736 INFO L273 TraceCheckUtils]: 175: Hoare triple {18058#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18058#false} is VALID [2018-11-23 12:16:52,737 INFO L273 TraceCheckUtils]: 176: Hoare triple {18058#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18058#false} is VALID [2018-11-23 12:16:52,737 INFO L273 TraceCheckUtils]: 177: Hoare triple {18058#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18058#false} is VALID [2018-11-23 12:16:52,737 INFO L273 TraceCheckUtils]: 178: Hoare triple {18058#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18058#false} is VALID [2018-11-23 12:16:52,737 INFO L273 TraceCheckUtils]: 179: Hoare triple {18058#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18058#false} is VALID [2018-11-23 12:16:52,737 INFO L273 TraceCheckUtils]: 180: Hoare triple {18058#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18058#false} is VALID [2018-11-23 12:16:52,737 INFO L273 TraceCheckUtils]: 181: Hoare triple {18058#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18058#false} is VALID [2018-11-23 12:16:52,737 INFO L273 TraceCheckUtils]: 182: Hoare triple {18058#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18058#false} is VALID [2018-11-23 12:16:52,737 INFO L273 TraceCheckUtils]: 183: Hoare triple {18058#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18058#false} is VALID [2018-11-23 12:16:52,737 INFO L273 TraceCheckUtils]: 184: Hoare triple {18058#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18058#false} is VALID [2018-11-23 12:16:52,738 INFO L273 TraceCheckUtils]: 185: Hoare triple {18058#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18058#false} is VALID [2018-11-23 12:16:52,738 INFO L273 TraceCheckUtils]: 186: Hoare triple {18058#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18058#false} is VALID [2018-11-23 12:16:52,738 INFO L273 TraceCheckUtils]: 187: Hoare triple {18058#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18058#false} is VALID [2018-11-23 12:16:52,738 INFO L273 TraceCheckUtils]: 188: Hoare triple {18058#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18058#false} is VALID [2018-11-23 12:16:52,738 INFO L273 TraceCheckUtils]: 189: Hoare triple {18058#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18058#false} is VALID [2018-11-23 12:16:52,738 INFO L273 TraceCheckUtils]: 190: Hoare triple {18058#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18058#false} is VALID [2018-11-23 12:16:52,738 INFO L273 TraceCheckUtils]: 191: Hoare triple {18058#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18058#false} is VALID [2018-11-23 12:16:52,738 INFO L273 TraceCheckUtils]: 192: Hoare triple {18058#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18058#false} is VALID [2018-11-23 12:16:52,738 INFO L273 TraceCheckUtils]: 193: Hoare triple {18058#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {18058#false} is VALID [2018-11-23 12:16:52,738 INFO L273 TraceCheckUtils]: 194: Hoare triple {18058#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {18058#false} is VALID [2018-11-23 12:16:52,739 INFO L273 TraceCheckUtils]: 195: Hoare triple {18058#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {18058#false} is VALID [2018-11-23 12:16:52,739 INFO L273 TraceCheckUtils]: 196: Hoare triple {18058#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {18058#false} is VALID [2018-11-23 12:16:52,739 INFO L273 TraceCheckUtils]: 197: Hoare triple {18058#false} assume !(~i~0 < 20); {18058#false} is VALID [2018-11-23 12:16:52,739 INFO L273 TraceCheckUtils]: 198: Hoare triple {18058#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {18058#false} is VALID [2018-11-23 12:16:52,739 INFO L273 TraceCheckUtils]: 199: Hoare triple {18058#false} assume true; {18058#false} is VALID [2018-11-23 12:16:52,739 INFO L268 TraceCheckUtils]: 200: Hoare quadruple {18058#false} {18058#false} #81#return; {18058#false} is VALID [2018-11-23 12:16:52,739 INFO L273 TraceCheckUtils]: 201: Hoare triple {18058#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {18058#false} is VALID [2018-11-23 12:16:52,739 INFO L273 TraceCheckUtils]: 202: Hoare triple {18058#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {18058#false} is VALID [2018-11-23 12:16:52,740 INFO L273 TraceCheckUtils]: 203: Hoare triple {18058#false} assume !false; {18058#false} is VALID [2018-11-23 12:16:52,754 INFO L134 CoverageAnalysis]: Checked inductivity of 2281 backedges. 850 proven. 36 refuted. 0 times theorem prover too weak. 1395 trivial. 0 not checked. [2018-11-23 12:16:52,775 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:16:52,775 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 9] total 20 [2018-11-23 12:16:52,776 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 204 [2018-11-23 12:16:52,776 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:52,776 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states. [2018-11-23 12:16:53,295 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:16:53,295 INFO L459 AbstractCegarLoop]: Interpolant automaton has 20 states [2018-11-23 12:16:53,296 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2018-11-23 12:16:53,296 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=113, Invalid=267, Unknown=0, NotChecked=0, Total=380 [2018-11-23 12:16:53,296 INFO L87 Difference]: Start difference. First operand 115 states and 129 transitions. Second operand 20 states. [2018-11-23 12:16:54,739 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:54,739 INFO L93 Difference]: Finished difference Result 192 states and 225 transitions. [2018-11-23 12:16:54,739 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2018-11-23 12:16:54,740 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 204 [2018-11-23 12:16:54,740 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:54,740 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2018-11-23 12:16:54,741 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 129 transitions. [2018-11-23 12:16:54,742 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2018-11-23 12:16:54,743 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 129 transitions. [2018-11-23 12:16:54,743 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states and 129 transitions. [2018-11-23 12:16:55,404 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 129 edges. 129 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:16:55,407 INFO L225 Difference]: With dead ends: 192 [2018-11-23 12:16:55,407 INFO L226 Difference]: Without dead ends: 125 [2018-11-23 12:16:55,408 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 216 GetRequests, 198 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 70 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=113, Invalid=267, Unknown=0, NotChecked=0, Total=380 [2018-11-23 12:16:55,408 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 125 states. [2018-11-23 12:16:55,508 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 125 to 121. [2018-11-23 12:16:55,508 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:55,508 INFO L82 GeneralOperation]: Start isEquivalent. First operand 125 states. Second operand 121 states. [2018-11-23 12:16:55,508 INFO L74 IsIncluded]: Start isIncluded. First operand 125 states. Second operand 121 states. [2018-11-23 12:16:55,508 INFO L87 Difference]: Start difference. First operand 125 states. Second operand 121 states. [2018-11-23 12:16:55,511 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:55,511 INFO L93 Difference]: Finished difference Result 125 states and 141 transitions. [2018-11-23 12:16:55,511 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 141 transitions. [2018-11-23 12:16:55,511 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:55,512 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:55,512 INFO L74 IsIncluded]: Start isIncluded. First operand 121 states. Second operand 125 states. [2018-11-23 12:16:55,512 INFO L87 Difference]: Start difference. First operand 121 states. Second operand 125 states. [2018-11-23 12:16:55,514 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:55,514 INFO L93 Difference]: Finished difference Result 125 states and 141 transitions. [2018-11-23 12:16:55,515 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 141 transitions. [2018-11-23 12:16:55,515 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:55,515 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:55,515 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:55,515 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:55,516 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 121 states. [2018-11-23 12:16:55,518 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 121 states to 121 states and 136 transitions. [2018-11-23 12:16:55,519 INFO L78 Accepts]: Start accepts. Automaton has 121 states and 136 transitions. Word has length 204 [2018-11-23 12:16:55,519 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:55,519 INFO L480 AbstractCegarLoop]: Abstraction has 121 states and 136 transitions. [2018-11-23 12:16:55,519 INFO L481 AbstractCegarLoop]: Interpolant automaton has 20 states. [2018-11-23 12:16:55,519 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 136 transitions. [2018-11-23 12:16:55,520 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 219 [2018-11-23 12:16:55,521 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:55,521 INFO L402 BasicCegarLoop]: trace histogram [33, 33, 33, 33, 20, 20, 7, 7, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:55,521 INFO L423 AbstractCegarLoop]: === Iteration 28 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:55,521 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:55,521 INFO L82 PathProgramCache]: Analyzing trace with hash 368002414, now seen corresponding path program 25 times [2018-11-23 12:16:55,522 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:55,522 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:55,522 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:55,523 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:16:55,523 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:55,560 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:56,220 INFO L256 TraceCheckUtils]: 0: Hoare triple {19370#true} call ULTIMATE.init(); {19370#true} is VALID [2018-11-23 12:16:56,220 INFO L273 TraceCheckUtils]: 1: Hoare triple {19370#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {19370#true} is VALID [2018-11-23 12:16:56,220 INFO L273 TraceCheckUtils]: 2: Hoare triple {19370#true} assume true; {19370#true} is VALID [2018-11-23 12:16:56,220 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {19370#true} {19370#true} #73#return; {19370#true} is VALID [2018-11-23 12:16:56,220 INFO L256 TraceCheckUtils]: 4: Hoare triple {19370#true} call #t~ret14 := main(); {19370#true} is VALID [2018-11-23 12:16:56,220 INFO L273 TraceCheckUtils]: 5: Hoare triple {19370#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {19370#true} is VALID [2018-11-23 12:16:56,221 INFO L273 TraceCheckUtils]: 6: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,221 INFO L273 TraceCheckUtils]: 7: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,221 INFO L273 TraceCheckUtils]: 8: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,221 INFO L273 TraceCheckUtils]: 9: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,221 INFO L273 TraceCheckUtils]: 10: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,222 INFO L273 TraceCheckUtils]: 11: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,222 INFO L273 TraceCheckUtils]: 12: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,222 INFO L273 TraceCheckUtils]: 13: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,222 INFO L273 TraceCheckUtils]: 14: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,223 INFO L273 TraceCheckUtils]: 15: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,223 INFO L273 TraceCheckUtils]: 16: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,223 INFO L273 TraceCheckUtils]: 17: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,223 INFO L273 TraceCheckUtils]: 18: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,224 INFO L273 TraceCheckUtils]: 19: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,224 INFO L273 TraceCheckUtils]: 20: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,224 INFO L273 TraceCheckUtils]: 21: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,224 INFO L273 TraceCheckUtils]: 22: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,224 INFO L273 TraceCheckUtils]: 23: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,224 INFO L273 TraceCheckUtils]: 24: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,224 INFO L273 TraceCheckUtils]: 25: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,224 INFO L273 TraceCheckUtils]: 26: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,224 INFO L273 TraceCheckUtils]: 27: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,224 INFO L273 TraceCheckUtils]: 28: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,225 INFO L273 TraceCheckUtils]: 29: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,225 INFO L273 TraceCheckUtils]: 30: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,225 INFO L273 TraceCheckUtils]: 31: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,225 INFO L273 TraceCheckUtils]: 32: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,225 INFO L273 TraceCheckUtils]: 33: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,225 INFO L273 TraceCheckUtils]: 34: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,225 INFO L273 TraceCheckUtils]: 35: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,225 INFO L273 TraceCheckUtils]: 36: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,225 INFO L273 TraceCheckUtils]: 37: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,226 INFO L273 TraceCheckUtils]: 38: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,226 INFO L273 TraceCheckUtils]: 39: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,226 INFO L273 TraceCheckUtils]: 40: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,226 INFO L273 TraceCheckUtils]: 41: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,226 INFO L273 TraceCheckUtils]: 42: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,226 INFO L273 TraceCheckUtils]: 43: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,226 INFO L273 TraceCheckUtils]: 44: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,226 INFO L273 TraceCheckUtils]: 45: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,226 INFO L273 TraceCheckUtils]: 46: Hoare triple {19370#true} assume !(~i~1 < 20); {19370#true} is VALID [2018-11-23 12:16:56,226 INFO L256 TraceCheckUtils]: 47: Hoare triple {19370#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {19370#true} is VALID [2018-11-23 12:16:56,227 INFO L273 TraceCheckUtils]: 48: Hoare triple {19370#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {19372#(= max_~i~0 0)} is VALID [2018-11-23 12:16:56,227 INFO L273 TraceCheckUtils]: 49: Hoare triple {19372#(= max_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19372#(= max_~i~0 0)} is VALID [2018-11-23 12:16:56,227 INFO L273 TraceCheckUtils]: 50: Hoare triple {19372#(= max_~i~0 0)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19372#(= max_~i~0 0)} is VALID [2018-11-23 12:16:56,228 INFO L273 TraceCheckUtils]: 51: Hoare triple {19372#(= max_~i~0 0)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19372#(= max_~i~0 0)} is VALID [2018-11-23 12:16:56,228 INFO L273 TraceCheckUtils]: 52: Hoare triple {19372#(= max_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19373#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:56,228 INFO L273 TraceCheckUtils]: 53: Hoare triple {19373#(<= max_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19373#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:56,229 INFO L273 TraceCheckUtils]: 54: Hoare triple {19373#(<= max_~i~0 1)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19373#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:56,229 INFO L273 TraceCheckUtils]: 55: Hoare triple {19373#(<= max_~i~0 1)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19373#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:56,229 INFO L273 TraceCheckUtils]: 56: Hoare triple {19373#(<= max_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19374#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:56,230 INFO L273 TraceCheckUtils]: 57: Hoare triple {19374#(<= max_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19374#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:56,230 INFO L273 TraceCheckUtils]: 58: Hoare triple {19374#(<= max_~i~0 2)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19374#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:56,230 INFO L273 TraceCheckUtils]: 59: Hoare triple {19374#(<= max_~i~0 2)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19374#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:56,231 INFO L273 TraceCheckUtils]: 60: Hoare triple {19374#(<= max_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19375#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:56,231 INFO L273 TraceCheckUtils]: 61: Hoare triple {19375#(<= max_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19375#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:56,232 INFO L273 TraceCheckUtils]: 62: Hoare triple {19375#(<= max_~i~0 3)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19375#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:56,232 INFO L273 TraceCheckUtils]: 63: Hoare triple {19375#(<= max_~i~0 3)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19375#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:56,233 INFO L273 TraceCheckUtils]: 64: Hoare triple {19375#(<= max_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19376#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:56,234 INFO L273 TraceCheckUtils]: 65: Hoare triple {19376#(<= max_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19376#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:56,234 INFO L273 TraceCheckUtils]: 66: Hoare triple {19376#(<= max_~i~0 4)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19376#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:56,235 INFO L273 TraceCheckUtils]: 67: Hoare triple {19376#(<= max_~i~0 4)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19376#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:56,235 INFO L273 TraceCheckUtils]: 68: Hoare triple {19376#(<= max_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19377#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:56,236 INFO L273 TraceCheckUtils]: 69: Hoare triple {19377#(<= max_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19377#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:56,236 INFO L273 TraceCheckUtils]: 70: Hoare triple {19377#(<= max_~i~0 5)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19377#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:56,237 INFO L273 TraceCheckUtils]: 71: Hoare triple {19377#(<= max_~i~0 5)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19377#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:56,238 INFO L273 TraceCheckUtils]: 72: Hoare triple {19377#(<= max_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19378#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:56,238 INFO L273 TraceCheckUtils]: 73: Hoare triple {19378#(<= max_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19378#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:56,239 INFO L273 TraceCheckUtils]: 74: Hoare triple {19378#(<= max_~i~0 6)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19378#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:56,239 INFO L273 TraceCheckUtils]: 75: Hoare triple {19378#(<= max_~i~0 6)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19378#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:56,240 INFO L273 TraceCheckUtils]: 76: Hoare triple {19378#(<= max_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19379#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:56,240 INFO L273 TraceCheckUtils]: 77: Hoare triple {19379#(<= max_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19379#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:56,241 INFO L273 TraceCheckUtils]: 78: Hoare triple {19379#(<= max_~i~0 7)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19379#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:56,241 INFO L273 TraceCheckUtils]: 79: Hoare triple {19379#(<= max_~i~0 7)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19379#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:56,242 INFO L273 TraceCheckUtils]: 80: Hoare triple {19379#(<= max_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19380#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:56,242 INFO L273 TraceCheckUtils]: 81: Hoare triple {19380#(<= max_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19380#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:56,243 INFO L273 TraceCheckUtils]: 82: Hoare triple {19380#(<= max_~i~0 8)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19380#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:56,243 INFO L273 TraceCheckUtils]: 83: Hoare triple {19380#(<= max_~i~0 8)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19380#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:56,244 INFO L273 TraceCheckUtils]: 84: Hoare triple {19380#(<= max_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19381#(<= max_~i~0 9)} is VALID [2018-11-23 12:16:56,245 INFO L273 TraceCheckUtils]: 85: Hoare triple {19381#(<= max_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19381#(<= max_~i~0 9)} is VALID [2018-11-23 12:16:56,245 INFO L273 TraceCheckUtils]: 86: Hoare triple {19381#(<= max_~i~0 9)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19381#(<= max_~i~0 9)} is VALID [2018-11-23 12:16:56,246 INFO L273 TraceCheckUtils]: 87: Hoare triple {19381#(<= max_~i~0 9)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19381#(<= max_~i~0 9)} is VALID [2018-11-23 12:16:56,246 INFO L273 TraceCheckUtils]: 88: Hoare triple {19381#(<= max_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19382#(<= max_~i~0 10)} is VALID [2018-11-23 12:16:56,247 INFO L273 TraceCheckUtils]: 89: Hoare triple {19382#(<= max_~i~0 10)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19382#(<= max_~i~0 10)} is VALID [2018-11-23 12:16:56,247 INFO L273 TraceCheckUtils]: 90: Hoare triple {19382#(<= max_~i~0 10)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19382#(<= max_~i~0 10)} is VALID [2018-11-23 12:16:56,248 INFO L273 TraceCheckUtils]: 91: Hoare triple {19382#(<= max_~i~0 10)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19382#(<= max_~i~0 10)} is VALID [2018-11-23 12:16:56,249 INFO L273 TraceCheckUtils]: 92: Hoare triple {19382#(<= max_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19383#(<= max_~i~0 11)} is VALID [2018-11-23 12:16:56,249 INFO L273 TraceCheckUtils]: 93: Hoare triple {19383#(<= max_~i~0 11)} assume !(~i~0 < 20); {19371#false} is VALID [2018-11-23 12:16:56,250 INFO L273 TraceCheckUtils]: 94: Hoare triple {19371#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {19371#false} is VALID [2018-11-23 12:16:56,250 INFO L273 TraceCheckUtils]: 95: Hoare triple {19371#false} assume true; {19371#false} is VALID [2018-11-23 12:16:56,250 INFO L268 TraceCheckUtils]: 96: Hoare quadruple {19371#false} {19370#true} #77#return; {19371#false} is VALID [2018-11-23 12:16:56,250 INFO L273 TraceCheckUtils]: 97: Hoare triple {19371#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {19371#false} is VALID [2018-11-23 12:16:56,250 INFO L256 TraceCheckUtils]: 98: Hoare triple {19371#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {19370#true} is VALID [2018-11-23 12:16:56,251 INFO L273 TraceCheckUtils]: 99: Hoare triple {19370#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {19370#true} is VALID [2018-11-23 12:16:56,251 INFO L273 TraceCheckUtils]: 100: Hoare triple {19370#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19370#true} is VALID [2018-11-23 12:16:56,251 INFO L273 TraceCheckUtils]: 101: Hoare triple {19370#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19370#true} is VALID [2018-11-23 12:16:56,251 INFO L273 TraceCheckUtils]: 102: Hoare triple {19370#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19370#true} is VALID [2018-11-23 12:16:56,251 INFO L273 TraceCheckUtils]: 103: Hoare triple {19370#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19370#true} is VALID [2018-11-23 12:16:56,251 INFO L273 TraceCheckUtils]: 104: Hoare triple {19370#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19370#true} is VALID [2018-11-23 12:16:56,252 INFO L273 TraceCheckUtils]: 105: Hoare triple {19370#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19370#true} is VALID [2018-11-23 12:16:56,252 INFO L273 TraceCheckUtils]: 106: Hoare triple {19370#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19370#true} is VALID [2018-11-23 12:16:56,252 INFO L273 TraceCheckUtils]: 107: Hoare triple {19370#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19370#true} is VALID [2018-11-23 12:16:56,252 INFO L273 TraceCheckUtils]: 108: Hoare triple {19370#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19370#true} is VALID [2018-11-23 12:16:56,252 INFO L273 TraceCheckUtils]: 109: Hoare triple {19370#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19370#true} is VALID [2018-11-23 12:16:56,253 INFO L273 TraceCheckUtils]: 110: Hoare triple {19370#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19370#true} is VALID [2018-11-23 12:16:56,253 INFO L273 TraceCheckUtils]: 111: Hoare triple {19370#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19370#true} is VALID [2018-11-23 12:16:56,253 INFO L273 TraceCheckUtils]: 112: Hoare triple {19370#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19370#true} is VALID [2018-11-23 12:16:56,253 INFO L273 TraceCheckUtils]: 113: Hoare triple {19370#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19370#true} is VALID [2018-11-23 12:16:56,253 INFO L273 TraceCheckUtils]: 114: Hoare triple {19370#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19370#true} is VALID [2018-11-23 12:16:56,253 INFO L273 TraceCheckUtils]: 115: Hoare triple {19370#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19370#true} is VALID [2018-11-23 12:16:56,254 INFO L273 TraceCheckUtils]: 116: Hoare triple {19370#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19370#true} is VALID [2018-11-23 12:16:56,254 INFO L273 TraceCheckUtils]: 117: Hoare triple {19370#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19370#true} is VALID [2018-11-23 12:16:56,254 INFO L273 TraceCheckUtils]: 118: Hoare triple {19370#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19370#true} is VALID [2018-11-23 12:16:56,254 INFO L273 TraceCheckUtils]: 119: Hoare triple {19370#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19370#true} is VALID [2018-11-23 12:16:56,254 INFO L273 TraceCheckUtils]: 120: Hoare triple {19370#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19370#true} is VALID [2018-11-23 12:16:56,254 INFO L273 TraceCheckUtils]: 121: Hoare triple {19370#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19370#true} is VALID [2018-11-23 12:16:56,255 INFO L273 TraceCheckUtils]: 122: Hoare triple {19370#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19370#true} is VALID [2018-11-23 12:16:56,255 INFO L273 TraceCheckUtils]: 123: Hoare triple {19370#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19370#true} is VALID [2018-11-23 12:16:56,255 INFO L273 TraceCheckUtils]: 124: Hoare triple {19370#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19370#true} is VALID [2018-11-23 12:16:56,255 INFO L273 TraceCheckUtils]: 125: Hoare triple {19370#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19370#true} is VALID [2018-11-23 12:16:56,255 INFO L273 TraceCheckUtils]: 126: Hoare triple {19370#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19370#true} is VALID [2018-11-23 12:16:56,256 INFO L273 TraceCheckUtils]: 127: Hoare triple {19370#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19370#true} is VALID [2018-11-23 12:16:56,256 INFO L273 TraceCheckUtils]: 128: Hoare triple {19370#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19370#true} is VALID [2018-11-23 12:16:56,256 INFO L273 TraceCheckUtils]: 129: Hoare triple {19370#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19370#true} is VALID [2018-11-23 12:16:56,256 INFO L273 TraceCheckUtils]: 130: Hoare triple {19370#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19370#true} is VALID [2018-11-23 12:16:56,256 INFO L273 TraceCheckUtils]: 131: Hoare triple {19370#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19370#true} is VALID [2018-11-23 12:16:56,256 INFO L273 TraceCheckUtils]: 132: Hoare triple {19370#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19370#true} is VALID [2018-11-23 12:16:56,256 INFO L273 TraceCheckUtils]: 133: Hoare triple {19370#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19370#true} is VALID [2018-11-23 12:16:56,256 INFO L273 TraceCheckUtils]: 134: Hoare triple {19370#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19370#true} is VALID [2018-11-23 12:16:56,256 INFO L273 TraceCheckUtils]: 135: Hoare triple {19370#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19370#true} is VALID [2018-11-23 12:16:56,256 INFO L273 TraceCheckUtils]: 136: Hoare triple {19370#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19370#true} is VALID [2018-11-23 12:16:56,257 INFO L273 TraceCheckUtils]: 137: Hoare triple {19370#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19370#true} is VALID [2018-11-23 12:16:56,257 INFO L273 TraceCheckUtils]: 138: Hoare triple {19370#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19370#true} is VALID [2018-11-23 12:16:56,257 INFO L273 TraceCheckUtils]: 139: Hoare triple {19370#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19370#true} is VALID [2018-11-23 12:16:56,257 INFO L273 TraceCheckUtils]: 140: Hoare triple {19370#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19370#true} is VALID [2018-11-23 12:16:56,257 INFO L273 TraceCheckUtils]: 141: Hoare triple {19370#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19370#true} is VALID [2018-11-23 12:16:56,257 INFO L273 TraceCheckUtils]: 142: Hoare triple {19370#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19370#true} is VALID [2018-11-23 12:16:56,257 INFO L273 TraceCheckUtils]: 143: Hoare triple {19370#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19370#true} is VALID [2018-11-23 12:16:56,257 INFO L273 TraceCheckUtils]: 144: Hoare triple {19370#true} assume !(~i~0 < 20); {19370#true} is VALID [2018-11-23 12:16:56,258 INFO L273 TraceCheckUtils]: 145: Hoare triple {19370#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {19370#true} is VALID [2018-11-23 12:16:56,258 INFO L273 TraceCheckUtils]: 146: Hoare triple {19370#true} assume true; {19370#true} is VALID [2018-11-23 12:16:56,258 INFO L268 TraceCheckUtils]: 147: Hoare quadruple {19370#true} {19371#false} #79#return; {19371#false} is VALID [2018-11-23 12:16:56,258 INFO L273 TraceCheckUtils]: 148: Hoare triple {19371#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {19371#false} is VALID [2018-11-23 12:16:56,258 INFO L273 TraceCheckUtils]: 149: Hoare triple {19371#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {19371#false} is VALID [2018-11-23 12:16:56,258 INFO L273 TraceCheckUtils]: 150: Hoare triple {19371#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {19371#false} is VALID [2018-11-23 12:16:56,258 INFO L273 TraceCheckUtils]: 151: Hoare triple {19371#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {19371#false} is VALID [2018-11-23 12:16:56,258 INFO L273 TraceCheckUtils]: 152: Hoare triple {19371#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {19371#false} is VALID [2018-11-23 12:16:56,258 INFO L273 TraceCheckUtils]: 153: Hoare triple {19371#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {19371#false} is VALID [2018-11-23 12:16:56,259 INFO L273 TraceCheckUtils]: 154: Hoare triple {19371#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {19371#false} is VALID [2018-11-23 12:16:56,259 INFO L273 TraceCheckUtils]: 155: Hoare triple {19371#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {19371#false} is VALID [2018-11-23 12:16:56,259 INFO L273 TraceCheckUtils]: 156: Hoare triple {19371#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {19371#false} is VALID [2018-11-23 12:16:56,259 INFO L273 TraceCheckUtils]: 157: Hoare triple {19371#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {19371#false} is VALID [2018-11-23 12:16:56,259 INFO L273 TraceCheckUtils]: 158: Hoare triple {19371#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {19371#false} is VALID [2018-11-23 12:16:56,259 INFO L273 TraceCheckUtils]: 159: Hoare triple {19371#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {19371#false} is VALID [2018-11-23 12:16:56,259 INFO L273 TraceCheckUtils]: 160: Hoare triple {19371#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {19371#false} is VALID [2018-11-23 12:16:56,259 INFO L273 TraceCheckUtils]: 161: Hoare triple {19371#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {19371#false} is VALID [2018-11-23 12:16:56,259 INFO L273 TraceCheckUtils]: 162: Hoare triple {19371#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {19371#false} is VALID [2018-11-23 12:16:56,259 INFO L273 TraceCheckUtils]: 163: Hoare triple {19371#false} assume !(~i~2 < 19); {19371#false} is VALID [2018-11-23 12:16:56,260 INFO L273 TraceCheckUtils]: 164: Hoare triple {19371#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {19371#false} is VALID [2018-11-23 12:16:56,260 INFO L256 TraceCheckUtils]: 165: Hoare triple {19371#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {19370#true} is VALID [2018-11-23 12:16:56,260 INFO L273 TraceCheckUtils]: 166: Hoare triple {19370#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {19370#true} is VALID [2018-11-23 12:16:56,260 INFO L273 TraceCheckUtils]: 167: Hoare triple {19370#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19370#true} is VALID [2018-11-23 12:16:56,260 INFO L273 TraceCheckUtils]: 168: Hoare triple {19370#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19370#true} is VALID [2018-11-23 12:16:56,260 INFO L273 TraceCheckUtils]: 169: Hoare triple {19370#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19370#true} is VALID [2018-11-23 12:16:56,260 INFO L273 TraceCheckUtils]: 170: Hoare triple {19370#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19370#true} is VALID [2018-11-23 12:16:56,260 INFO L273 TraceCheckUtils]: 171: Hoare triple {19370#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19370#true} is VALID [2018-11-23 12:16:56,260 INFO L273 TraceCheckUtils]: 172: Hoare triple {19370#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19370#true} is VALID [2018-11-23 12:16:56,260 INFO L273 TraceCheckUtils]: 173: Hoare triple {19370#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19370#true} is VALID [2018-11-23 12:16:56,261 INFO L273 TraceCheckUtils]: 174: Hoare triple {19370#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19370#true} is VALID [2018-11-23 12:16:56,261 INFO L273 TraceCheckUtils]: 175: Hoare triple {19370#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19370#true} is VALID [2018-11-23 12:16:56,261 INFO L273 TraceCheckUtils]: 176: Hoare triple {19370#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19370#true} is VALID [2018-11-23 12:16:56,261 INFO L273 TraceCheckUtils]: 177: Hoare triple {19370#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19370#true} is VALID [2018-11-23 12:16:56,261 INFO L273 TraceCheckUtils]: 178: Hoare triple {19370#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19370#true} is VALID [2018-11-23 12:16:56,261 INFO L273 TraceCheckUtils]: 179: Hoare triple {19370#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19370#true} is VALID [2018-11-23 12:16:56,261 INFO L273 TraceCheckUtils]: 180: Hoare triple {19370#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19370#true} is VALID [2018-11-23 12:16:56,261 INFO L273 TraceCheckUtils]: 181: Hoare triple {19370#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19370#true} is VALID [2018-11-23 12:16:56,261 INFO L273 TraceCheckUtils]: 182: Hoare triple {19370#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19370#true} is VALID [2018-11-23 12:16:56,262 INFO L273 TraceCheckUtils]: 183: Hoare triple {19370#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19370#true} is VALID [2018-11-23 12:16:56,262 INFO L273 TraceCheckUtils]: 184: Hoare triple {19370#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19370#true} is VALID [2018-11-23 12:16:56,262 INFO L273 TraceCheckUtils]: 185: Hoare triple {19370#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19370#true} is VALID [2018-11-23 12:16:56,262 INFO L273 TraceCheckUtils]: 186: Hoare triple {19370#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19370#true} is VALID [2018-11-23 12:16:56,262 INFO L273 TraceCheckUtils]: 187: Hoare triple {19370#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19370#true} is VALID [2018-11-23 12:16:56,262 INFO L273 TraceCheckUtils]: 188: Hoare triple {19370#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19370#true} is VALID [2018-11-23 12:16:56,262 INFO L273 TraceCheckUtils]: 189: Hoare triple {19370#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19370#true} is VALID [2018-11-23 12:16:56,262 INFO L273 TraceCheckUtils]: 190: Hoare triple {19370#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19370#true} is VALID [2018-11-23 12:16:56,262 INFO L273 TraceCheckUtils]: 191: Hoare triple {19370#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19370#true} is VALID [2018-11-23 12:16:56,262 INFO L273 TraceCheckUtils]: 192: Hoare triple {19370#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19370#true} is VALID [2018-11-23 12:16:56,263 INFO L273 TraceCheckUtils]: 193: Hoare triple {19370#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19370#true} is VALID [2018-11-23 12:16:56,263 INFO L273 TraceCheckUtils]: 194: Hoare triple {19370#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19370#true} is VALID [2018-11-23 12:16:56,263 INFO L273 TraceCheckUtils]: 195: Hoare triple {19370#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19370#true} is VALID [2018-11-23 12:16:56,263 INFO L273 TraceCheckUtils]: 196: Hoare triple {19370#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19370#true} is VALID [2018-11-23 12:16:56,263 INFO L273 TraceCheckUtils]: 197: Hoare triple {19370#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19370#true} is VALID [2018-11-23 12:16:56,263 INFO L273 TraceCheckUtils]: 198: Hoare triple {19370#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19370#true} is VALID [2018-11-23 12:16:56,263 INFO L273 TraceCheckUtils]: 199: Hoare triple {19370#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19370#true} is VALID [2018-11-23 12:16:56,263 INFO L273 TraceCheckUtils]: 200: Hoare triple {19370#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19370#true} is VALID [2018-11-23 12:16:56,263 INFO L273 TraceCheckUtils]: 201: Hoare triple {19370#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19370#true} is VALID [2018-11-23 12:16:56,263 INFO L273 TraceCheckUtils]: 202: Hoare triple {19370#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19370#true} is VALID [2018-11-23 12:16:56,264 INFO L273 TraceCheckUtils]: 203: Hoare triple {19370#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19370#true} is VALID [2018-11-23 12:16:56,264 INFO L273 TraceCheckUtils]: 204: Hoare triple {19370#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19370#true} is VALID [2018-11-23 12:16:56,264 INFO L273 TraceCheckUtils]: 205: Hoare triple {19370#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19370#true} is VALID [2018-11-23 12:16:56,264 INFO L273 TraceCheckUtils]: 206: Hoare triple {19370#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19370#true} is VALID [2018-11-23 12:16:56,264 INFO L273 TraceCheckUtils]: 207: Hoare triple {19370#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19370#true} is VALID [2018-11-23 12:16:56,264 INFO L273 TraceCheckUtils]: 208: Hoare triple {19370#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19370#true} is VALID [2018-11-23 12:16:56,264 INFO L273 TraceCheckUtils]: 209: Hoare triple {19370#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19370#true} is VALID [2018-11-23 12:16:56,264 INFO L273 TraceCheckUtils]: 210: Hoare triple {19370#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19370#true} is VALID [2018-11-23 12:16:56,264 INFO L273 TraceCheckUtils]: 211: Hoare triple {19370#true} assume !(~i~0 < 20); {19370#true} is VALID [2018-11-23 12:16:56,264 INFO L273 TraceCheckUtils]: 212: Hoare triple {19370#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {19370#true} is VALID [2018-11-23 12:16:56,265 INFO L273 TraceCheckUtils]: 213: Hoare triple {19370#true} assume true; {19370#true} is VALID [2018-11-23 12:16:56,265 INFO L268 TraceCheckUtils]: 214: Hoare quadruple {19370#true} {19371#false} #81#return; {19371#false} is VALID [2018-11-23 12:16:56,265 INFO L273 TraceCheckUtils]: 215: Hoare triple {19371#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {19371#false} is VALID [2018-11-23 12:16:56,265 INFO L273 TraceCheckUtils]: 216: Hoare triple {19371#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {19371#false} is VALID [2018-11-23 12:16:56,265 INFO L273 TraceCheckUtils]: 217: Hoare triple {19371#false} assume !false; {19371#false} is VALID [2018-11-23 12:16:56,283 INFO L134 CoverageAnalysis]: Checked inductivity of 2675 backedges. 0 proven. 1251 refuted. 0 times theorem prover too weak. 1424 trivial. 0 not checked. [2018-11-23 12:16:56,283 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:16:56,283 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 27 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 27 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:16:56,292 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:16:56,416 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:56,465 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:56,467 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:56,697 INFO L256 TraceCheckUtils]: 0: Hoare triple {19370#true} call ULTIMATE.init(); {19370#true} is VALID [2018-11-23 12:16:56,697 INFO L273 TraceCheckUtils]: 1: Hoare triple {19370#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {19370#true} is VALID [2018-11-23 12:16:56,698 INFO L273 TraceCheckUtils]: 2: Hoare triple {19370#true} assume true; {19370#true} is VALID [2018-11-23 12:16:56,698 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {19370#true} {19370#true} #73#return; {19370#true} is VALID [2018-11-23 12:16:56,698 INFO L256 TraceCheckUtils]: 4: Hoare triple {19370#true} call #t~ret14 := main(); {19370#true} is VALID [2018-11-23 12:16:56,698 INFO L273 TraceCheckUtils]: 5: Hoare triple {19370#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {19370#true} is VALID [2018-11-23 12:16:56,699 INFO L273 TraceCheckUtils]: 6: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,699 INFO L273 TraceCheckUtils]: 7: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,699 INFO L273 TraceCheckUtils]: 8: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,699 INFO L273 TraceCheckUtils]: 9: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,700 INFO L273 TraceCheckUtils]: 10: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,700 INFO L273 TraceCheckUtils]: 11: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,700 INFO L273 TraceCheckUtils]: 12: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,700 INFO L273 TraceCheckUtils]: 13: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,700 INFO L273 TraceCheckUtils]: 14: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,700 INFO L273 TraceCheckUtils]: 15: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,700 INFO L273 TraceCheckUtils]: 16: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,701 INFO L273 TraceCheckUtils]: 17: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,701 INFO L273 TraceCheckUtils]: 18: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,701 INFO L273 TraceCheckUtils]: 19: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,701 INFO L273 TraceCheckUtils]: 20: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,701 INFO L273 TraceCheckUtils]: 21: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,702 INFO L273 TraceCheckUtils]: 22: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,702 INFO L273 TraceCheckUtils]: 23: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,702 INFO L273 TraceCheckUtils]: 24: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,702 INFO L273 TraceCheckUtils]: 25: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,702 INFO L273 TraceCheckUtils]: 26: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,702 INFO L273 TraceCheckUtils]: 27: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,702 INFO L273 TraceCheckUtils]: 28: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,703 INFO L273 TraceCheckUtils]: 29: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,703 INFO L273 TraceCheckUtils]: 30: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,703 INFO L273 TraceCheckUtils]: 31: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,703 INFO L273 TraceCheckUtils]: 32: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,703 INFO L273 TraceCheckUtils]: 33: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,703 INFO L273 TraceCheckUtils]: 34: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,703 INFO L273 TraceCheckUtils]: 35: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,704 INFO L273 TraceCheckUtils]: 36: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,704 INFO L273 TraceCheckUtils]: 37: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,704 INFO L273 TraceCheckUtils]: 38: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,704 INFO L273 TraceCheckUtils]: 39: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,704 INFO L273 TraceCheckUtils]: 40: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,704 INFO L273 TraceCheckUtils]: 41: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,704 INFO L273 TraceCheckUtils]: 42: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,704 INFO L273 TraceCheckUtils]: 43: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,705 INFO L273 TraceCheckUtils]: 44: Hoare triple {19370#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {19370#true} is VALID [2018-11-23 12:16:56,705 INFO L273 TraceCheckUtils]: 45: Hoare triple {19370#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {19370#true} is VALID [2018-11-23 12:16:56,705 INFO L273 TraceCheckUtils]: 46: Hoare triple {19370#true} assume !(~i~1 < 20); {19370#true} is VALID [2018-11-23 12:16:56,705 INFO L256 TraceCheckUtils]: 47: Hoare triple {19370#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {19370#true} is VALID [2018-11-23 12:16:56,706 INFO L273 TraceCheckUtils]: 48: Hoare triple {19370#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {19531#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:56,706 INFO L273 TraceCheckUtils]: 49: Hoare triple {19531#(<= max_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19531#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:56,706 INFO L273 TraceCheckUtils]: 50: Hoare triple {19531#(<= max_~i~0 0)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19531#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:56,707 INFO L273 TraceCheckUtils]: 51: Hoare triple {19531#(<= max_~i~0 0)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19531#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:56,709 INFO L273 TraceCheckUtils]: 52: Hoare triple {19531#(<= max_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19373#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:56,709 INFO L273 TraceCheckUtils]: 53: Hoare triple {19373#(<= max_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19373#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:56,709 INFO L273 TraceCheckUtils]: 54: Hoare triple {19373#(<= max_~i~0 1)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19373#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:56,710 INFO L273 TraceCheckUtils]: 55: Hoare triple {19373#(<= max_~i~0 1)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19373#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:56,710 INFO L273 TraceCheckUtils]: 56: Hoare triple {19373#(<= max_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19374#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:56,711 INFO L273 TraceCheckUtils]: 57: Hoare triple {19374#(<= max_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19374#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:56,711 INFO L273 TraceCheckUtils]: 58: Hoare triple {19374#(<= max_~i~0 2)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19374#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:56,711 INFO L273 TraceCheckUtils]: 59: Hoare triple {19374#(<= max_~i~0 2)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19374#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:56,712 INFO L273 TraceCheckUtils]: 60: Hoare triple {19374#(<= max_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19375#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:56,713 INFO L273 TraceCheckUtils]: 61: Hoare triple {19375#(<= max_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19375#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:56,713 INFO L273 TraceCheckUtils]: 62: Hoare triple {19375#(<= max_~i~0 3)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19375#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:56,714 INFO L273 TraceCheckUtils]: 63: Hoare triple {19375#(<= max_~i~0 3)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19375#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:56,715 INFO L273 TraceCheckUtils]: 64: Hoare triple {19375#(<= max_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19376#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:56,715 INFO L273 TraceCheckUtils]: 65: Hoare triple {19376#(<= max_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19376#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:56,716 INFO L273 TraceCheckUtils]: 66: Hoare triple {19376#(<= max_~i~0 4)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19376#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:56,716 INFO L273 TraceCheckUtils]: 67: Hoare triple {19376#(<= max_~i~0 4)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19376#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:56,717 INFO L273 TraceCheckUtils]: 68: Hoare triple {19376#(<= max_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19377#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:56,718 INFO L273 TraceCheckUtils]: 69: Hoare triple {19377#(<= max_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19377#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:56,718 INFO L273 TraceCheckUtils]: 70: Hoare triple {19377#(<= max_~i~0 5)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19377#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:56,719 INFO L273 TraceCheckUtils]: 71: Hoare triple {19377#(<= max_~i~0 5)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19377#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:56,720 INFO L273 TraceCheckUtils]: 72: Hoare triple {19377#(<= max_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19378#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:56,720 INFO L273 TraceCheckUtils]: 73: Hoare triple {19378#(<= max_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19378#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:56,721 INFO L273 TraceCheckUtils]: 74: Hoare triple {19378#(<= max_~i~0 6)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19378#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:56,721 INFO L273 TraceCheckUtils]: 75: Hoare triple {19378#(<= max_~i~0 6)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19378#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:56,722 INFO L273 TraceCheckUtils]: 76: Hoare triple {19378#(<= max_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19379#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:56,723 INFO L273 TraceCheckUtils]: 77: Hoare triple {19379#(<= max_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19379#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:56,723 INFO L273 TraceCheckUtils]: 78: Hoare triple {19379#(<= max_~i~0 7)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19379#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:56,724 INFO L273 TraceCheckUtils]: 79: Hoare triple {19379#(<= max_~i~0 7)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19379#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:56,725 INFO L273 TraceCheckUtils]: 80: Hoare triple {19379#(<= max_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19380#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:56,725 INFO L273 TraceCheckUtils]: 81: Hoare triple {19380#(<= max_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19380#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:56,726 INFO L273 TraceCheckUtils]: 82: Hoare triple {19380#(<= max_~i~0 8)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19380#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:56,726 INFO L273 TraceCheckUtils]: 83: Hoare triple {19380#(<= max_~i~0 8)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19380#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:56,727 INFO L273 TraceCheckUtils]: 84: Hoare triple {19380#(<= max_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19381#(<= max_~i~0 9)} is VALID [2018-11-23 12:16:56,728 INFO L273 TraceCheckUtils]: 85: Hoare triple {19381#(<= max_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19381#(<= max_~i~0 9)} is VALID [2018-11-23 12:16:56,728 INFO L273 TraceCheckUtils]: 86: Hoare triple {19381#(<= max_~i~0 9)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19381#(<= max_~i~0 9)} is VALID [2018-11-23 12:16:56,729 INFO L273 TraceCheckUtils]: 87: Hoare triple {19381#(<= max_~i~0 9)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19381#(<= max_~i~0 9)} is VALID [2018-11-23 12:16:56,730 INFO L273 TraceCheckUtils]: 88: Hoare triple {19381#(<= max_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19382#(<= max_~i~0 10)} is VALID [2018-11-23 12:16:56,730 INFO L273 TraceCheckUtils]: 89: Hoare triple {19382#(<= max_~i~0 10)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19382#(<= max_~i~0 10)} is VALID [2018-11-23 12:16:56,731 INFO L273 TraceCheckUtils]: 90: Hoare triple {19382#(<= max_~i~0 10)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19382#(<= max_~i~0 10)} is VALID [2018-11-23 12:16:56,731 INFO L273 TraceCheckUtils]: 91: Hoare triple {19382#(<= max_~i~0 10)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19382#(<= max_~i~0 10)} is VALID [2018-11-23 12:16:56,732 INFO L273 TraceCheckUtils]: 92: Hoare triple {19382#(<= max_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19383#(<= max_~i~0 11)} is VALID [2018-11-23 12:16:56,733 INFO L273 TraceCheckUtils]: 93: Hoare triple {19383#(<= max_~i~0 11)} assume !(~i~0 < 20); {19371#false} is VALID [2018-11-23 12:16:56,733 INFO L273 TraceCheckUtils]: 94: Hoare triple {19371#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {19371#false} is VALID [2018-11-23 12:16:56,733 INFO L273 TraceCheckUtils]: 95: Hoare triple {19371#false} assume true; {19371#false} is VALID [2018-11-23 12:16:56,734 INFO L268 TraceCheckUtils]: 96: Hoare quadruple {19371#false} {19370#true} #77#return; {19371#false} is VALID [2018-11-23 12:16:56,734 INFO L273 TraceCheckUtils]: 97: Hoare triple {19371#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {19371#false} is VALID [2018-11-23 12:16:56,734 INFO L256 TraceCheckUtils]: 98: Hoare triple {19371#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {19371#false} is VALID [2018-11-23 12:16:56,734 INFO L273 TraceCheckUtils]: 99: Hoare triple {19371#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {19371#false} is VALID [2018-11-23 12:16:56,735 INFO L273 TraceCheckUtils]: 100: Hoare triple {19371#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19371#false} is VALID [2018-11-23 12:16:56,735 INFO L273 TraceCheckUtils]: 101: Hoare triple {19371#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19371#false} is VALID [2018-11-23 12:16:56,735 INFO L273 TraceCheckUtils]: 102: Hoare triple {19371#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19371#false} is VALID [2018-11-23 12:16:56,735 INFO L273 TraceCheckUtils]: 103: Hoare triple {19371#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19371#false} is VALID [2018-11-23 12:16:56,735 INFO L273 TraceCheckUtils]: 104: Hoare triple {19371#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19371#false} is VALID [2018-11-23 12:16:56,736 INFO L273 TraceCheckUtils]: 105: Hoare triple {19371#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19371#false} is VALID [2018-11-23 12:16:56,736 INFO L273 TraceCheckUtils]: 106: Hoare triple {19371#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19371#false} is VALID [2018-11-23 12:16:56,736 INFO L273 TraceCheckUtils]: 107: Hoare triple {19371#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19371#false} is VALID [2018-11-23 12:16:56,736 INFO L273 TraceCheckUtils]: 108: Hoare triple {19371#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19371#false} is VALID [2018-11-23 12:16:56,737 INFO L273 TraceCheckUtils]: 109: Hoare triple {19371#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19371#false} is VALID [2018-11-23 12:16:56,737 INFO L273 TraceCheckUtils]: 110: Hoare triple {19371#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19371#false} is VALID [2018-11-23 12:16:56,737 INFO L273 TraceCheckUtils]: 111: Hoare triple {19371#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19371#false} is VALID [2018-11-23 12:16:56,737 INFO L273 TraceCheckUtils]: 112: Hoare triple {19371#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19371#false} is VALID [2018-11-23 12:16:56,737 INFO L273 TraceCheckUtils]: 113: Hoare triple {19371#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19371#false} is VALID [2018-11-23 12:16:56,737 INFO L273 TraceCheckUtils]: 114: Hoare triple {19371#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19371#false} is VALID [2018-11-23 12:16:56,737 INFO L273 TraceCheckUtils]: 115: Hoare triple {19371#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19371#false} is VALID [2018-11-23 12:16:56,738 INFO L273 TraceCheckUtils]: 116: Hoare triple {19371#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19371#false} is VALID [2018-11-23 12:16:56,738 INFO L273 TraceCheckUtils]: 117: Hoare triple {19371#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19371#false} is VALID [2018-11-23 12:16:56,738 INFO L273 TraceCheckUtils]: 118: Hoare triple {19371#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19371#false} is VALID [2018-11-23 12:16:56,738 INFO L273 TraceCheckUtils]: 119: Hoare triple {19371#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19371#false} is VALID [2018-11-23 12:16:56,738 INFO L273 TraceCheckUtils]: 120: Hoare triple {19371#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19371#false} is VALID [2018-11-23 12:16:56,738 INFO L273 TraceCheckUtils]: 121: Hoare triple {19371#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19371#false} is VALID [2018-11-23 12:16:56,738 INFO L273 TraceCheckUtils]: 122: Hoare triple {19371#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19371#false} is VALID [2018-11-23 12:16:56,738 INFO L273 TraceCheckUtils]: 123: Hoare triple {19371#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19371#false} is VALID [2018-11-23 12:16:56,739 INFO L273 TraceCheckUtils]: 124: Hoare triple {19371#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19371#false} is VALID [2018-11-23 12:16:56,739 INFO L273 TraceCheckUtils]: 125: Hoare triple {19371#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19371#false} is VALID [2018-11-23 12:16:56,739 INFO L273 TraceCheckUtils]: 126: Hoare triple {19371#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19371#false} is VALID [2018-11-23 12:16:56,739 INFO L273 TraceCheckUtils]: 127: Hoare triple {19371#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19371#false} is VALID [2018-11-23 12:16:56,739 INFO L273 TraceCheckUtils]: 128: Hoare triple {19371#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19371#false} is VALID [2018-11-23 12:16:56,739 INFO L273 TraceCheckUtils]: 129: Hoare triple {19371#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19371#false} is VALID [2018-11-23 12:16:56,739 INFO L273 TraceCheckUtils]: 130: Hoare triple {19371#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19371#false} is VALID [2018-11-23 12:16:56,740 INFO L273 TraceCheckUtils]: 131: Hoare triple {19371#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19371#false} is VALID [2018-11-23 12:16:56,740 INFO L273 TraceCheckUtils]: 132: Hoare triple {19371#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19371#false} is VALID [2018-11-23 12:16:56,740 INFO L273 TraceCheckUtils]: 133: Hoare triple {19371#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19371#false} is VALID [2018-11-23 12:16:56,740 INFO L273 TraceCheckUtils]: 134: Hoare triple {19371#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19371#false} is VALID [2018-11-23 12:16:56,740 INFO L273 TraceCheckUtils]: 135: Hoare triple {19371#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19371#false} is VALID [2018-11-23 12:16:56,740 INFO L273 TraceCheckUtils]: 136: Hoare triple {19371#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19371#false} is VALID [2018-11-23 12:16:56,740 INFO L273 TraceCheckUtils]: 137: Hoare triple {19371#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19371#false} is VALID [2018-11-23 12:16:56,740 INFO L273 TraceCheckUtils]: 138: Hoare triple {19371#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19371#false} is VALID [2018-11-23 12:16:56,741 INFO L273 TraceCheckUtils]: 139: Hoare triple {19371#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19371#false} is VALID [2018-11-23 12:16:56,741 INFO L273 TraceCheckUtils]: 140: Hoare triple {19371#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19371#false} is VALID [2018-11-23 12:16:56,741 INFO L273 TraceCheckUtils]: 141: Hoare triple {19371#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19371#false} is VALID [2018-11-23 12:16:56,741 INFO L273 TraceCheckUtils]: 142: Hoare triple {19371#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19371#false} is VALID [2018-11-23 12:16:56,741 INFO L273 TraceCheckUtils]: 143: Hoare triple {19371#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19371#false} is VALID [2018-11-23 12:16:56,741 INFO L273 TraceCheckUtils]: 144: Hoare triple {19371#false} assume !(~i~0 < 20); {19371#false} is VALID [2018-11-23 12:16:56,741 INFO L273 TraceCheckUtils]: 145: Hoare triple {19371#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {19371#false} is VALID [2018-11-23 12:16:56,742 INFO L273 TraceCheckUtils]: 146: Hoare triple {19371#false} assume true; {19371#false} is VALID [2018-11-23 12:16:56,742 INFO L268 TraceCheckUtils]: 147: Hoare quadruple {19371#false} {19371#false} #79#return; {19371#false} is VALID [2018-11-23 12:16:56,742 INFO L273 TraceCheckUtils]: 148: Hoare triple {19371#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {19371#false} is VALID [2018-11-23 12:16:56,742 INFO L273 TraceCheckUtils]: 149: Hoare triple {19371#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {19371#false} is VALID [2018-11-23 12:16:56,742 INFO L273 TraceCheckUtils]: 150: Hoare triple {19371#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {19371#false} is VALID [2018-11-23 12:16:56,742 INFO L273 TraceCheckUtils]: 151: Hoare triple {19371#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {19371#false} is VALID [2018-11-23 12:16:56,742 INFO L273 TraceCheckUtils]: 152: Hoare triple {19371#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {19371#false} is VALID [2018-11-23 12:16:56,743 INFO L273 TraceCheckUtils]: 153: Hoare triple {19371#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {19371#false} is VALID [2018-11-23 12:16:56,743 INFO L273 TraceCheckUtils]: 154: Hoare triple {19371#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {19371#false} is VALID [2018-11-23 12:16:56,743 INFO L273 TraceCheckUtils]: 155: Hoare triple {19371#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {19371#false} is VALID [2018-11-23 12:16:56,743 INFO L273 TraceCheckUtils]: 156: Hoare triple {19371#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {19371#false} is VALID [2018-11-23 12:16:56,743 INFO L273 TraceCheckUtils]: 157: Hoare triple {19371#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {19371#false} is VALID [2018-11-23 12:16:56,743 INFO L273 TraceCheckUtils]: 158: Hoare triple {19371#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {19371#false} is VALID [2018-11-23 12:16:56,743 INFO L273 TraceCheckUtils]: 159: Hoare triple {19371#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {19371#false} is VALID [2018-11-23 12:16:56,743 INFO L273 TraceCheckUtils]: 160: Hoare triple {19371#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {19371#false} is VALID [2018-11-23 12:16:56,744 INFO L273 TraceCheckUtils]: 161: Hoare triple {19371#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {19371#false} is VALID [2018-11-23 12:16:56,744 INFO L273 TraceCheckUtils]: 162: Hoare triple {19371#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {19371#false} is VALID [2018-11-23 12:16:56,744 INFO L273 TraceCheckUtils]: 163: Hoare triple {19371#false} assume !(~i~2 < 19); {19371#false} is VALID [2018-11-23 12:16:56,744 INFO L273 TraceCheckUtils]: 164: Hoare triple {19371#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {19371#false} is VALID [2018-11-23 12:16:56,744 INFO L256 TraceCheckUtils]: 165: Hoare triple {19371#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {19371#false} is VALID [2018-11-23 12:16:56,744 INFO L273 TraceCheckUtils]: 166: Hoare triple {19371#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {19371#false} is VALID [2018-11-23 12:16:56,744 INFO L273 TraceCheckUtils]: 167: Hoare triple {19371#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19371#false} is VALID [2018-11-23 12:16:56,745 INFO L273 TraceCheckUtils]: 168: Hoare triple {19371#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19371#false} is VALID [2018-11-23 12:16:56,745 INFO L273 TraceCheckUtils]: 169: Hoare triple {19371#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19371#false} is VALID [2018-11-23 12:16:56,745 INFO L273 TraceCheckUtils]: 170: Hoare triple {19371#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19371#false} is VALID [2018-11-23 12:16:56,745 INFO L273 TraceCheckUtils]: 171: Hoare triple {19371#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19371#false} is VALID [2018-11-23 12:16:56,745 INFO L273 TraceCheckUtils]: 172: Hoare triple {19371#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19371#false} is VALID [2018-11-23 12:16:56,745 INFO L273 TraceCheckUtils]: 173: Hoare triple {19371#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19371#false} is VALID [2018-11-23 12:16:56,745 INFO L273 TraceCheckUtils]: 174: Hoare triple {19371#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19371#false} is VALID [2018-11-23 12:16:56,746 INFO L273 TraceCheckUtils]: 175: Hoare triple {19371#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19371#false} is VALID [2018-11-23 12:16:56,746 INFO L273 TraceCheckUtils]: 176: Hoare triple {19371#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19371#false} is VALID [2018-11-23 12:16:56,746 INFO L273 TraceCheckUtils]: 177: Hoare triple {19371#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19371#false} is VALID [2018-11-23 12:16:56,746 INFO L273 TraceCheckUtils]: 178: Hoare triple {19371#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19371#false} is VALID [2018-11-23 12:16:56,746 INFO L273 TraceCheckUtils]: 179: Hoare triple {19371#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19371#false} is VALID [2018-11-23 12:16:56,746 INFO L273 TraceCheckUtils]: 180: Hoare triple {19371#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19371#false} is VALID [2018-11-23 12:16:56,746 INFO L273 TraceCheckUtils]: 181: Hoare triple {19371#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19371#false} is VALID [2018-11-23 12:16:56,746 INFO L273 TraceCheckUtils]: 182: Hoare triple {19371#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19371#false} is VALID [2018-11-23 12:16:56,747 INFO L273 TraceCheckUtils]: 183: Hoare triple {19371#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19371#false} is VALID [2018-11-23 12:16:56,747 INFO L273 TraceCheckUtils]: 184: Hoare triple {19371#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19371#false} is VALID [2018-11-23 12:16:56,747 INFO L273 TraceCheckUtils]: 185: Hoare triple {19371#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19371#false} is VALID [2018-11-23 12:16:56,747 INFO L273 TraceCheckUtils]: 186: Hoare triple {19371#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19371#false} is VALID [2018-11-23 12:16:56,747 INFO L273 TraceCheckUtils]: 187: Hoare triple {19371#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19371#false} is VALID [2018-11-23 12:16:56,747 INFO L273 TraceCheckUtils]: 188: Hoare triple {19371#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19371#false} is VALID [2018-11-23 12:16:56,747 INFO L273 TraceCheckUtils]: 189: Hoare triple {19371#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19371#false} is VALID [2018-11-23 12:16:56,748 INFO L273 TraceCheckUtils]: 190: Hoare triple {19371#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19371#false} is VALID [2018-11-23 12:16:56,748 INFO L273 TraceCheckUtils]: 191: Hoare triple {19371#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19371#false} is VALID [2018-11-23 12:16:56,748 INFO L273 TraceCheckUtils]: 192: Hoare triple {19371#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19371#false} is VALID [2018-11-23 12:16:56,748 INFO L273 TraceCheckUtils]: 193: Hoare triple {19371#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19371#false} is VALID [2018-11-23 12:16:56,748 INFO L273 TraceCheckUtils]: 194: Hoare triple {19371#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19371#false} is VALID [2018-11-23 12:16:56,748 INFO L273 TraceCheckUtils]: 195: Hoare triple {19371#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19371#false} is VALID [2018-11-23 12:16:56,748 INFO L273 TraceCheckUtils]: 196: Hoare triple {19371#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19371#false} is VALID [2018-11-23 12:16:56,748 INFO L273 TraceCheckUtils]: 197: Hoare triple {19371#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19371#false} is VALID [2018-11-23 12:16:56,749 INFO L273 TraceCheckUtils]: 198: Hoare triple {19371#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19371#false} is VALID [2018-11-23 12:16:56,749 INFO L273 TraceCheckUtils]: 199: Hoare triple {19371#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19371#false} is VALID [2018-11-23 12:16:56,749 INFO L273 TraceCheckUtils]: 200: Hoare triple {19371#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19371#false} is VALID [2018-11-23 12:16:56,749 INFO L273 TraceCheckUtils]: 201: Hoare triple {19371#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19371#false} is VALID [2018-11-23 12:16:56,749 INFO L273 TraceCheckUtils]: 202: Hoare triple {19371#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19371#false} is VALID [2018-11-23 12:16:56,749 INFO L273 TraceCheckUtils]: 203: Hoare triple {19371#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19371#false} is VALID [2018-11-23 12:16:56,771 INFO L273 TraceCheckUtils]: 204: Hoare triple {19371#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19371#false} is VALID [2018-11-23 12:16:56,771 INFO L273 TraceCheckUtils]: 205: Hoare triple {19371#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19371#false} is VALID [2018-11-23 12:16:56,771 INFO L273 TraceCheckUtils]: 206: Hoare triple {19371#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19371#false} is VALID [2018-11-23 12:16:56,772 INFO L273 TraceCheckUtils]: 207: Hoare triple {19371#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {19371#false} is VALID [2018-11-23 12:16:56,772 INFO L273 TraceCheckUtils]: 208: Hoare triple {19371#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {19371#false} is VALID [2018-11-23 12:16:56,772 INFO L273 TraceCheckUtils]: 209: Hoare triple {19371#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {19371#false} is VALID [2018-11-23 12:16:56,772 INFO L273 TraceCheckUtils]: 210: Hoare triple {19371#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {19371#false} is VALID [2018-11-23 12:16:56,772 INFO L273 TraceCheckUtils]: 211: Hoare triple {19371#false} assume !(~i~0 < 20); {19371#false} is VALID [2018-11-23 12:16:56,772 INFO L273 TraceCheckUtils]: 212: Hoare triple {19371#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {19371#false} is VALID [2018-11-23 12:16:56,772 INFO L273 TraceCheckUtils]: 213: Hoare triple {19371#false} assume true; {19371#false} is VALID [2018-11-23 12:16:56,772 INFO L268 TraceCheckUtils]: 214: Hoare quadruple {19371#false} {19371#false} #81#return; {19371#false} is VALID [2018-11-23 12:16:56,773 INFO L273 TraceCheckUtils]: 215: Hoare triple {19371#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {19371#false} is VALID [2018-11-23 12:16:56,773 INFO L273 TraceCheckUtils]: 216: Hoare triple {19371#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {19371#false} is VALID [2018-11-23 12:16:56,773 INFO L273 TraceCheckUtils]: 217: Hoare triple {19371#false} assume !false; {19371#false} is VALID [2018-11-23 12:16:56,794 INFO L134 CoverageAnalysis]: Checked inductivity of 2675 backedges. 1016 proven. 231 refuted. 0 times theorem prover too weak. 1428 trivial. 0 not checked. [2018-11-23 12:16:56,813 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:16:56,813 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 15 [2018-11-23 12:16:56,814 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 218 [2018-11-23 12:16:56,815 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:56,815 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states. [2018-11-23 12:16:56,908 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:16:56,908 INFO L459 AbstractCegarLoop]: Interpolant automaton has 15 states [2018-11-23 12:16:56,908 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2018-11-23 12:16:56,908 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=105, Invalid=105, Unknown=0, NotChecked=0, Total=210 [2018-11-23 12:16:56,909 INFO L87 Difference]: Start difference. First operand 121 states and 136 transitions. Second operand 15 states. [2018-11-23 12:16:57,312 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:57,313 INFO L93 Difference]: Finished difference Result 201 states and 235 transitions. [2018-11-23 12:16:57,313 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2018-11-23 12:16:57,313 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 218 [2018-11-23 12:16:57,313 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:57,313 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2018-11-23 12:16:57,315 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 119 transitions. [2018-11-23 12:16:57,315 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2018-11-23 12:16:57,316 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 119 transitions. [2018-11-23 12:16:57,316 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 119 transitions. [2018-11-23 12:16:57,767 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:16:57,770 INFO L225 Difference]: With dead ends: 201 [2018-11-23 12:16:57,770 INFO L226 Difference]: Without dead ends: 128 [2018-11-23 12:16:57,771 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 231 GetRequests, 218 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 20 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=105, Invalid=105, Unknown=0, NotChecked=0, Total=210 [2018-11-23 12:16:57,771 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 128 states. [2018-11-23 12:16:57,805 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 128 to 125. [2018-11-23 12:16:57,806 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:16:57,806 INFO L82 GeneralOperation]: Start isEquivalent. First operand 128 states. Second operand 125 states. [2018-11-23 12:16:57,806 INFO L74 IsIncluded]: Start isIncluded. First operand 128 states. Second operand 125 states. [2018-11-23 12:16:57,806 INFO L87 Difference]: Start difference. First operand 128 states. Second operand 125 states. [2018-11-23 12:16:57,810 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:57,810 INFO L93 Difference]: Finished difference Result 128 states and 145 transitions. [2018-11-23 12:16:57,811 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 145 transitions. [2018-11-23 12:16:57,811 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:57,811 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:57,811 INFO L74 IsIncluded]: Start isIncluded. First operand 125 states. Second operand 128 states. [2018-11-23 12:16:57,811 INFO L87 Difference]: Start difference. First operand 125 states. Second operand 128 states. [2018-11-23 12:16:57,814 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:57,814 INFO L93 Difference]: Finished difference Result 128 states and 145 transitions. [2018-11-23 12:16:57,814 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 145 transitions. [2018-11-23 12:16:57,814 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:16:57,815 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:16:57,815 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:16:57,815 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:16:57,815 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 125 states. [2018-11-23 12:16:57,817 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 125 states to 125 states and 141 transitions. [2018-11-23 12:16:57,818 INFO L78 Accepts]: Start accepts. Automaton has 125 states and 141 transitions. Word has length 218 [2018-11-23 12:16:57,818 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:16:57,818 INFO L480 AbstractCegarLoop]: Abstraction has 125 states and 141 transitions. [2018-11-23 12:16:57,818 INFO L481 AbstractCegarLoop]: Interpolant automaton has 15 states. [2018-11-23 12:16:57,818 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 141 transitions. [2018-11-23 12:16:57,820 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 231 [2018-11-23 12:16:57,820 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:16:57,820 INFO L402 BasicCegarLoop]: trace histogram [36, 36, 36, 36, 20, 20, 7, 7, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:16:57,820 INFO L423 AbstractCegarLoop]: === Iteration 29 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:16:57,820 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:16:57,821 INFO L82 PathProgramCache]: Analyzing trace with hash -1578031991, now seen corresponding path program 26 times [2018-11-23 12:16:57,821 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:16:57,821 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:16:57,821 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:57,822 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:16:57,822 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:16:57,859 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:58,348 INFO L256 TraceCheckUtils]: 0: Hoare triple {20743#true} call ULTIMATE.init(); {20743#true} is VALID [2018-11-23 12:16:58,348 INFO L273 TraceCheckUtils]: 1: Hoare triple {20743#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {20743#true} is VALID [2018-11-23 12:16:58,348 INFO L273 TraceCheckUtils]: 2: Hoare triple {20743#true} assume true; {20743#true} is VALID [2018-11-23 12:16:58,349 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {20743#true} {20743#true} #73#return; {20743#true} is VALID [2018-11-23 12:16:58,349 INFO L256 TraceCheckUtils]: 4: Hoare triple {20743#true} call #t~ret14 := main(); {20743#true} is VALID [2018-11-23 12:16:58,349 INFO L273 TraceCheckUtils]: 5: Hoare triple {20743#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {20743#true} is VALID [2018-11-23 12:16:58,349 INFO L273 TraceCheckUtils]: 6: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,349 INFO L273 TraceCheckUtils]: 7: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,349 INFO L273 TraceCheckUtils]: 8: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,349 INFO L273 TraceCheckUtils]: 9: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,349 INFO L273 TraceCheckUtils]: 10: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,349 INFO L273 TraceCheckUtils]: 11: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,349 INFO L273 TraceCheckUtils]: 12: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,350 INFO L273 TraceCheckUtils]: 13: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,350 INFO L273 TraceCheckUtils]: 14: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,350 INFO L273 TraceCheckUtils]: 15: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,350 INFO L273 TraceCheckUtils]: 16: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,350 INFO L273 TraceCheckUtils]: 17: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,350 INFO L273 TraceCheckUtils]: 18: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,350 INFO L273 TraceCheckUtils]: 19: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,350 INFO L273 TraceCheckUtils]: 20: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,350 INFO L273 TraceCheckUtils]: 21: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,350 INFO L273 TraceCheckUtils]: 22: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,351 INFO L273 TraceCheckUtils]: 23: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,351 INFO L273 TraceCheckUtils]: 24: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,351 INFO L273 TraceCheckUtils]: 25: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,351 INFO L273 TraceCheckUtils]: 26: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,351 INFO L273 TraceCheckUtils]: 27: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,351 INFO L273 TraceCheckUtils]: 28: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,351 INFO L273 TraceCheckUtils]: 29: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,351 INFO L273 TraceCheckUtils]: 30: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,351 INFO L273 TraceCheckUtils]: 31: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,352 INFO L273 TraceCheckUtils]: 32: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,352 INFO L273 TraceCheckUtils]: 33: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,352 INFO L273 TraceCheckUtils]: 34: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,352 INFO L273 TraceCheckUtils]: 35: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,352 INFO L273 TraceCheckUtils]: 36: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,352 INFO L273 TraceCheckUtils]: 37: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,352 INFO L273 TraceCheckUtils]: 38: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,352 INFO L273 TraceCheckUtils]: 39: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,352 INFO L273 TraceCheckUtils]: 40: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,352 INFO L273 TraceCheckUtils]: 41: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,353 INFO L273 TraceCheckUtils]: 42: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,353 INFO L273 TraceCheckUtils]: 43: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,353 INFO L273 TraceCheckUtils]: 44: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,353 INFO L273 TraceCheckUtils]: 45: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,353 INFO L273 TraceCheckUtils]: 46: Hoare triple {20743#true} assume !(~i~1 < 20); {20743#true} is VALID [2018-11-23 12:16:58,353 INFO L256 TraceCheckUtils]: 47: Hoare triple {20743#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {20743#true} is VALID [2018-11-23 12:16:58,353 INFO L273 TraceCheckUtils]: 48: Hoare triple {20743#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {20745#(= max_~i~0 0)} is VALID [2018-11-23 12:16:58,354 INFO L273 TraceCheckUtils]: 49: Hoare triple {20745#(= max_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20745#(= max_~i~0 0)} is VALID [2018-11-23 12:16:58,354 INFO L273 TraceCheckUtils]: 50: Hoare triple {20745#(= max_~i~0 0)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20745#(= max_~i~0 0)} is VALID [2018-11-23 12:16:58,354 INFO L273 TraceCheckUtils]: 51: Hoare triple {20745#(= max_~i~0 0)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20745#(= max_~i~0 0)} is VALID [2018-11-23 12:16:58,355 INFO L273 TraceCheckUtils]: 52: Hoare triple {20745#(= max_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20746#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:58,358 INFO L273 TraceCheckUtils]: 53: Hoare triple {20746#(<= max_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20746#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:58,358 INFO L273 TraceCheckUtils]: 54: Hoare triple {20746#(<= max_~i~0 1)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20746#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:58,360 INFO L273 TraceCheckUtils]: 55: Hoare triple {20746#(<= max_~i~0 1)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20746#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:58,360 INFO L273 TraceCheckUtils]: 56: Hoare triple {20746#(<= max_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20747#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:58,360 INFO L273 TraceCheckUtils]: 57: Hoare triple {20747#(<= max_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20747#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:58,361 INFO L273 TraceCheckUtils]: 58: Hoare triple {20747#(<= max_~i~0 2)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20747#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:58,362 INFO L273 TraceCheckUtils]: 59: Hoare triple {20747#(<= max_~i~0 2)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20747#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:58,362 INFO L273 TraceCheckUtils]: 60: Hoare triple {20747#(<= max_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20748#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:58,364 INFO L273 TraceCheckUtils]: 61: Hoare triple {20748#(<= max_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20748#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:58,364 INFO L273 TraceCheckUtils]: 62: Hoare triple {20748#(<= max_~i~0 3)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20748#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:58,365 INFO L273 TraceCheckUtils]: 63: Hoare triple {20748#(<= max_~i~0 3)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20748#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:58,365 INFO L273 TraceCheckUtils]: 64: Hoare triple {20748#(<= max_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20749#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:58,366 INFO L273 TraceCheckUtils]: 65: Hoare triple {20749#(<= max_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20749#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:58,366 INFO L273 TraceCheckUtils]: 66: Hoare triple {20749#(<= max_~i~0 4)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20749#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:58,367 INFO L273 TraceCheckUtils]: 67: Hoare triple {20749#(<= max_~i~0 4)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20749#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:58,367 INFO L273 TraceCheckUtils]: 68: Hoare triple {20749#(<= max_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20750#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:58,367 INFO L273 TraceCheckUtils]: 69: Hoare triple {20750#(<= max_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20750#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:58,368 INFO L273 TraceCheckUtils]: 70: Hoare triple {20750#(<= max_~i~0 5)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20750#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:58,368 INFO L273 TraceCheckUtils]: 71: Hoare triple {20750#(<= max_~i~0 5)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20750#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:58,368 INFO L273 TraceCheckUtils]: 72: Hoare triple {20750#(<= max_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20751#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:58,369 INFO L273 TraceCheckUtils]: 73: Hoare triple {20751#(<= max_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20751#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:58,369 INFO L273 TraceCheckUtils]: 74: Hoare triple {20751#(<= max_~i~0 6)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20751#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:58,370 INFO L273 TraceCheckUtils]: 75: Hoare triple {20751#(<= max_~i~0 6)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20751#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:58,371 INFO L273 TraceCheckUtils]: 76: Hoare triple {20751#(<= max_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20752#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:58,371 INFO L273 TraceCheckUtils]: 77: Hoare triple {20752#(<= max_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20752#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:58,372 INFO L273 TraceCheckUtils]: 78: Hoare triple {20752#(<= max_~i~0 7)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20752#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:58,372 INFO L273 TraceCheckUtils]: 79: Hoare triple {20752#(<= max_~i~0 7)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20752#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:58,373 INFO L273 TraceCheckUtils]: 80: Hoare triple {20752#(<= max_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20753#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:58,373 INFO L273 TraceCheckUtils]: 81: Hoare triple {20753#(<= max_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20753#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:58,374 INFO L273 TraceCheckUtils]: 82: Hoare triple {20753#(<= max_~i~0 8)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20753#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:58,374 INFO L273 TraceCheckUtils]: 83: Hoare triple {20753#(<= max_~i~0 8)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20753#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:58,375 INFO L273 TraceCheckUtils]: 84: Hoare triple {20753#(<= max_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20754#(<= max_~i~0 9)} is VALID [2018-11-23 12:16:58,376 INFO L273 TraceCheckUtils]: 85: Hoare triple {20754#(<= max_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20754#(<= max_~i~0 9)} is VALID [2018-11-23 12:16:58,376 INFO L273 TraceCheckUtils]: 86: Hoare triple {20754#(<= max_~i~0 9)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20754#(<= max_~i~0 9)} is VALID [2018-11-23 12:16:58,377 INFO L273 TraceCheckUtils]: 87: Hoare triple {20754#(<= max_~i~0 9)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20754#(<= max_~i~0 9)} is VALID [2018-11-23 12:16:58,377 INFO L273 TraceCheckUtils]: 88: Hoare triple {20754#(<= max_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20755#(<= max_~i~0 10)} is VALID [2018-11-23 12:16:58,378 INFO L273 TraceCheckUtils]: 89: Hoare triple {20755#(<= max_~i~0 10)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20755#(<= max_~i~0 10)} is VALID [2018-11-23 12:16:58,378 INFO L273 TraceCheckUtils]: 90: Hoare triple {20755#(<= max_~i~0 10)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20755#(<= max_~i~0 10)} is VALID [2018-11-23 12:16:58,379 INFO L273 TraceCheckUtils]: 91: Hoare triple {20755#(<= max_~i~0 10)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20755#(<= max_~i~0 10)} is VALID [2018-11-23 12:16:58,379 INFO L273 TraceCheckUtils]: 92: Hoare triple {20755#(<= max_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20756#(<= max_~i~0 11)} is VALID [2018-11-23 12:16:58,380 INFO L273 TraceCheckUtils]: 93: Hoare triple {20756#(<= max_~i~0 11)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20756#(<= max_~i~0 11)} is VALID [2018-11-23 12:16:58,380 INFO L273 TraceCheckUtils]: 94: Hoare triple {20756#(<= max_~i~0 11)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20756#(<= max_~i~0 11)} is VALID [2018-11-23 12:16:58,381 INFO L273 TraceCheckUtils]: 95: Hoare triple {20756#(<= max_~i~0 11)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20756#(<= max_~i~0 11)} is VALID [2018-11-23 12:16:58,382 INFO L273 TraceCheckUtils]: 96: Hoare triple {20756#(<= max_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20757#(<= max_~i~0 12)} is VALID [2018-11-23 12:16:58,382 INFO L273 TraceCheckUtils]: 97: Hoare triple {20757#(<= max_~i~0 12)} assume !(~i~0 < 20); {20744#false} is VALID [2018-11-23 12:16:58,383 INFO L273 TraceCheckUtils]: 98: Hoare triple {20744#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {20744#false} is VALID [2018-11-23 12:16:58,383 INFO L273 TraceCheckUtils]: 99: Hoare triple {20744#false} assume true; {20744#false} is VALID [2018-11-23 12:16:58,383 INFO L268 TraceCheckUtils]: 100: Hoare quadruple {20744#false} {20743#true} #77#return; {20744#false} is VALID [2018-11-23 12:16:58,383 INFO L273 TraceCheckUtils]: 101: Hoare triple {20744#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {20744#false} is VALID [2018-11-23 12:16:58,383 INFO L256 TraceCheckUtils]: 102: Hoare triple {20744#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {20743#true} is VALID [2018-11-23 12:16:58,383 INFO L273 TraceCheckUtils]: 103: Hoare triple {20743#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {20743#true} is VALID [2018-11-23 12:16:58,384 INFO L273 TraceCheckUtils]: 104: Hoare triple {20743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20743#true} is VALID [2018-11-23 12:16:58,384 INFO L273 TraceCheckUtils]: 105: Hoare triple {20743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20743#true} is VALID [2018-11-23 12:16:58,384 INFO L273 TraceCheckUtils]: 106: Hoare triple {20743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20743#true} is VALID [2018-11-23 12:16:58,384 INFO L273 TraceCheckUtils]: 107: Hoare triple {20743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20743#true} is VALID [2018-11-23 12:16:58,384 INFO L273 TraceCheckUtils]: 108: Hoare triple {20743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20743#true} is VALID [2018-11-23 12:16:58,384 INFO L273 TraceCheckUtils]: 109: Hoare triple {20743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20743#true} is VALID [2018-11-23 12:16:58,385 INFO L273 TraceCheckUtils]: 110: Hoare triple {20743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20743#true} is VALID [2018-11-23 12:16:58,385 INFO L273 TraceCheckUtils]: 111: Hoare triple {20743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20743#true} is VALID [2018-11-23 12:16:58,385 INFO L273 TraceCheckUtils]: 112: Hoare triple {20743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20743#true} is VALID [2018-11-23 12:16:58,385 INFO L273 TraceCheckUtils]: 113: Hoare triple {20743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20743#true} is VALID [2018-11-23 12:16:58,385 INFO L273 TraceCheckUtils]: 114: Hoare triple {20743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20743#true} is VALID [2018-11-23 12:16:58,386 INFO L273 TraceCheckUtils]: 115: Hoare triple {20743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20743#true} is VALID [2018-11-23 12:16:58,386 INFO L273 TraceCheckUtils]: 116: Hoare triple {20743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20743#true} is VALID [2018-11-23 12:16:58,386 INFO L273 TraceCheckUtils]: 117: Hoare triple {20743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20743#true} is VALID [2018-11-23 12:16:58,386 INFO L273 TraceCheckUtils]: 118: Hoare triple {20743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20743#true} is VALID [2018-11-23 12:16:58,386 INFO L273 TraceCheckUtils]: 119: Hoare triple {20743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20743#true} is VALID [2018-11-23 12:16:58,386 INFO L273 TraceCheckUtils]: 120: Hoare triple {20743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20743#true} is VALID [2018-11-23 12:16:58,386 INFO L273 TraceCheckUtils]: 121: Hoare triple {20743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20743#true} is VALID [2018-11-23 12:16:58,386 INFO L273 TraceCheckUtils]: 122: Hoare triple {20743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20743#true} is VALID [2018-11-23 12:16:58,386 INFO L273 TraceCheckUtils]: 123: Hoare triple {20743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20743#true} is VALID [2018-11-23 12:16:58,387 INFO L273 TraceCheckUtils]: 124: Hoare triple {20743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20743#true} is VALID [2018-11-23 12:16:58,387 INFO L273 TraceCheckUtils]: 125: Hoare triple {20743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20743#true} is VALID [2018-11-23 12:16:58,387 INFO L273 TraceCheckUtils]: 126: Hoare triple {20743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20743#true} is VALID [2018-11-23 12:16:58,387 INFO L273 TraceCheckUtils]: 127: Hoare triple {20743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20743#true} is VALID [2018-11-23 12:16:58,387 INFO L273 TraceCheckUtils]: 128: Hoare triple {20743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20743#true} is VALID [2018-11-23 12:16:58,387 INFO L273 TraceCheckUtils]: 129: Hoare triple {20743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20743#true} is VALID [2018-11-23 12:16:58,387 INFO L273 TraceCheckUtils]: 130: Hoare triple {20743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20743#true} is VALID [2018-11-23 12:16:58,387 INFO L273 TraceCheckUtils]: 131: Hoare triple {20743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20743#true} is VALID [2018-11-23 12:16:58,387 INFO L273 TraceCheckUtils]: 132: Hoare triple {20743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20743#true} is VALID [2018-11-23 12:16:58,387 INFO L273 TraceCheckUtils]: 133: Hoare triple {20743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20743#true} is VALID [2018-11-23 12:16:58,388 INFO L273 TraceCheckUtils]: 134: Hoare triple {20743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20743#true} is VALID [2018-11-23 12:16:58,388 INFO L273 TraceCheckUtils]: 135: Hoare triple {20743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20743#true} is VALID [2018-11-23 12:16:58,388 INFO L273 TraceCheckUtils]: 136: Hoare triple {20743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20743#true} is VALID [2018-11-23 12:16:58,388 INFO L273 TraceCheckUtils]: 137: Hoare triple {20743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20743#true} is VALID [2018-11-23 12:16:58,388 INFO L273 TraceCheckUtils]: 138: Hoare triple {20743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20743#true} is VALID [2018-11-23 12:16:58,388 INFO L273 TraceCheckUtils]: 139: Hoare triple {20743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20743#true} is VALID [2018-11-23 12:16:58,388 INFO L273 TraceCheckUtils]: 140: Hoare triple {20743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20743#true} is VALID [2018-11-23 12:16:58,388 INFO L273 TraceCheckUtils]: 141: Hoare triple {20743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20743#true} is VALID [2018-11-23 12:16:58,388 INFO L273 TraceCheckUtils]: 142: Hoare triple {20743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20743#true} is VALID [2018-11-23 12:16:58,388 INFO L273 TraceCheckUtils]: 143: Hoare triple {20743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20743#true} is VALID [2018-11-23 12:16:58,389 INFO L273 TraceCheckUtils]: 144: Hoare triple {20743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20743#true} is VALID [2018-11-23 12:16:58,389 INFO L273 TraceCheckUtils]: 145: Hoare triple {20743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20743#true} is VALID [2018-11-23 12:16:58,389 INFO L273 TraceCheckUtils]: 146: Hoare triple {20743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20743#true} is VALID [2018-11-23 12:16:58,389 INFO L273 TraceCheckUtils]: 147: Hoare triple {20743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20743#true} is VALID [2018-11-23 12:16:58,389 INFO L273 TraceCheckUtils]: 148: Hoare triple {20743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20743#true} is VALID [2018-11-23 12:16:58,389 INFO L273 TraceCheckUtils]: 149: Hoare triple {20743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20743#true} is VALID [2018-11-23 12:16:58,389 INFO L273 TraceCheckUtils]: 150: Hoare triple {20743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20743#true} is VALID [2018-11-23 12:16:58,389 INFO L273 TraceCheckUtils]: 151: Hoare triple {20743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20743#true} is VALID [2018-11-23 12:16:58,389 INFO L273 TraceCheckUtils]: 152: Hoare triple {20743#true} assume !(~i~0 < 20); {20743#true} is VALID [2018-11-23 12:16:58,389 INFO L273 TraceCheckUtils]: 153: Hoare triple {20743#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {20743#true} is VALID [2018-11-23 12:16:58,390 INFO L273 TraceCheckUtils]: 154: Hoare triple {20743#true} assume true; {20743#true} is VALID [2018-11-23 12:16:58,390 INFO L268 TraceCheckUtils]: 155: Hoare quadruple {20743#true} {20744#false} #79#return; {20744#false} is VALID [2018-11-23 12:16:58,390 INFO L273 TraceCheckUtils]: 156: Hoare triple {20744#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {20744#false} is VALID [2018-11-23 12:16:58,390 INFO L273 TraceCheckUtils]: 157: Hoare triple {20744#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {20744#false} is VALID [2018-11-23 12:16:58,390 INFO L273 TraceCheckUtils]: 158: Hoare triple {20744#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {20744#false} is VALID [2018-11-23 12:16:58,390 INFO L273 TraceCheckUtils]: 159: Hoare triple {20744#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {20744#false} is VALID [2018-11-23 12:16:58,390 INFO L273 TraceCheckUtils]: 160: Hoare triple {20744#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {20744#false} is VALID [2018-11-23 12:16:58,390 INFO L273 TraceCheckUtils]: 161: Hoare triple {20744#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {20744#false} is VALID [2018-11-23 12:16:58,390 INFO L273 TraceCheckUtils]: 162: Hoare triple {20744#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {20744#false} is VALID [2018-11-23 12:16:58,390 INFO L273 TraceCheckUtils]: 163: Hoare triple {20744#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {20744#false} is VALID [2018-11-23 12:16:58,391 INFO L273 TraceCheckUtils]: 164: Hoare triple {20744#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {20744#false} is VALID [2018-11-23 12:16:58,391 INFO L273 TraceCheckUtils]: 165: Hoare triple {20744#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {20744#false} is VALID [2018-11-23 12:16:58,391 INFO L273 TraceCheckUtils]: 166: Hoare triple {20744#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {20744#false} is VALID [2018-11-23 12:16:58,391 INFO L273 TraceCheckUtils]: 167: Hoare triple {20744#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {20744#false} is VALID [2018-11-23 12:16:58,391 INFO L273 TraceCheckUtils]: 168: Hoare triple {20744#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {20744#false} is VALID [2018-11-23 12:16:58,391 INFO L273 TraceCheckUtils]: 169: Hoare triple {20744#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {20744#false} is VALID [2018-11-23 12:16:58,391 INFO L273 TraceCheckUtils]: 170: Hoare triple {20744#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {20744#false} is VALID [2018-11-23 12:16:58,391 INFO L273 TraceCheckUtils]: 171: Hoare triple {20744#false} assume !(~i~2 < 19); {20744#false} is VALID [2018-11-23 12:16:58,391 INFO L273 TraceCheckUtils]: 172: Hoare triple {20744#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {20744#false} is VALID [2018-11-23 12:16:58,391 INFO L256 TraceCheckUtils]: 173: Hoare triple {20744#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {20743#true} is VALID [2018-11-23 12:16:58,392 INFO L273 TraceCheckUtils]: 174: Hoare triple {20743#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {20743#true} is VALID [2018-11-23 12:16:58,392 INFO L273 TraceCheckUtils]: 175: Hoare triple {20743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20743#true} is VALID [2018-11-23 12:16:58,392 INFO L273 TraceCheckUtils]: 176: Hoare triple {20743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20743#true} is VALID [2018-11-23 12:16:58,392 INFO L273 TraceCheckUtils]: 177: Hoare triple {20743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20743#true} is VALID [2018-11-23 12:16:58,392 INFO L273 TraceCheckUtils]: 178: Hoare triple {20743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20743#true} is VALID [2018-11-23 12:16:58,392 INFO L273 TraceCheckUtils]: 179: Hoare triple {20743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20743#true} is VALID [2018-11-23 12:16:58,392 INFO L273 TraceCheckUtils]: 180: Hoare triple {20743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20743#true} is VALID [2018-11-23 12:16:58,392 INFO L273 TraceCheckUtils]: 181: Hoare triple {20743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20743#true} is VALID [2018-11-23 12:16:58,392 INFO L273 TraceCheckUtils]: 182: Hoare triple {20743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20743#true} is VALID [2018-11-23 12:16:58,393 INFO L273 TraceCheckUtils]: 183: Hoare triple {20743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20743#true} is VALID [2018-11-23 12:16:58,393 INFO L273 TraceCheckUtils]: 184: Hoare triple {20743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20743#true} is VALID [2018-11-23 12:16:58,393 INFO L273 TraceCheckUtils]: 185: Hoare triple {20743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20743#true} is VALID [2018-11-23 12:16:58,393 INFO L273 TraceCheckUtils]: 186: Hoare triple {20743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20743#true} is VALID [2018-11-23 12:16:58,393 INFO L273 TraceCheckUtils]: 187: Hoare triple {20743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20743#true} is VALID [2018-11-23 12:16:58,393 INFO L273 TraceCheckUtils]: 188: Hoare triple {20743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20743#true} is VALID [2018-11-23 12:16:58,393 INFO L273 TraceCheckUtils]: 189: Hoare triple {20743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20743#true} is VALID [2018-11-23 12:16:58,393 INFO L273 TraceCheckUtils]: 190: Hoare triple {20743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20743#true} is VALID [2018-11-23 12:16:58,393 INFO L273 TraceCheckUtils]: 191: Hoare triple {20743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20743#true} is VALID [2018-11-23 12:16:58,393 INFO L273 TraceCheckUtils]: 192: Hoare triple {20743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20743#true} is VALID [2018-11-23 12:16:58,394 INFO L273 TraceCheckUtils]: 193: Hoare triple {20743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20743#true} is VALID [2018-11-23 12:16:58,394 INFO L273 TraceCheckUtils]: 194: Hoare triple {20743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20743#true} is VALID [2018-11-23 12:16:58,394 INFO L273 TraceCheckUtils]: 195: Hoare triple {20743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20743#true} is VALID [2018-11-23 12:16:58,394 INFO L273 TraceCheckUtils]: 196: Hoare triple {20743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20743#true} is VALID [2018-11-23 12:16:58,394 INFO L273 TraceCheckUtils]: 197: Hoare triple {20743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20743#true} is VALID [2018-11-23 12:16:58,394 INFO L273 TraceCheckUtils]: 198: Hoare triple {20743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20743#true} is VALID [2018-11-23 12:16:58,394 INFO L273 TraceCheckUtils]: 199: Hoare triple {20743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20743#true} is VALID [2018-11-23 12:16:58,394 INFO L273 TraceCheckUtils]: 200: Hoare triple {20743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20743#true} is VALID [2018-11-23 12:16:58,394 INFO L273 TraceCheckUtils]: 201: Hoare triple {20743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20743#true} is VALID [2018-11-23 12:16:58,394 INFO L273 TraceCheckUtils]: 202: Hoare triple {20743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20743#true} is VALID [2018-11-23 12:16:58,395 INFO L273 TraceCheckUtils]: 203: Hoare triple {20743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20743#true} is VALID [2018-11-23 12:16:58,395 INFO L273 TraceCheckUtils]: 204: Hoare triple {20743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20743#true} is VALID [2018-11-23 12:16:58,395 INFO L273 TraceCheckUtils]: 205: Hoare triple {20743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20743#true} is VALID [2018-11-23 12:16:58,395 INFO L273 TraceCheckUtils]: 206: Hoare triple {20743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20743#true} is VALID [2018-11-23 12:16:58,395 INFO L273 TraceCheckUtils]: 207: Hoare triple {20743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20743#true} is VALID [2018-11-23 12:16:58,395 INFO L273 TraceCheckUtils]: 208: Hoare triple {20743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20743#true} is VALID [2018-11-23 12:16:58,395 INFO L273 TraceCheckUtils]: 209: Hoare triple {20743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20743#true} is VALID [2018-11-23 12:16:58,395 INFO L273 TraceCheckUtils]: 210: Hoare triple {20743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20743#true} is VALID [2018-11-23 12:16:58,395 INFO L273 TraceCheckUtils]: 211: Hoare triple {20743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20743#true} is VALID [2018-11-23 12:16:58,395 INFO L273 TraceCheckUtils]: 212: Hoare triple {20743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20743#true} is VALID [2018-11-23 12:16:58,396 INFO L273 TraceCheckUtils]: 213: Hoare triple {20743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20743#true} is VALID [2018-11-23 12:16:58,396 INFO L273 TraceCheckUtils]: 214: Hoare triple {20743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20743#true} is VALID [2018-11-23 12:16:58,396 INFO L273 TraceCheckUtils]: 215: Hoare triple {20743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20743#true} is VALID [2018-11-23 12:16:58,396 INFO L273 TraceCheckUtils]: 216: Hoare triple {20743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20743#true} is VALID [2018-11-23 12:16:58,396 INFO L273 TraceCheckUtils]: 217: Hoare triple {20743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20743#true} is VALID [2018-11-23 12:16:58,396 INFO L273 TraceCheckUtils]: 218: Hoare triple {20743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20743#true} is VALID [2018-11-23 12:16:58,396 INFO L273 TraceCheckUtils]: 219: Hoare triple {20743#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20743#true} is VALID [2018-11-23 12:16:58,396 INFO L273 TraceCheckUtils]: 220: Hoare triple {20743#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20743#true} is VALID [2018-11-23 12:16:58,396 INFO L273 TraceCheckUtils]: 221: Hoare triple {20743#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20743#true} is VALID [2018-11-23 12:16:58,397 INFO L273 TraceCheckUtils]: 222: Hoare triple {20743#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20743#true} is VALID [2018-11-23 12:16:58,397 INFO L273 TraceCheckUtils]: 223: Hoare triple {20743#true} assume !(~i~0 < 20); {20743#true} is VALID [2018-11-23 12:16:58,397 INFO L273 TraceCheckUtils]: 224: Hoare triple {20743#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {20743#true} is VALID [2018-11-23 12:16:58,397 INFO L273 TraceCheckUtils]: 225: Hoare triple {20743#true} assume true; {20743#true} is VALID [2018-11-23 12:16:58,397 INFO L268 TraceCheckUtils]: 226: Hoare quadruple {20743#true} {20744#false} #81#return; {20744#false} is VALID [2018-11-23 12:16:58,397 INFO L273 TraceCheckUtils]: 227: Hoare triple {20744#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {20744#false} is VALID [2018-11-23 12:16:58,397 INFO L273 TraceCheckUtils]: 228: Hoare triple {20744#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {20744#false} is VALID [2018-11-23 12:16:58,397 INFO L273 TraceCheckUtils]: 229: Hoare triple {20744#false} assume !false; {20744#false} is VALID [2018-11-23 12:16:58,418 INFO L134 CoverageAnalysis]: Checked inductivity of 3092 backedges. 0 proven. 1484 refuted. 0 times theorem prover too weak. 1608 trivial. 0 not checked. [2018-11-23 12:16:58,418 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:16:58,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 28 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 28 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:16:58,428 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:16:58,545 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:16:58,545 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:16:58,604 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:16:58,606 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:16:58,959 INFO L256 TraceCheckUtils]: 0: Hoare triple {20743#true} call ULTIMATE.init(); {20743#true} is VALID [2018-11-23 12:16:58,959 INFO L273 TraceCheckUtils]: 1: Hoare triple {20743#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {20743#true} is VALID [2018-11-23 12:16:58,960 INFO L273 TraceCheckUtils]: 2: Hoare triple {20743#true} assume true; {20743#true} is VALID [2018-11-23 12:16:58,960 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {20743#true} {20743#true} #73#return; {20743#true} is VALID [2018-11-23 12:16:58,960 INFO L256 TraceCheckUtils]: 4: Hoare triple {20743#true} call #t~ret14 := main(); {20743#true} is VALID [2018-11-23 12:16:58,960 INFO L273 TraceCheckUtils]: 5: Hoare triple {20743#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {20743#true} is VALID [2018-11-23 12:16:58,960 INFO L273 TraceCheckUtils]: 6: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,960 INFO L273 TraceCheckUtils]: 7: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,961 INFO L273 TraceCheckUtils]: 8: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,961 INFO L273 TraceCheckUtils]: 9: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,961 INFO L273 TraceCheckUtils]: 10: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,961 INFO L273 TraceCheckUtils]: 11: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,961 INFO L273 TraceCheckUtils]: 12: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,962 INFO L273 TraceCheckUtils]: 13: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,962 INFO L273 TraceCheckUtils]: 14: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,962 INFO L273 TraceCheckUtils]: 15: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,962 INFO L273 TraceCheckUtils]: 16: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,962 INFO L273 TraceCheckUtils]: 17: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,962 INFO L273 TraceCheckUtils]: 18: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,963 INFO L273 TraceCheckUtils]: 19: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,963 INFO L273 TraceCheckUtils]: 20: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,963 INFO L273 TraceCheckUtils]: 21: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,963 INFO L273 TraceCheckUtils]: 22: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,963 INFO L273 TraceCheckUtils]: 23: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,963 INFO L273 TraceCheckUtils]: 24: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,963 INFO L273 TraceCheckUtils]: 25: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,963 INFO L273 TraceCheckUtils]: 26: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,963 INFO L273 TraceCheckUtils]: 27: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,964 INFO L273 TraceCheckUtils]: 28: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,964 INFO L273 TraceCheckUtils]: 29: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,964 INFO L273 TraceCheckUtils]: 30: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,964 INFO L273 TraceCheckUtils]: 31: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,964 INFO L273 TraceCheckUtils]: 32: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,964 INFO L273 TraceCheckUtils]: 33: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,964 INFO L273 TraceCheckUtils]: 34: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,964 INFO L273 TraceCheckUtils]: 35: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,964 INFO L273 TraceCheckUtils]: 36: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,964 INFO L273 TraceCheckUtils]: 37: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,965 INFO L273 TraceCheckUtils]: 38: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,965 INFO L273 TraceCheckUtils]: 39: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,965 INFO L273 TraceCheckUtils]: 40: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,965 INFO L273 TraceCheckUtils]: 41: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,965 INFO L273 TraceCheckUtils]: 42: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,965 INFO L273 TraceCheckUtils]: 43: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,965 INFO L273 TraceCheckUtils]: 44: Hoare triple {20743#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {20743#true} is VALID [2018-11-23 12:16:58,965 INFO L273 TraceCheckUtils]: 45: Hoare triple {20743#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {20743#true} is VALID [2018-11-23 12:16:58,965 INFO L273 TraceCheckUtils]: 46: Hoare triple {20743#true} assume !(~i~1 < 20); {20743#true} is VALID [2018-11-23 12:16:58,966 INFO L256 TraceCheckUtils]: 47: Hoare triple {20743#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {20743#true} is VALID [2018-11-23 12:16:58,966 INFO L273 TraceCheckUtils]: 48: Hoare triple {20743#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {20905#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:58,966 INFO L273 TraceCheckUtils]: 49: Hoare triple {20905#(<= max_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20905#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:58,967 INFO L273 TraceCheckUtils]: 50: Hoare triple {20905#(<= max_~i~0 0)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20905#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:58,967 INFO L273 TraceCheckUtils]: 51: Hoare triple {20905#(<= max_~i~0 0)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20905#(<= max_~i~0 0)} is VALID [2018-11-23 12:16:58,967 INFO L273 TraceCheckUtils]: 52: Hoare triple {20905#(<= max_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20746#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:58,968 INFO L273 TraceCheckUtils]: 53: Hoare triple {20746#(<= max_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20746#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:58,968 INFO L273 TraceCheckUtils]: 54: Hoare triple {20746#(<= max_~i~0 1)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20746#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:58,968 INFO L273 TraceCheckUtils]: 55: Hoare triple {20746#(<= max_~i~0 1)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20746#(<= max_~i~0 1)} is VALID [2018-11-23 12:16:58,969 INFO L273 TraceCheckUtils]: 56: Hoare triple {20746#(<= max_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20747#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:58,970 INFO L273 TraceCheckUtils]: 57: Hoare triple {20747#(<= max_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20747#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:58,970 INFO L273 TraceCheckUtils]: 58: Hoare triple {20747#(<= max_~i~0 2)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20747#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:58,971 INFO L273 TraceCheckUtils]: 59: Hoare triple {20747#(<= max_~i~0 2)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20747#(<= max_~i~0 2)} is VALID [2018-11-23 12:16:58,971 INFO L273 TraceCheckUtils]: 60: Hoare triple {20747#(<= max_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20748#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:58,972 INFO L273 TraceCheckUtils]: 61: Hoare triple {20748#(<= max_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20748#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:58,972 INFO L273 TraceCheckUtils]: 62: Hoare triple {20748#(<= max_~i~0 3)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20748#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:58,973 INFO L273 TraceCheckUtils]: 63: Hoare triple {20748#(<= max_~i~0 3)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20748#(<= max_~i~0 3)} is VALID [2018-11-23 12:16:58,973 INFO L273 TraceCheckUtils]: 64: Hoare triple {20748#(<= max_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20749#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:58,974 INFO L273 TraceCheckUtils]: 65: Hoare triple {20749#(<= max_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20749#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:58,974 INFO L273 TraceCheckUtils]: 66: Hoare triple {20749#(<= max_~i~0 4)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20749#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:58,975 INFO L273 TraceCheckUtils]: 67: Hoare triple {20749#(<= max_~i~0 4)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20749#(<= max_~i~0 4)} is VALID [2018-11-23 12:16:58,975 INFO L273 TraceCheckUtils]: 68: Hoare triple {20749#(<= max_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20750#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:58,976 INFO L273 TraceCheckUtils]: 69: Hoare triple {20750#(<= max_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20750#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:58,976 INFO L273 TraceCheckUtils]: 70: Hoare triple {20750#(<= max_~i~0 5)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20750#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:58,977 INFO L273 TraceCheckUtils]: 71: Hoare triple {20750#(<= max_~i~0 5)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20750#(<= max_~i~0 5)} is VALID [2018-11-23 12:16:58,977 INFO L273 TraceCheckUtils]: 72: Hoare triple {20750#(<= max_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20751#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:58,978 INFO L273 TraceCheckUtils]: 73: Hoare triple {20751#(<= max_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20751#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:58,978 INFO L273 TraceCheckUtils]: 74: Hoare triple {20751#(<= max_~i~0 6)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20751#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:58,979 INFO L273 TraceCheckUtils]: 75: Hoare triple {20751#(<= max_~i~0 6)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20751#(<= max_~i~0 6)} is VALID [2018-11-23 12:16:58,980 INFO L273 TraceCheckUtils]: 76: Hoare triple {20751#(<= max_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20752#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:58,980 INFO L273 TraceCheckUtils]: 77: Hoare triple {20752#(<= max_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20752#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:58,981 INFO L273 TraceCheckUtils]: 78: Hoare triple {20752#(<= max_~i~0 7)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20752#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:58,981 INFO L273 TraceCheckUtils]: 79: Hoare triple {20752#(<= max_~i~0 7)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20752#(<= max_~i~0 7)} is VALID [2018-11-23 12:16:58,982 INFO L273 TraceCheckUtils]: 80: Hoare triple {20752#(<= max_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20753#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:58,982 INFO L273 TraceCheckUtils]: 81: Hoare triple {20753#(<= max_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20753#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:58,983 INFO L273 TraceCheckUtils]: 82: Hoare triple {20753#(<= max_~i~0 8)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20753#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:58,983 INFO L273 TraceCheckUtils]: 83: Hoare triple {20753#(<= max_~i~0 8)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20753#(<= max_~i~0 8)} is VALID [2018-11-23 12:16:58,984 INFO L273 TraceCheckUtils]: 84: Hoare triple {20753#(<= max_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20754#(<= max_~i~0 9)} is VALID [2018-11-23 12:16:58,985 INFO L273 TraceCheckUtils]: 85: Hoare triple {20754#(<= max_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20754#(<= max_~i~0 9)} is VALID [2018-11-23 12:16:58,985 INFO L273 TraceCheckUtils]: 86: Hoare triple {20754#(<= max_~i~0 9)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20754#(<= max_~i~0 9)} is VALID [2018-11-23 12:16:58,986 INFO L273 TraceCheckUtils]: 87: Hoare triple {20754#(<= max_~i~0 9)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20754#(<= max_~i~0 9)} is VALID [2018-11-23 12:16:58,986 INFO L273 TraceCheckUtils]: 88: Hoare triple {20754#(<= max_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20755#(<= max_~i~0 10)} is VALID [2018-11-23 12:16:58,987 INFO L273 TraceCheckUtils]: 89: Hoare triple {20755#(<= max_~i~0 10)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20755#(<= max_~i~0 10)} is VALID [2018-11-23 12:16:58,987 INFO L273 TraceCheckUtils]: 90: Hoare triple {20755#(<= max_~i~0 10)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20755#(<= max_~i~0 10)} is VALID [2018-11-23 12:16:58,988 INFO L273 TraceCheckUtils]: 91: Hoare triple {20755#(<= max_~i~0 10)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20755#(<= max_~i~0 10)} is VALID [2018-11-23 12:16:58,989 INFO L273 TraceCheckUtils]: 92: Hoare triple {20755#(<= max_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20756#(<= max_~i~0 11)} is VALID [2018-11-23 12:16:58,989 INFO L273 TraceCheckUtils]: 93: Hoare triple {20756#(<= max_~i~0 11)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20756#(<= max_~i~0 11)} is VALID [2018-11-23 12:16:58,990 INFO L273 TraceCheckUtils]: 94: Hoare triple {20756#(<= max_~i~0 11)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20756#(<= max_~i~0 11)} is VALID [2018-11-23 12:16:58,990 INFO L273 TraceCheckUtils]: 95: Hoare triple {20756#(<= max_~i~0 11)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20756#(<= max_~i~0 11)} is VALID [2018-11-23 12:16:58,991 INFO L273 TraceCheckUtils]: 96: Hoare triple {20756#(<= max_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20757#(<= max_~i~0 12)} is VALID [2018-11-23 12:16:58,991 INFO L273 TraceCheckUtils]: 97: Hoare triple {20757#(<= max_~i~0 12)} assume !(~i~0 < 20); {20744#false} is VALID [2018-11-23 12:16:58,992 INFO L273 TraceCheckUtils]: 98: Hoare triple {20744#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {20744#false} is VALID [2018-11-23 12:16:58,992 INFO L273 TraceCheckUtils]: 99: Hoare triple {20744#false} assume true; {20744#false} is VALID [2018-11-23 12:16:58,992 INFO L268 TraceCheckUtils]: 100: Hoare quadruple {20744#false} {20743#true} #77#return; {20744#false} is VALID [2018-11-23 12:16:58,992 INFO L273 TraceCheckUtils]: 101: Hoare triple {20744#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {20744#false} is VALID [2018-11-23 12:16:58,992 INFO L256 TraceCheckUtils]: 102: Hoare triple {20744#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {20744#false} is VALID [2018-11-23 12:16:58,993 INFO L273 TraceCheckUtils]: 103: Hoare triple {20744#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {20744#false} is VALID [2018-11-23 12:16:58,993 INFO L273 TraceCheckUtils]: 104: Hoare triple {20744#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20744#false} is VALID [2018-11-23 12:16:58,993 INFO L273 TraceCheckUtils]: 105: Hoare triple {20744#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20744#false} is VALID [2018-11-23 12:16:58,993 INFO L273 TraceCheckUtils]: 106: Hoare triple {20744#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20744#false} is VALID [2018-11-23 12:16:58,993 INFO L273 TraceCheckUtils]: 107: Hoare triple {20744#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20744#false} is VALID [2018-11-23 12:16:58,993 INFO L273 TraceCheckUtils]: 108: Hoare triple {20744#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20744#false} is VALID [2018-11-23 12:16:58,994 INFO L273 TraceCheckUtils]: 109: Hoare triple {20744#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20744#false} is VALID [2018-11-23 12:16:58,994 INFO L273 TraceCheckUtils]: 110: Hoare triple {20744#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20744#false} is VALID [2018-11-23 12:16:58,994 INFO L273 TraceCheckUtils]: 111: Hoare triple {20744#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20744#false} is VALID [2018-11-23 12:16:58,994 INFO L273 TraceCheckUtils]: 112: Hoare triple {20744#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20744#false} is VALID [2018-11-23 12:16:58,994 INFO L273 TraceCheckUtils]: 113: Hoare triple {20744#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20744#false} is VALID [2018-11-23 12:16:58,994 INFO L273 TraceCheckUtils]: 114: Hoare triple {20744#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20744#false} is VALID [2018-11-23 12:16:58,995 INFO L273 TraceCheckUtils]: 115: Hoare triple {20744#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20744#false} is VALID [2018-11-23 12:16:58,995 INFO L273 TraceCheckUtils]: 116: Hoare triple {20744#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20744#false} is VALID [2018-11-23 12:16:58,995 INFO L273 TraceCheckUtils]: 117: Hoare triple {20744#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20744#false} is VALID [2018-11-23 12:16:58,995 INFO L273 TraceCheckUtils]: 118: Hoare triple {20744#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20744#false} is VALID [2018-11-23 12:16:58,995 INFO L273 TraceCheckUtils]: 119: Hoare triple {20744#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20744#false} is VALID [2018-11-23 12:16:58,996 INFO L273 TraceCheckUtils]: 120: Hoare triple {20744#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20744#false} is VALID [2018-11-23 12:16:58,996 INFO L273 TraceCheckUtils]: 121: Hoare triple {20744#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20744#false} is VALID [2018-11-23 12:16:58,996 INFO L273 TraceCheckUtils]: 122: Hoare triple {20744#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20744#false} is VALID [2018-11-23 12:16:58,996 INFO L273 TraceCheckUtils]: 123: Hoare triple {20744#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20744#false} is VALID [2018-11-23 12:16:58,996 INFO L273 TraceCheckUtils]: 124: Hoare triple {20744#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20744#false} is VALID [2018-11-23 12:16:58,996 INFO L273 TraceCheckUtils]: 125: Hoare triple {20744#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20744#false} is VALID [2018-11-23 12:16:58,997 INFO L273 TraceCheckUtils]: 126: Hoare triple {20744#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20744#false} is VALID [2018-11-23 12:16:58,997 INFO L273 TraceCheckUtils]: 127: Hoare triple {20744#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20744#false} is VALID [2018-11-23 12:16:58,997 INFO L273 TraceCheckUtils]: 128: Hoare triple {20744#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20744#false} is VALID [2018-11-23 12:16:58,997 INFO L273 TraceCheckUtils]: 129: Hoare triple {20744#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20744#false} is VALID [2018-11-23 12:16:58,997 INFO L273 TraceCheckUtils]: 130: Hoare triple {20744#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20744#false} is VALID [2018-11-23 12:16:58,997 INFO L273 TraceCheckUtils]: 131: Hoare triple {20744#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20744#false} is VALID [2018-11-23 12:16:58,997 INFO L273 TraceCheckUtils]: 132: Hoare triple {20744#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20744#false} is VALID [2018-11-23 12:16:58,997 INFO L273 TraceCheckUtils]: 133: Hoare triple {20744#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20744#false} is VALID [2018-11-23 12:16:58,998 INFO L273 TraceCheckUtils]: 134: Hoare triple {20744#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20744#false} is VALID [2018-11-23 12:16:58,998 INFO L273 TraceCheckUtils]: 135: Hoare triple {20744#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20744#false} is VALID [2018-11-23 12:16:58,998 INFO L273 TraceCheckUtils]: 136: Hoare triple {20744#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20744#false} is VALID [2018-11-23 12:16:58,998 INFO L273 TraceCheckUtils]: 137: Hoare triple {20744#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20744#false} is VALID [2018-11-23 12:16:58,998 INFO L273 TraceCheckUtils]: 138: Hoare triple {20744#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20744#false} is VALID [2018-11-23 12:16:58,998 INFO L273 TraceCheckUtils]: 139: Hoare triple {20744#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20744#false} is VALID [2018-11-23 12:16:58,998 INFO L273 TraceCheckUtils]: 140: Hoare triple {20744#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20744#false} is VALID [2018-11-23 12:16:58,998 INFO L273 TraceCheckUtils]: 141: Hoare triple {20744#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20744#false} is VALID [2018-11-23 12:16:58,998 INFO L273 TraceCheckUtils]: 142: Hoare triple {20744#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20744#false} is VALID [2018-11-23 12:16:58,998 INFO L273 TraceCheckUtils]: 143: Hoare triple {20744#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20744#false} is VALID [2018-11-23 12:16:58,999 INFO L273 TraceCheckUtils]: 144: Hoare triple {20744#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20744#false} is VALID [2018-11-23 12:16:58,999 INFO L273 TraceCheckUtils]: 145: Hoare triple {20744#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20744#false} is VALID [2018-11-23 12:16:58,999 INFO L273 TraceCheckUtils]: 146: Hoare triple {20744#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20744#false} is VALID [2018-11-23 12:16:58,999 INFO L273 TraceCheckUtils]: 147: Hoare triple {20744#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20744#false} is VALID [2018-11-23 12:16:58,999 INFO L273 TraceCheckUtils]: 148: Hoare triple {20744#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20744#false} is VALID [2018-11-23 12:16:58,999 INFO L273 TraceCheckUtils]: 149: Hoare triple {20744#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20744#false} is VALID [2018-11-23 12:16:58,999 INFO L273 TraceCheckUtils]: 150: Hoare triple {20744#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20744#false} is VALID [2018-11-23 12:16:58,999 INFO L273 TraceCheckUtils]: 151: Hoare triple {20744#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20744#false} is VALID [2018-11-23 12:16:58,999 INFO L273 TraceCheckUtils]: 152: Hoare triple {20744#false} assume !(~i~0 < 20); {20744#false} is VALID [2018-11-23 12:16:58,999 INFO L273 TraceCheckUtils]: 153: Hoare triple {20744#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {20744#false} is VALID [2018-11-23 12:16:59,000 INFO L273 TraceCheckUtils]: 154: Hoare triple {20744#false} assume true; {20744#false} is VALID [2018-11-23 12:16:59,000 INFO L268 TraceCheckUtils]: 155: Hoare quadruple {20744#false} {20744#false} #79#return; {20744#false} is VALID [2018-11-23 12:16:59,000 INFO L273 TraceCheckUtils]: 156: Hoare triple {20744#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {20744#false} is VALID [2018-11-23 12:16:59,000 INFO L273 TraceCheckUtils]: 157: Hoare triple {20744#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {20744#false} is VALID [2018-11-23 12:16:59,000 INFO L273 TraceCheckUtils]: 158: Hoare triple {20744#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {20744#false} is VALID [2018-11-23 12:16:59,000 INFO L273 TraceCheckUtils]: 159: Hoare triple {20744#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {20744#false} is VALID [2018-11-23 12:16:59,000 INFO L273 TraceCheckUtils]: 160: Hoare triple {20744#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {20744#false} is VALID [2018-11-23 12:16:59,000 INFO L273 TraceCheckUtils]: 161: Hoare triple {20744#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {20744#false} is VALID [2018-11-23 12:16:59,000 INFO L273 TraceCheckUtils]: 162: Hoare triple {20744#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {20744#false} is VALID [2018-11-23 12:16:59,001 INFO L273 TraceCheckUtils]: 163: Hoare triple {20744#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {20744#false} is VALID [2018-11-23 12:16:59,001 INFO L273 TraceCheckUtils]: 164: Hoare triple {20744#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {20744#false} is VALID [2018-11-23 12:16:59,001 INFO L273 TraceCheckUtils]: 165: Hoare triple {20744#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {20744#false} is VALID [2018-11-23 12:16:59,001 INFO L273 TraceCheckUtils]: 166: Hoare triple {20744#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {20744#false} is VALID [2018-11-23 12:16:59,001 INFO L273 TraceCheckUtils]: 167: Hoare triple {20744#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {20744#false} is VALID [2018-11-23 12:16:59,001 INFO L273 TraceCheckUtils]: 168: Hoare triple {20744#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {20744#false} is VALID [2018-11-23 12:16:59,001 INFO L273 TraceCheckUtils]: 169: Hoare triple {20744#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {20744#false} is VALID [2018-11-23 12:16:59,001 INFO L273 TraceCheckUtils]: 170: Hoare triple {20744#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {20744#false} is VALID [2018-11-23 12:16:59,001 INFO L273 TraceCheckUtils]: 171: Hoare triple {20744#false} assume !(~i~2 < 19); {20744#false} is VALID [2018-11-23 12:16:59,001 INFO L273 TraceCheckUtils]: 172: Hoare triple {20744#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {20744#false} is VALID [2018-11-23 12:16:59,002 INFO L256 TraceCheckUtils]: 173: Hoare triple {20744#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {20744#false} is VALID [2018-11-23 12:16:59,002 INFO L273 TraceCheckUtils]: 174: Hoare triple {20744#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {20744#false} is VALID [2018-11-23 12:16:59,002 INFO L273 TraceCheckUtils]: 175: Hoare triple {20744#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20744#false} is VALID [2018-11-23 12:16:59,002 INFO L273 TraceCheckUtils]: 176: Hoare triple {20744#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20744#false} is VALID [2018-11-23 12:16:59,002 INFO L273 TraceCheckUtils]: 177: Hoare triple {20744#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20744#false} is VALID [2018-11-23 12:16:59,002 INFO L273 TraceCheckUtils]: 178: Hoare triple {20744#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20744#false} is VALID [2018-11-23 12:16:59,002 INFO L273 TraceCheckUtils]: 179: Hoare triple {20744#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20744#false} is VALID [2018-11-23 12:16:59,002 INFO L273 TraceCheckUtils]: 180: Hoare triple {20744#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20744#false} is VALID [2018-11-23 12:16:59,002 INFO L273 TraceCheckUtils]: 181: Hoare triple {20744#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20744#false} is VALID [2018-11-23 12:16:59,003 INFO L273 TraceCheckUtils]: 182: Hoare triple {20744#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20744#false} is VALID [2018-11-23 12:16:59,003 INFO L273 TraceCheckUtils]: 183: Hoare triple {20744#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20744#false} is VALID [2018-11-23 12:16:59,003 INFO L273 TraceCheckUtils]: 184: Hoare triple {20744#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20744#false} is VALID [2018-11-23 12:16:59,003 INFO L273 TraceCheckUtils]: 185: Hoare triple {20744#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20744#false} is VALID [2018-11-23 12:16:59,003 INFO L273 TraceCheckUtils]: 186: Hoare triple {20744#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20744#false} is VALID [2018-11-23 12:16:59,003 INFO L273 TraceCheckUtils]: 187: Hoare triple {20744#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20744#false} is VALID [2018-11-23 12:16:59,003 INFO L273 TraceCheckUtils]: 188: Hoare triple {20744#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20744#false} is VALID [2018-11-23 12:16:59,003 INFO L273 TraceCheckUtils]: 189: Hoare triple {20744#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20744#false} is VALID [2018-11-23 12:16:59,003 INFO L273 TraceCheckUtils]: 190: Hoare triple {20744#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20744#false} is VALID [2018-11-23 12:16:59,003 INFO L273 TraceCheckUtils]: 191: Hoare triple {20744#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20744#false} is VALID [2018-11-23 12:16:59,004 INFO L273 TraceCheckUtils]: 192: Hoare triple {20744#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20744#false} is VALID [2018-11-23 12:16:59,004 INFO L273 TraceCheckUtils]: 193: Hoare triple {20744#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20744#false} is VALID [2018-11-23 12:16:59,004 INFO L273 TraceCheckUtils]: 194: Hoare triple {20744#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20744#false} is VALID [2018-11-23 12:16:59,004 INFO L273 TraceCheckUtils]: 195: Hoare triple {20744#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20744#false} is VALID [2018-11-23 12:16:59,004 INFO L273 TraceCheckUtils]: 196: Hoare triple {20744#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20744#false} is VALID [2018-11-23 12:16:59,004 INFO L273 TraceCheckUtils]: 197: Hoare triple {20744#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20744#false} is VALID [2018-11-23 12:16:59,004 INFO L273 TraceCheckUtils]: 198: Hoare triple {20744#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20744#false} is VALID [2018-11-23 12:16:59,004 INFO L273 TraceCheckUtils]: 199: Hoare triple {20744#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20744#false} is VALID [2018-11-23 12:16:59,004 INFO L273 TraceCheckUtils]: 200: Hoare triple {20744#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20744#false} is VALID [2018-11-23 12:16:59,004 INFO L273 TraceCheckUtils]: 201: Hoare triple {20744#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20744#false} is VALID [2018-11-23 12:16:59,005 INFO L273 TraceCheckUtils]: 202: Hoare triple {20744#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20744#false} is VALID [2018-11-23 12:16:59,005 INFO L273 TraceCheckUtils]: 203: Hoare triple {20744#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20744#false} is VALID [2018-11-23 12:16:59,005 INFO L273 TraceCheckUtils]: 204: Hoare triple {20744#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20744#false} is VALID [2018-11-23 12:16:59,005 INFO L273 TraceCheckUtils]: 205: Hoare triple {20744#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20744#false} is VALID [2018-11-23 12:16:59,005 INFO L273 TraceCheckUtils]: 206: Hoare triple {20744#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20744#false} is VALID [2018-11-23 12:16:59,005 INFO L273 TraceCheckUtils]: 207: Hoare triple {20744#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20744#false} is VALID [2018-11-23 12:16:59,005 INFO L273 TraceCheckUtils]: 208: Hoare triple {20744#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20744#false} is VALID [2018-11-23 12:16:59,005 INFO L273 TraceCheckUtils]: 209: Hoare triple {20744#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20744#false} is VALID [2018-11-23 12:16:59,005 INFO L273 TraceCheckUtils]: 210: Hoare triple {20744#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20744#false} is VALID [2018-11-23 12:16:59,005 INFO L273 TraceCheckUtils]: 211: Hoare triple {20744#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20744#false} is VALID [2018-11-23 12:16:59,006 INFO L273 TraceCheckUtils]: 212: Hoare triple {20744#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20744#false} is VALID [2018-11-23 12:16:59,006 INFO L273 TraceCheckUtils]: 213: Hoare triple {20744#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20744#false} is VALID [2018-11-23 12:16:59,006 INFO L273 TraceCheckUtils]: 214: Hoare triple {20744#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20744#false} is VALID [2018-11-23 12:16:59,006 INFO L273 TraceCheckUtils]: 215: Hoare triple {20744#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20744#false} is VALID [2018-11-23 12:16:59,006 INFO L273 TraceCheckUtils]: 216: Hoare triple {20744#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20744#false} is VALID [2018-11-23 12:16:59,006 INFO L273 TraceCheckUtils]: 217: Hoare triple {20744#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20744#false} is VALID [2018-11-23 12:16:59,006 INFO L273 TraceCheckUtils]: 218: Hoare triple {20744#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20744#false} is VALID [2018-11-23 12:16:59,006 INFO L273 TraceCheckUtils]: 219: Hoare triple {20744#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {20744#false} is VALID [2018-11-23 12:16:59,006 INFO L273 TraceCheckUtils]: 220: Hoare triple {20744#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {20744#false} is VALID [2018-11-23 12:16:59,007 INFO L273 TraceCheckUtils]: 221: Hoare triple {20744#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {20744#false} is VALID [2018-11-23 12:16:59,007 INFO L273 TraceCheckUtils]: 222: Hoare triple {20744#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {20744#false} is VALID [2018-11-23 12:16:59,007 INFO L273 TraceCheckUtils]: 223: Hoare triple {20744#false} assume !(~i~0 < 20); {20744#false} is VALID [2018-11-23 12:16:59,007 INFO L273 TraceCheckUtils]: 224: Hoare triple {20744#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {20744#false} is VALID [2018-11-23 12:16:59,007 INFO L273 TraceCheckUtils]: 225: Hoare triple {20744#false} assume true; {20744#false} is VALID [2018-11-23 12:16:59,007 INFO L268 TraceCheckUtils]: 226: Hoare quadruple {20744#false} {20744#false} #81#return; {20744#false} is VALID [2018-11-23 12:16:59,007 INFO L273 TraceCheckUtils]: 227: Hoare triple {20744#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {20744#false} is VALID [2018-11-23 12:16:59,007 INFO L273 TraceCheckUtils]: 228: Hoare triple {20744#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {20744#false} is VALID [2018-11-23 12:16:59,007 INFO L273 TraceCheckUtils]: 229: Hoare triple {20744#false} assume !false; {20744#false} is VALID [2018-11-23 12:16:59,028 INFO L134 CoverageAnalysis]: Checked inductivity of 3092 backedges. 1204 proven. 276 refuted. 0 times theorem prover too weak. 1612 trivial. 0 not checked. [2018-11-23 12:16:59,048 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:16:59,048 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 15] total 16 [2018-11-23 12:16:59,048 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 230 [2018-11-23 12:16:59,049 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:16:59,049 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states. [2018-11-23 12:16:59,136 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:16:59,136 INFO L459 AbstractCegarLoop]: Interpolant automaton has 16 states [2018-11-23 12:16:59,136 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2018-11-23 12:16:59,136 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=120, Invalid=120, Unknown=0, NotChecked=0, Total=240 [2018-11-23 12:16:59,137 INFO L87 Difference]: Start difference. First operand 125 states and 141 transitions. Second operand 16 states. [2018-11-23 12:16:59,909 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:16:59,910 INFO L93 Difference]: Finished difference Result 209 states and 245 transitions. [2018-11-23 12:16:59,910 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2018-11-23 12:16:59,910 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 230 [2018-11-23 12:16:59,910 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:16:59,910 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-23 12:16:59,912 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 124 transitions. [2018-11-23 12:16:59,912 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-23 12:16:59,913 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 124 transitions. [2018-11-23 12:16:59,913 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 124 transitions. [2018-11-23 12:17:00,382 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 124 edges. 124 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:17:00,385 INFO L225 Difference]: With dead ends: 209 [2018-11-23 12:17:00,385 INFO L226 Difference]: Without dead ends: 132 [2018-11-23 12:17:00,386 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 244 GetRequests, 230 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 22 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=120, Invalid=120, Unknown=0, NotChecked=0, Total=240 [2018-11-23 12:17:00,386 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 132 states. [2018-11-23 12:17:00,421 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 132 to 129. [2018-11-23 12:17:00,421 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:17:00,421 INFO L82 GeneralOperation]: Start isEquivalent. First operand 132 states. Second operand 129 states. [2018-11-23 12:17:00,422 INFO L74 IsIncluded]: Start isIncluded. First operand 132 states. Second operand 129 states. [2018-11-23 12:17:00,422 INFO L87 Difference]: Start difference. First operand 132 states. Second operand 129 states. [2018-11-23 12:17:00,424 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:00,424 INFO L93 Difference]: Finished difference Result 132 states and 150 transitions. [2018-11-23 12:17:00,424 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 150 transitions. [2018-11-23 12:17:00,425 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:00,425 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:00,425 INFO L74 IsIncluded]: Start isIncluded. First operand 129 states. Second operand 132 states. [2018-11-23 12:17:00,425 INFO L87 Difference]: Start difference. First operand 129 states. Second operand 132 states. [2018-11-23 12:17:00,427 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:00,427 INFO L93 Difference]: Finished difference Result 132 states and 150 transitions. [2018-11-23 12:17:00,427 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 150 transitions. [2018-11-23 12:17:00,427 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:00,427 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:00,427 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:17:00,427 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:17:00,428 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 129 states. [2018-11-23 12:17:00,429 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 129 states to 129 states and 146 transitions. [2018-11-23 12:17:00,430 INFO L78 Accepts]: Start accepts. Automaton has 129 states and 146 transitions. Word has length 230 [2018-11-23 12:17:00,430 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:17:00,430 INFO L480 AbstractCegarLoop]: Abstraction has 129 states and 146 transitions. [2018-11-23 12:17:00,430 INFO L481 AbstractCegarLoop]: Interpolant automaton has 16 states. [2018-11-23 12:17:00,430 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 146 transitions. [2018-11-23 12:17:00,431 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 243 [2018-11-23 12:17:00,432 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:17:00,432 INFO L402 BasicCegarLoop]: trace histogram [39, 39, 39, 39, 20, 20, 7, 7, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:17:00,432 INFO L423 AbstractCegarLoop]: === Iteration 30 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:17:00,432 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:17:00,432 INFO L82 PathProgramCache]: Analyzing trace with hash -1936100572, now seen corresponding path program 27 times [2018-11-23 12:17:00,432 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:17:00,432 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:17:00,433 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:00,433 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:17:00,433 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:00,474 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:01,260 INFO L256 TraceCheckUtils]: 0: Hoare triple {22176#true} call ULTIMATE.init(); {22176#true} is VALID [2018-11-23 12:17:01,260 INFO L273 TraceCheckUtils]: 1: Hoare triple {22176#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {22176#true} is VALID [2018-11-23 12:17:01,260 INFO L273 TraceCheckUtils]: 2: Hoare triple {22176#true} assume true; {22176#true} is VALID [2018-11-23 12:17:01,260 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {22176#true} {22176#true} #73#return; {22176#true} is VALID [2018-11-23 12:17:01,260 INFO L256 TraceCheckUtils]: 4: Hoare triple {22176#true} call #t~ret14 := main(); {22176#true} is VALID [2018-11-23 12:17:01,261 INFO L273 TraceCheckUtils]: 5: Hoare triple {22176#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {22176#true} is VALID [2018-11-23 12:17:01,261 INFO L273 TraceCheckUtils]: 6: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,261 INFO L273 TraceCheckUtils]: 7: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,261 INFO L273 TraceCheckUtils]: 8: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,261 INFO L273 TraceCheckUtils]: 9: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,261 INFO L273 TraceCheckUtils]: 10: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,261 INFO L273 TraceCheckUtils]: 11: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,262 INFO L273 TraceCheckUtils]: 12: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,262 INFO L273 TraceCheckUtils]: 13: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,262 INFO L273 TraceCheckUtils]: 14: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,262 INFO L273 TraceCheckUtils]: 15: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,262 INFO L273 TraceCheckUtils]: 16: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,262 INFO L273 TraceCheckUtils]: 17: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,263 INFO L273 TraceCheckUtils]: 18: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,263 INFO L273 TraceCheckUtils]: 19: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,263 INFO L273 TraceCheckUtils]: 20: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,263 INFO L273 TraceCheckUtils]: 21: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,263 INFO L273 TraceCheckUtils]: 22: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,264 INFO L273 TraceCheckUtils]: 23: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,264 INFO L273 TraceCheckUtils]: 24: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,264 INFO L273 TraceCheckUtils]: 25: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,264 INFO L273 TraceCheckUtils]: 26: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,264 INFO L273 TraceCheckUtils]: 27: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,264 INFO L273 TraceCheckUtils]: 28: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,264 INFO L273 TraceCheckUtils]: 29: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,264 INFO L273 TraceCheckUtils]: 30: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,265 INFO L273 TraceCheckUtils]: 31: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,265 INFO L273 TraceCheckUtils]: 32: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,265 INFO L273 TraceCheckUtils]: 33: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,265 INFO L273 TraceCheckUtils]: 34: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,265 INFO L273 TraceCheckUtils]: 35: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,265 INFO L273 TraceCheckUtils]: 36: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,265 INFO L273 TraceCheckUtils]: 37: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,265 INFO L273 TraceCheckUtils]: 38: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,265 INFO L273 TraceCheckUtils]: 39: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,265 INFO L273 TraceCheckUtils]: 40: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,266 INFO L273 TraceCheckUtils]: 41: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,266 INFO L273 TraceCheckUtils]: 42: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,266 INFO L273 TraceCheckUtils]: 43: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,266 INFO L273 TraceCheckUtils]: 44: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,266 INFO L273 TraceCheckUtils]: 45: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,266 INFO L273 TraceCheckUtils]: 46: Hoare triple {22176#true} assume !(~i~1 < 20); {22176#true} is VALID [2018-11-23 12:17:01,266 INFO L256 TraceCheckUtils]: 47: Hoare triple {22176#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {22176#true} is VALID [2018-11-23 12:17:01,267 INFO L273 TraceCheckUtils]: 48: Hoare triple {22176#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {22178#(= max_~i~0 0)} is VALID [2018-11-23 12:17:01,267 INFO L273 TraceCheckUtils]: 49: Hoare triple {22178#(= max_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22178#(= max_~i~0 0)} is VALID [2018-11-23 12:17:01,267 INFO L273 TraceCheckUtils]: 50: Hoare triple {22178#(= max_~i~0 0)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22178#(= max_~i~0 0)} is VALID [2018-11-23 12:17:01,268 INFO L273 TraceCheckUtils]: 51: Hoare triple {22178#(= max_~i~0 0)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22178#(= max_~i~0 0)} is VALID [2018-11-23 12:17:01,268 INFO L273 TraceCheckUtils]: 52: Hoare triple {22178#(= max_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22179#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:01,268 INFO L273 TraceCheckUtils]: 53: Hoare triple {22179#(<= max_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22179#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:01,269 INFO L273 TraceCheckUtils]: 54: Hoare triple {22179#(<= max_~i~0 1)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22179#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:01,269 INFO L273 TraceCheckUtils]: 55: Hoare triple {22179#(<= max_~i~0 1)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22179#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:01,269 INFO L273 TraceCheckUtils]: 56: Hoare triple {22179#(<= max_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22180#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:01,270 INFO L273 TraceCheckUtils]: 57: Hoare triple {22180#(<= max_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22180#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:01,270 INFO L273 TraceCheckUtils]: 58: Hoare triple {22180#(<= max_~i~0 2)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22180#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:01,271 INFO L273 TraceCheckUtils]: 59: Hoare triple {22180#(<= max_~i~0 2)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22180#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:01,272 INFO L273 TraceCheckUtils]: 60: Hoare triple {22180#(<= max_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22181#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:01,272 INFO L273 TraceCheckUtils]: 61: Hoare triple {22181#(<= max_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22181#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:01,273 INFO L273 TraceCheckUtils]: 62: Hoare triple {22181#(<= max_~i~0 3)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22181#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:01,273 INFO L273 TraceCheckUtils]: 63: Hoare triple {22181#(<= max_~i~0 3)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22181#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:01,274 INFO L273 TraceCheckUtils]: 64: Hoare triple {22181#(<= max_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22182#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:01,275 INFO L273 TraceCheckUtils]: 65: Hoare triple {22182#(<= max_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22182#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:01,275 INFO L273 TraceCheckUtils]: 66: Hoare triple {22182#(<= max_~i~0 4)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22182#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:01,276 INFO L273 TraceCheckUtils]: 67: Hoare triple {22182#(<= max_~i~0 4)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22182#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:01,276 INFO L273 TraceCheckUtils]: 68: Hoare triple {22182#(<= max_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22183#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:01,277 INFO L273 TraceCheckUtils]: 69: Hoare triple {22183#(<= max_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22183#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:01,277 INFO L273 TraceCheckUtils]: 70: Hoare triple {22183#(<= max_~i~0 5)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22183#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:01,278 INFO L273 TraceCheckUtils]: 71: Hoare triple {22183#(<= max_~i~0 5)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22183#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:01,279 INFO L273 TraceCheckUtils]: 72: Hoare triple {22183#(<= max_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22184#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:01,279 INFO L273 TraceCheckUtils]: 73: Hoare triple {22184#(<= max_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22184#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:01,280 INFO L273 TraceCheckUtils]: 74: Hoare triple {22184#(<= max_~i~0 6)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22184#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:01,280 INFO L273 TraceCheckUtils]: 75: Hoare triple {22184#(<= max_~i~0 6)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22184#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:01,281 INFO L273 TraceCheckUtils]: 76: Hoare triple {22184#(<= max_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22185#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:01,281 INFO L273 TraceCheckUtils]: 77: Hoare triple {22185#(<= max_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22185#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:01,282 INFO L273 TraceCheckUtils]: 78: Hoare triple {22185#(<= max_~i~0 7)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22185#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:01,282 INFO L273 TraceCheckUtils]: 79: Hoare triple {22185#(<= max_~i~0 7)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22185#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:01,283 INFO L273 TraceCheckUtils]: 80: Hoare triple {22185#(<= max_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22186#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:01,284 INFO L273 TraceCheckUtils]: 81: Hoare triple {22186#(<= max_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22186#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:01,284 INFO L273 TraceCheckUtils]: 82: Hoare triple {22186#(<= max_~i~0 8)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22186#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:01,285 INFO L273 TraceCheckUtils]: 83: Hoare triple {22186#(<= max_~i~0 8)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22186#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:01,285 INFO L273 TraceCheckUtils]: 84: Hoare triple {22186#(<= max_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22187#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:01,286 INFO L273 TraceCheckUtils]: 85: Hoare triple {22187#(<= max_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22187#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:01,287 INFO L273 TraceCheckUtils]: 86: Hoare triple {22187#(<= max_~i~0 9)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22187#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:01,287 INFO L273 TraceCheckUtils]: 87: Hoare triple {22187#(<= max_~i~0 9)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22187#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:01,288 INFO L273 TraceCheckUtils]: 88: Hoare triple {22187#(<= max_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22188#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:01,288 INFO L273 TraceCheckUtils]: 89: Hoare triple {22188#(<= max_~i~0 10)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22188#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:01,289 INFO L273 TraceCheckUtils]: 90: Hoare triple {22188#(<= max_~i~0 10)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22188#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:01,289 INFO L273 TraceCheckUtils]: 91: Hoare triple {22188#(<= max_~i~0 10)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22188#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:01,290 INFO L273 TraceCheckUtils]: 92: Hoare triple {22188#(<= max_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22189#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:01,291 INFO L273 TraceCheckUtils]: 93: Hoare triple {22189#(<= max_~i~0 11)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22189#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:01,291 INFO L273 TraceCheckUtils]: 94: Hoare triple {22189#(<= max_~i~0 11)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22189#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:01,292 INFO L273 TraceCheckUtils]: 95: Hoare triple {22189#(<= max_~i~0 11)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22189#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:01,292 INFO L273 TraceCheckUtils]: 96: Hoare triple {22189#(<= max_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22190#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:01,293 INFO L273 TraceCheckUtils]: 97: Hoare triple {22190#(<= max_~i~0 12)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22190#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:01,293 INFO L273 TraceCheckUtils]: 98: Hoare triple {22190#(<= max_~i~0 12)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22190#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:01,294 INFO L273 TraceCheckUtils]: 99: Hoare triple {22190#(<= max_~i~0 12)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22190#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:01,295 INFO L273 TraceCheckUtils]: 100: Hoare triple {22190#(<= max_~i~0 12)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22191#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:01,295 INFO L273 TraceCheckUtils]: 101: Hoare triple {22191#(<= max_~i~0 13)} assume !(~i~0 < 20); {22177#false} is VALID [2018-11-23 12:17:01,295 INFO L273 TraceCheckUtils]: 102: Hoare triple {22177#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {22177#false} is VALID [2018-11-23 12:17:01,296 INFO L273 TraceCheckUtils]: 103: Hoare triple {22177#false} assume true; {22177#false} is VALID [2018-11-23 12:17:01,296 INFO L268 TraceCheckUtils]: 104: Hoare quadruple {22177#false} {22176#true} #77#return; {22177#false} is VALID [2018-11-23 12:17:01,296 INFO L273 TraceCheckUtils]: 105: Hoare triple {22177#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {22177#false} is VALID [2018-11-23 12:17:01,296 INFO L256 TraceCheckUtils]: 106: Hoare triple {22177#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {22176#true} is VALID [2018-11-23 12:17:01,296 INFO L273 TraceCheckUtils]: 107: Hoare triple {22176#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {22176#true} is VALID [2018-11-23 12:17:01,296 INFO L273 TraceCheckUtils]: 108: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,297 INFO L273 TraceCheckUtils]: 109: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,297 INFO L273 TraceCheckUtils]: 110: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,297 INFO L273 TraceCheckUtils]: 111: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,297 INFO L273 TraceCheckUtils]: 112: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,297 INFO L273 TraceCheckUtils]: 113: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,298 INFO L273 TraceCheckUtils]: 114: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,298 INFO L273 TraceCheckUtils]: 115: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,298 INFO L273 TraceCheckUtils]: 116: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,298 INFO L273 TraceCheckUtils]: 117: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,298 INFO L273 TraceCheckUtils]: 118: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,298 INFO L273 TraceCheckUtils]: 119: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,299 INFO L273 TraceCheckUtils]: 120: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,299 INFO L273 TraceCheckUtils]: 121: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,299 INFO L273 TraceCheckUtils]: 122: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,299 INFO L273 TraceCheckUtils]: 123: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,299 INFO L273 TraceCheckUtils]: 124: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,299 INFO L273 TraceCheckUtils]: 125: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,300 INFO L273 TraceCheckUtils]: 126: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,300 INFO L273 TraceCheckUtils]: 127: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,300 INFO L273 TraceCheckUtils]: 128: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,300 INFO L273 TraceCheckUtils]: 129: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,300 INFO L273 TraceCheckUtils]: 130: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,300 INFO L273 TraceCheckUtils]: 131: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,300 INFO L273 TraceCheckUtils]: 132: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,301 INFO L273 TraceCheckUtils]: 133: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,301 INFO L273 TraceCheckUtils]: 134: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,301 INFO L273 TraceCheckUtils]: 135: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,301 INFO L273 TraceCheckUtils]: 136: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,301 INFO L273 TraceCheckUtils]: 137: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,301 INFO L273 TraceCheckUtils]: 138: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,302 INFO L273 TraceCheckUtils]: 139: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,302 INFO L273 TraceCheckUtils]: 140: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,302 INFO L273 TraceCheckUtils]: 141: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,302 INFO L273 TraceCheckUtils]: 142: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,302 INFO L273 TraceCheckUtils]: 143: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,302 INFO L273 TraceCheckUtils]: 144: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,302 INFO L273 TraceCheckUtils]: 145: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,303 INFO L273 TraceCheckUtils]: 146: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,303 INFO L273 TraceCheckUtils]: 147: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,303 INFO L273 TraceCheckUtils]: 148: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,303 INFO L273 TraceCheckUtils]: 149: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,303 INFO L273 TraceCheckUtils]: 150: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,303 INFO L273 TraceCheckUtils]: 151: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,304 INFO L273 TraceCheckUtils]: 152: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,304 INFO L273 TraceCheckUtils]: 153: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,304 INFO L273 TraceCheckUtils]: 154: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,304 INFO L273 TraceCheckUtils]: 155: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,304 INFO L273 TraceCheckUtils]: 156: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,304 INFO L273 TraceCheckUtils]: 157: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,305 INFO L273 TraceCheckUtils]: 158: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,305 INFO L273 TraceCheckUtils]: 159: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,305 INFO L273 TraceCheckUtils]: 160: Hoare triple {22176#true} assume !(~i~0 < 20); {22176#true} is VALID [2018-11-23 12:17:01,305 INFO L273 TraceCheckUtils]: 161: Hoare triple {22176#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {22176#true} is VALID [2018-11-23 12:17:01,305 INFO L273 TraceCheckUtils]: 162: Hoare triple {22176#true} assume true; {22176#true} is VALID [2018-11-23 12:17:01,305 INFO L268 TraceCheckUtils]: 163: Hoare quadruple {22176#true} {22177#false} #79#return; {22177#false} is VALID [2018-11-23 12:17:01,305 INFO L273 TraceCheckUtils]: 164: Hoare triple {22177#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {22177#false} is VALID [2018-11-23 12:17:01,306 INFO L273 TraceCheckUtils]: 165: Hoare triple {22177#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {22177#false} is VALID [2018-11-23 12:17:01,306 INFO L273 TraceCheckUtils]: 166: Hoare triple {22177#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {22177#false} is VALID [2018-11-23 12:17:01,306 INFO L273 TraceCheckUtils]: 167: Hoare triple {22177#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {22177#false} is VALID [2018-11-23 12:17:01,306 INFO L273 TraceCheckUtils]: 168: Hoare triple {22177#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {22177#false} is VALID [2018-11-23 12:17:01,306 INFO L273 TraceCheckUtils]: 169: Hoare triple {22177#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {22177#false} is VALID [2018-11-23 12:17:01,306 INFO L273 TraceCheckUtils]: 170: Hoare triple {22177#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {22177#false} is VALID [2018-11-23 12:17:01,307 INFO L273 TraceCheckUtils]: 171: Hoare triple {22177#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {22177#false} is VALID [2018-11-23 12:17:01,307 INFO L273 TraceCheckUtils]: 172: Hoare triple {22177#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {22177#false} is VALID [2018-11-23 12:17:01,307 INFO L273 TraceCheckUtils]: 173: Hoare triple {22177#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {22177#false} is VALID [2018-11-23 12:17:01,307 INFO L273 TraceCheckUtils]: 174: Hoare triple {22177#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {22177#false} is VALID [2018-11-23 12:17:01,307 INFO L273 TraceCheckUtils]: 175: Hoare triple {22177#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {22177#false} is VALID [2018-11-23 12:17:01,307 INFO L273 TraceCheckUtils]: 176: Hoare triple {22177#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {22177#false} is VALID [2018-11-23 12:17:01,307 INFO L273 TraceCheckUtils]: 177: Hoare triple {22177#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {22177#false} is VALID [2018-11-23 12:17:01,308 INFO L273 TraceCheckUtils]: 178: Hoare triple {22177#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {22177#false} is VALID [2018-11-23 12:17:01,308 INFO L273 TraceCheckUtils]: 179: Hoare triple {22177#false} assume !(~i~2 < 19); {22177#false} is VALID [2018-11-23 12:17:01,308 INFO L273 TraceCheckUtils]: 180: Hoare triple {22177#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {22177#false} is VALID [2018-11-23 12:17:01,308 INFO L256 TraceCheckUtils]: 181: Hoare triple {22177#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {22176#true} is VALID [2018-11-23 12:17:01,308 INFO L273 TraceCheckUtils]: 182: Hoare triple {22176#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {22176#true} is VALID [2018-11-23 12:17:01,308 INFO L273 TraceCheckUtils]: 183: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,308 INFO L273 TraceCheckUtils]: 184: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,309 INFO L273 TraceCheckUtils]: 185: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,309 INFO L273 TraceCheckUtils]: 186: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,309 INFO L273 TraceCheckUtils]: 187: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,309 INFO L273 TraceCheckUtils]: 188: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,309 INFO L273 TraceCheckUtils]: 189: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,309 INFO L273 TraceCheckUtils]: 190: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,309 INFO L273 TraceCheckUtils]: 191: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,310 INFO L273 TraceCheckUtils]: 192: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,310 INFO L273 TraceCheckUtils]: 193: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,310 INFO L273 TraceCheckUtils]: 194: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,310 INFO L273 TraceCheckUtils]: 195: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,310 INFO L273 TraceCheckUtils]: 196: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,310 INFO L273 TraceCheckUtils]: 197: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,310 INFO L273 TraceCheckUtils]: 198: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,311 INFO L273 TraceCheckUtils]: 199: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,311 INFO L273 TraceCheckUtils]: 200: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,311 INFO L273 TraceCheckUtils]: 201: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,311 INFO L273 TraceCheckUtils]: 202: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,311 INFO L273 TraceCheckUtils]: 203: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,311 INFO L273 TraceCheckUtils]: 204: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,312 INFO L273 TraceCheckUtils]: 205: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,312 INFO L273 TraceCheckUtils]: 206: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,312 INFO L273 TraceCheckUtils]: 207: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,312 INFO L273 TraceCheckUtils]: 208: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,312 INFO L273 TraceCheckUtils]: 209: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,312 INFO L273 TraceCheckUtils]: 210: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,312 INFO L273 TraceCheckUtils]: 211: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,313 INFO L273 TraceCheckUtils]: 212: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,313 INFO L273 TraceCheckUtils]: 213: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,313 INFO L273 TraceCheckUtils]: 214: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,313 INFO L273 TraceCheckUtils]: 215: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,313 INFO L273 TraceCheckUtils]: 216: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,313 INFO L273 TraceCheckUtils]: 217: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,313 INFO L273 TraceCheckUtils]: 218: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,314 INFO L273 TraceCheckUtils]: 219: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,314 INFO L273 TraceCheckUtils]: 220: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,314 INFO L273 TraceCheckUtils]: 221: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,314 INFO L273 TraceCheckUtils]: 222: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,314 INFO L273 TraceCheckUtils]: 223: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,314 INFO L273 TraceCheckUtils]: 224: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,315 INFO L273 TraceCheckUtils]: 225: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,315 INFO L273 TraceCheckUtils]: 226: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,315 INFO L273 TraceCheckUtils]: 227: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,315 INFO L273 TraceCheckUtils]: 228: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,315 INFO L273 TraceCheckUtils]: 229: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,315 INFO L273 TraceCheckUtils]: 230: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,315 INFO L273 TraceCheckUtils]: 231: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,316 INFO L273 TraceCheckUtils]: 232: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,316 INFO L273 TraceCheckUtils]: 233: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,316 INFO L273 TraceCheckUtils]: 234: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,316 INFO L273 TraceCheckUtils]: 235: Hoare triple {22176#true} assume !(~i~0 < 20); {22176#true} is VALID [2018-11-23 12:17:01,316 INFO L273 TraceCheckUtils]: 236: Hoare triple {22176#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {22176#true} is VALID [2018-11-23 12:17:01,316 INFO L273 TraceCheckUtils]: 237: Hoare triple {22176#true} assume true; {22176#true} is VALID [2018-11-23 12:17:01,316 INFO L268 TraceCheckUtils]: 238: Hoare quadruple {22176#true} {22177#false} #81#return; {22177#false} is VALID [2018-11-23 12:17:01,317 INFO L273 TraceCheckUtils]: 239: Hoare triple {22177#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {22177#false} is VALID [2018-11-23 12:17:01,317 INFO L273 TraceCheckUtils]: 240: Hoare triple {22177#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {22177#false} is VALID [2018-11-23 12:17:01,317 INFO L273 TraceCheckUtils]: 241: Hoare triple {22177#false} assume !false; {22177#false} is VALID [2018-11-23 12:17:01,348 INFO L134 CoverageAnalysis]: Checked inductivity of 3545 backedges. 0 proven. 1737 refuted. 0 times theorem prover too weak. 1808 trivial. 0 not checked. [2018-11-23 12:17:01,348 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:17:01,348 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 29 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 29 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:17:01,358 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:17:01,606 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 9 check-sat command(s) [2018-11-23 12:17:01,607 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:17:01,669 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:01,672 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:17:01,969 INFO L256 TraceCheckUtils]: 0: Hoare triple {22176#true} call ULTIMATE.init(); {22176#true} is VALID [2018-11-23 12:17:01,970 INFO L273 TraceCheckUtils]: 1: Hoare triple {22176#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {22176#true} is VALID [2018-11-23 12:17:01,970 INFO L273 TraceCheckUtils]: 2: Hoare triple {22176#true} assume true; {22176#true} is VALID [2018-11-23 12:17:01,970 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {22176#true} {22176#true} #73#return; {22176#true} is VALID [2018-11-23 12:17:01,970 INFO L256 TraceCheckUtils]: 4: Hoare triple {22176#true} call #t~ret14 := main(); {22176#true} is VALID [2018-11-23 12:17:01,970 INFO L273 TraceCheckUtils]: 5: Hoare triple {22176#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {22176#true} is VALID [2018-11-23 12:17:01,970 INFO L273 TraceCheckUtils]: 6: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,971 INFO L273 TraceCheckUtils]: 7: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,971 INFO L273 TraceCheckUtils]: 8: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,971 INFO L273 TraceCheckUtils]: 9: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,971 INFO L273 TraceCheckUtils]: 10: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,971 INFO L273 TraceCheckUtils]: 11: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,971 INFO L273 TraceCheckUtils]: 12: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,972 INFO L273 TraceCheckUtils]: 13: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,972 INFO L273 TraceCheckUtils]: 14: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,972 INFO L273 TraceCheckUtils]: 15: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,972 INFO L273 TraceCheckUtils]: 16: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,972 INFO L273 TraceCheckUtils]: 17: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,972 INFO L273 TraceCheckUtils]: 18: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,972 INFO L273 TraceCheckUtils]: 19: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,972 INFO L273 TraceCheckUtils]: 20: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,972 INFO L273 TraceCheckUtils]: 21: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,972 INFO L273 TraceCheckUtils]: 22: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,973 INFO L273 TraceCheckUtils]: 23: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,973 INFO L273 TraceCheckUtils]: 24: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,973 INFO L273 TraceCheckUtils]: 25: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,973 INFO L273 TraceCheckUtils]: 26: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,973 INFO L273 TraceCheckUtils]: 27: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,973 INFO L273 TraceCheckUtils]: 28: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,973 INFO L273 TraceCheckUtils]: 29: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,973 INFO L273 TraceCheckUtils]: 30: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,973 INFO L273 TraceCheckUtils]: 31: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,973 INFO L273 TraceCheckUtils]: 32: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,974 INFO L273 TraceCheckUtils]: 33: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,974 INFO L273 TraceCheckUtils]: 34: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,974 INFO L273 TraceCheckUtils]: 35: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,974 INFO L273 TraceCheckUtils]: 36: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,974 INFO L273 TraceCheckUtils]: 37: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,974 INFO L273 TraceCheckUtils]: 38: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,974 INFO L273 TraceCheckUtils]: 39: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,974 INFO L273 TraceCheckUtils]: 40: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,974 INFO L273 TraceCheckUtils]: 41: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,974 INFO L273 TraceCheckUtils]: 42: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,975 INFO L273 TraceCheckUtils]: 43: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,975 INFO L273 TraceCheckUtils]: 44: Hoare triple {22176#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {22176#true} is VALID [2018-11-23 12:17:01,975 INFO L273 TraceCheckUtils]: 45: Hoare triple {22176#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {22176#true} is VALID [2018-11-23 12:17:01,975 INFO L273 TraceCheckUtils]: 46: Hoare triple {22176#true} assume !(~i~1 < 20); {22176#true} is VALID [2018-11-23 12:17:01,975 INFO L256 TraceCheckUtils]: 47: Hoare triple {22176#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {22176#true} is VALID [2018-11-23 12:17:01,975 INFO L273 TraceCheckUtils]: 48: Hoare triple {22176#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {22176#true} is VALID [2018-11-23 12:17:01,975 INFO L273 TraceCheckUtils]: 49: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,975 INFO L273 TraceCheckUtils]: 50: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,975 INFO L273 TraceCheckUtils]: 51: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,976 INFO L273 TraceCheckUtils]: 52: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,976 INFO L273 TraceCheckUtils]: 53: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,976 INFO L273 TraceCheckUtils]: 54: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,976 INFO L273 TraceCheckUtils]: 55: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,976 INFO L273 TraceCheckUtils]: 56: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,976 INFO L273 TraceCheckUtils]: 57: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,976 INFO L273 TraceCheckUtils]: 58: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,976 INFO L273 TraceCheckUtils]: 59: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,976 INFO L273 TraceCheckUtils]: 60: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,976 INFO L273 TraceCheckUtils]: 61: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,977 INFO L273 TraceCheckUtils]: 62: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,977 INFO L273 TraceCheckUtils]: 63: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,977 INFO L273 TraceCheckUtils]: 64: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,977 INFO L273 TraceCheckUtils]: 65: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,977 INFO L273 TraceCheckUtils]: 66: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,977 INFO L273 TraceCheckUtils]: 67: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,977 INFO L273 TraceCheckUtils]: 68: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,977 INFO L273 TraceCheckUtils]: 69: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,977 INFO L273 TraceCheckUtils]: 70: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,977 INFO L273 TraceCheckUtils]: 71: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,978 INFO L273 TraceCheckUtils]: 72: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,978 INFO L273 TraceCheckUtils]: 73: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,978 INFO L273 TraceCheckUtils]: 74: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,978 INFO L273 TraceCheckUtils]: 75: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,978 INFO L273 TraceCheckUtils]: 76: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,978 INFO L273 TraceCheckUtils]: 77: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,978 INFO L273 TraceCheckUtils]: 78: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,978 INFO L273 TraceCheckUtils]: 79: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,978 INFO L273 TraceCheckUtils]: 80: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,978 INFO L273 TraceCheckUtils]: 81: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,979 INFO L273 TraceCheckUtils]: 82: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,979 INFO L273 TraceCheckUtils]: 83: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,979 INFO L273 TraceCheckUtils]: 84: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,979 INFO L273 TraceCheckUtils]: 85: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,979 INFO L273 TraceCheckUtils]: 86: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,979 INFO L273 TraceCheckUtils]: 87: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,979 INFO L273 TraceCheckUtils]: 88: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,979 INFO L273 TraceCheckUtils]: 89: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,979 INFO L273 TraceCheckUtils]: 90: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,979 INFO L273 TraceCheckUtils]: 91: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,980 INFO L273 TraceCheckUtils]: 92: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,980 INFO L273 TraceCheckUtils]: 93: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,980 INFO L273 TraceCheckUtils]: 94: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,980 INFO L273 TraceCheckUtils]: 95: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,980 INFO L273 TraceCheckUtils]: 96: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,980 INFO L273 TraceCheckUtils]: 97: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,980 INFO L273 TraceCheckUtils]: 98: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,980 INFO L273 TraceCheckUtils]: 99: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,980 INFO L273 TraceCheckUtils]: 100: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,980 INFO L273 TraceCheckUtils]: 101: Hoare triple {22176#true} assume !(~i~0 < 20); {22176#true} is VALID [2018-11-23 12:17:01,981 INFO L273 TraceCheckUtils]: 102: Hoare triple {22176#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {22176#true} is VALID [2018-11-23 12:17:01,981 INFO L273 TraceCheckUtils]: 103: Hoare triple {22176#true} assume true; {22176#true} is VALID [2018-11-23 12:17:01,981 INFO L268 TraceCheckUtils]: 104: Hoare quadruple {22176#true} {22176#true} #77#return; {22176#true} is VALID [2018-11-23 12:17:01,981 INFO L273 TraceCheckUtils]: 105: Hoare triple {22176#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {22176#true} is VALID [2018-11-23 12:17:01,981 INFO L256 TraceCheckUtils]: 106: Hoare triple {22176#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {22176#true} is VALID [2018-11-23 12:17:01,981 INFO L273 TraceCheckUtils]: 107: Hoare triple {22176#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {22176#true} is VALID [2018-11-23 12:17:01,981 INFO L273 TraceCheckUtils]: 108: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,981 INFO L273 TraceCheckUtils]: 109: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,981 INFO L273 TraceCheckUtils]: 110: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,981 INFO L273 TraceCheckUtils]: 111: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,982 INFO L273 TraceCheckUtils]: 112: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,982 INFO L273 TraceCheckUtils]: 113: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,982 INFO L273 TraceCheckUtils]: 114: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,982 INFO L273 TraceCheckUtils]: 115: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,982 INFO L273 TraceCheckUtils]: 116: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,982 INFO L273 TraceCheckUtils]: 117: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,982 INFO L273 TraceCheckUtils]: 118: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,982 INFO L273 TraceCheckUtils]: 119: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,982 INFO L273 TraceCheckUtils]: 120: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,982 INFO L273 TraceCheckUtils]: 121: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,983 INFO L273 TraceCheckUtils]: 122: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,983 INFO L273 TraceCheckUtils]: 123: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,983 INFO L273 TraceCheckUtils]: 124: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,983 INFO L273 TraceCheckUtils]: 125: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,983 INFO L273 TraceCheckUtils]: 126: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,983 INFO L273 TraceCheckUtils]: 127: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,983 INFO L273 TraceCheckUtils]: 128: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,983 INFO L273 TraceCheckUtils]: 129: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,983 INFO L273 TraceCheckUtils]: 130: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,983 INFO L273 TraceCheckUtils]: 131: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,984 INFO L273 TraceCheckUtils]: 132: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,984 INFO L273 TraceCheckUtils]: 133: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,984 INFO L273 TraceCheckUtils]: 134: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,984 INFO L273 TraceCheckUtils]: 135: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,984 INFO L273 TraceCheckUtils]: 136: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,984 INFO L273 TraceCheckUtils]: 137: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,984 INFO L273 TraceCheckUtils]: 138: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,984 INFO L273 TraceCheckUtils]: 139: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,984 INFO L273 TraceCheckUtils]: 140: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,985 INFO L273 TraceCheckUtils]: 141: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,985 INFO L273 TraceCheckUtils]: 142: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,985 INFO L273 TraceCheckUtils]: 143: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,985 INFO L273 TraceCheckUtils]: 144: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,985 INFO L273 TraceCheckUtils]: 145: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,985 INFO L273 TraceCheckUtils]: 146: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,985 INFO L273 TraceCheckUtils]: 147: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,985 INFO L273 TraceCheckUtils]: 148: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,985 INFO L273 TraceCheckUtils]: 149: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,985 INFO L273 TraceCheckUtils]: 150: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,986 INFO L273 TraceCheckUtils]: 151: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,986 INFO L273 TraceCheckUtils]: 152: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,986 INFO L273 TraceCheckUtils]: 153: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,986 INFO L273 TraceCheckUtils]: 154: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,986 INFO L273 TraceCheckUtils]: 155: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,986 INFO L273 TraceCheckUtils]: 156: Hoare triple {22176#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22176#true} is VALID [2018-11-23 12:17:01,986 INFO L273 TraceCheckUtils]: 157: Hoare triple {22176#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22176#true} is VALID [2018-11-23 12:17:01,986 INFO L273 TraceCheckUtils]: 158: Hoare triple {22176#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22176#true} is VALID [2018-11-23 12:17:01,986 INFO L273 TraceCheckUtils]: 159: Hoare triple {22176#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22176#true} is VALID [2018-11-23 12:17:01,986 INFO L273 TraceCheckUtils]: 160: Hoare triple {22176#true} assume !(~i~0 < 20); {22176#true} is VALID [2018-11-23 12:17:01,987 INFO L273 TraceCheckUtils]: 161: Hoare triple {22176#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {22176#true} is VALID [2018-11-23 12:17:01,987 INFO L273 TraceCheckUtils]: 162: Hoare triple {22176#true} assume true; {22176#true} is VALID [2018-11-23 12:17:01,987 INFO L268 TraceCheckUtils]: 163: Hoare quadruple {22176#true} {22176#true} #79#return; {22176#true} is VALID [2018-11-23 12:17:01,987 INFO L273 TraceCheckUtils]: 164: Hoare triple {22176#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {22687#(<= main_~i~2 0)} is VALID [2018-11-23 12:17:01,988 INFO L273 TraceCheckUtils]: 165: Hoare triple {22687#(<= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {22687#(<= main_~i~2 0)} is VALID [2018-11-23 12:17:01,988 INFO L273 TraceCheckUtils]: 166: Hoare triple {22687#(<= main_~i~2 0)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {22694#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:01,988 INFO L273 TraceCheckUtils]: 167: Hoare triple {22694#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {22694#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:01,989 INFO L273 TraceCheckUtils]: 168: Hoare triple {22694#(<= main_~i~2 1)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {22701#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:01,989 INFO L273 TraceCheckUtils]: 169: Hoare triple {22701#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {22701#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:01,990 INFO L273 TraceCheckUtils]: 170: Hoare triple {22701#(<= main_~i~2 2)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {22708#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:01,990 INFO L273 TraceCheckUtils]: 171: Hoare triple {22708#(<= main_~i~2 3)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {22708#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:01,991 INFO L273 TraceCheckUtils]: 172: Hoare triple {22708#(<= main_~i~2 3)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {22715#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:01,991 INFO L273 TraceCheckUtils]: 173: Hoare triple {22715#(<= main_~i~2 4)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {22715#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:01,992 INFO L273 TraceCheckUtils]: 174: Hoare triple {22715#(<= main_~i~2 4)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {22722#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:01,992 INFO L273 TraceCheckUtils]: 175: Hoare triple {22722#(<= main_~i~2 5)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {22722#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:01,993 INFO L273 TraceCheckUtils]: 176: Hoare triple {22722#(<= main_~i~2 5)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {22729#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:01,994 INFO L273 TraceCheckUtils]: 177: Hoare triple {22729#(<= main_~i~2 6)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {22729#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:01,994 INFO L273 TraceCheckUtils]: 178: Hoare triple {22729#(<= main_~i~2 6)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {22736#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:01,995 INFO L273 TraceCheckUtils]: 179: Hoare triple {22736#(<= main_~i~2 7)} assume !(~i~2 < 19); {22177#false} is VALID [2018-11-23 12:17:01,995 INFO L273 TraceCheckUtils]: 180: Hoare triple {22177#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {22177#false} is VALID [2018-11-23 12:17:01,995 INFO L256 TraceCheckUtils]: 181: Hoare triple {22177#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {22177#false} is VALID [2018-11-23 12:17:01,996 INFO L273 TraceCheckUtils]: 182: Hoare triple {22177#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {22177#false} is VALID [2018-11-23 12:17:01,996 INFO L273 TraceCheckUtils]: 183: Hoare triple {22177#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22177#false} is VALID [2018-11-23 12:17:01,996 INFO L273 TraceCheckUtils]: 184: Hoare triple {22177#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22177#false} is VALID [2018-11-23 12:17:01,996 INFO L273 TraceCheckUtils]: 185: Hoare triple {22177#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22177#false} is VALID [2018-11-23 12:17:01,996 INFO L273 TraceCheckUtils]: 186: Hoare triple {22177#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22177#false} is VALID [2018-11-23 12:17:01,996 INFO L273 TraceCheckUtils]: 187: Hoare triple {22177#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22177#false} is VALID [2018-11-23 12:17:01,997 INFO L273 TraceCheckUtils]: 188: Hoare triple {22177#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22177#false} is VALID [2018-11-23 12:17:01,997 INFO L273 TraceCheckUtils]: 189: Hoare triple {22177#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22177#false} is VALID [2018-11-23 12:17:01,997 INFO L273 TraceCheckUtils]: 190: Hoare triple {22177#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22177#false} is VALID [2018-11-23 12:17:01,997 INFO L273 TraceCheckUtils]: 191: Hoare triple {22177#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22177#false} is VALID [2018-11-23 12:17:01,997 INFO L273 TraceCheckUtils]: 192: Hoare triple {22177#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22177#false} is VALID [2018-11-23 12:17:01,997 INFO L273 TraceCheckUtils]: 193: Hoare triple {22177#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22177#false} is VALID [2018-11-23 12:17:01,998 INFO L273 TraceCheckUtils]: 194: Hoare triple {22177#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22177#false} is VALID [2018-11-23 12:17:01,998 INFO L273 TraceCheckUtils]: 195: Hoare triple {22177#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22177#false} is VALID [2018-11-23 12:17:01,998 INFO L273 TraceCheckUtils]: 196: Hoare triple {22177#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22177#false} is VALID [2018-11-23 12:17:01,998 INFO L273 TraceCheckUtils]: 197: Hoare triple {22177#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22177#false} is VALID [2018-11-23 12:17:01,998 INFO L273 TraceCheckUtils]: 198: Hoare triple {22177#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22177#false} is VALID [2018-11-23 12:17:01,998 INFO L273 TraceCheckUtils]: 199: Hoare triple {22177#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22177#false} is VALID [2018-11-23 12:17:01,998 INFO L273 TraceCheckUtils]: 200: Hoare triple {22177#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22177#false} is VALID [2018-11-23 12:17:01,998 INFO L273 TraceCheckUtils]: 201: Hoare triple {22177#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22177#false} is VALID [2018-11-23 12:17:01,998 INFO L273 TraceCheckUtils]: 202: Hoare triple {22177#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22177#false} is VALID [2018-11-23 12:17:01,998 INFO L273 TraceCheckUtils]: 203: Hoare triple {22177#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22177#false} is VALID [2018-11-23 12:17:01,999 INFO L273 TraceCheckUtils]: 204: Hoare triple {22177#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22177#false} is VALID [2018-11-23 12:17:01,999 INFO L273 TraceCheckUtils]: 205: Hoare triple {22177#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22177#false} is VALID [2018-11-23 12:17:01,999 INFO L273 TraceCheckUtils]: 206: Hoare triple {22177#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22177#false} is VALID [2018-11-23 12:17:01,999 INFO L273 TraceCheckUtils]: 207: Hoare triple {22177#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22177#false} is VALID [2018-11-23 12:17:01,999 INFO L273 TraceCheckUtils]: 208: Hoare triple {22177#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22177#false} is VALID [2018-11-23 12:17:01,999 INFO L273 TraceCheckUtils]: 209: Hoare triple {22177#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22177#false} is VALID [2018-11-23 12:17:01,999 INFO L273 TraceCheckUtils]: 210: Hoare triple {22177#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22177#false} is VALID [2018-11-23 12:17:01,999 INFO L273 TraceCheckUtils]: 211: Hoare triple {22177#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22177#false} is VALID [2018-11-23 12:17:01,999 INFO L273 TraceCheckUtils]: 212: Hoare triple {22177#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22177#false} is VALID [2018-11-23 12:17:01,999 INFO L273 TraceCheckUtils]: 213: Hoare triple {22177#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22177#false} is VALID [2018-11-23 12:17:02,000 INFO L273 TraceCheckUtils]: 214: Hoare triple {22177#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22177#false} is VALID [2018-11-23 12:17:02,000 INFO L273 TraceCheckUtils]: 215: Hoare triple {22177#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22177#false} is VALID [2018-11-23 12:17:02,000 INFO L273 TraceCheckUtils]: 216: Hoare triple {22177#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22177#false} is VALID [2018-11-23 12:17:02,000 INFO L273 TraceCheckUtils]: 217: Hoare triple {22177#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22177#false} is VALID [2018-11-23 12:17:02,000 INFO L273 TraceCheckUtils]: 218: Hoare triple {22177#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22177#false} is VALID [2018-11-23 12:17:02,000 INFO L273 TraceCheckUtils]: 219: Hoare triple {22177#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22177#false} is VALID [2018-11-23 12:17:02,000 INFO L273 TraceCheckUtils]: 220: Hoare triple {22177#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22177#false} is VALID [2018-11-23 12:17:02,000 INFO L273 TraceCheckUtils]: 221: Hoare triple {22177#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22177#false} is VALID [2018-11-23 12:17:02,000 INFO L273 TraceCheckUtils]: 222: Hoare triple {22177#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22177#false} is VALID [2018-11-23 12:17:02,000 INFO L273 TraceCheckUtils]: 223: Hoare triple {22177#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22177#false} is VALID [2018-11-23 12:17:02,001 INFO L273 TraceCheckUtils]: 224: Hoare triple {22177#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22177#false} is VALID [2018-11-23 12:17:02,001 INFO L273 TraceCheckUtils]: 225: Hoare triple {22177#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22177#false} is VALID [2018-11-23 12:17:02,001 INFO L273 TraceCheckUtils]: 226: Hoare triple {22177#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22177#false} is VALID [2018-11-23 12:17:02,001 INFO L273 TraceCheckUtils]: 227: Hoare triple {22177#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22177#false} is VALID [2018-11-23 12:17:02,001 INFO L273 TraceCheckUtils]: 228: Hoare triple {22177#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22177#false} is VALID [2018-11-23 12:17:02,001 INFO L273 TraceCheckUtils]: 229: Hoare triple {22177#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22177#false} is VALID [2018-11-23 12:17:02,001 INFO L273 TraceCheckUtils]: 230: Hoare triple {22177#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22177#false} is VALID [2018-11-23 12:17:02,001 INFO L273 TraceCheckUtils]: 231: Hoare triple {22177#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {22177#false} is VALID [2018-11-23 12:17:02,001 INFO L273 TraceCheckUtils]: 232: Hoare triple {22177#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {22177#false} is VALID [2018-11-23 12:17:02,001 INFO L273 TraceCheckUtils]: 233: Hoare triple {22177#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {22177#false} is VALID [2018-11-23 12:17:02,002 INFO L273 TraceCheckUtils]: 234: Hoare triple {22177#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {22177#false} is VALID [2018-11-23 12:17:02,002 INFO L273 TraceCheckUtils]: 235: Hoare triple {22177#false} assume !(~i~0 < 20); {22177#false} is VALID [2018-11-23 12:17:02,002 INFO L273 TraceCheckUtils]: 236: Hoare triple {22177#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {22177#false} is VALID [2018-11-23 12:17:02,002 INFO L273 TraceCheckUtils]: 237: Hoare triple {22177#false} assume true; {22177#false} is VALID [2018-11-23 12:17:02,002 INFO L268 TraceCheckUtils]: 238: Hoare quadruple {22177#false} {22177#false} #81#return; {22177#false} is VALID [2018-11-23 12:17:02,002 INFO L273 TraceCheckUtils]: 239: Hoare triple {22177#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {22177#false} is VALID [2018-11-23 12:17:02,002 INFO L273 TraceCheckUtils]: 240: Hoare triple {22177#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {22177#false} is VALID [2018-11-23 12:17:02,002 INFO L273 TraceCheckUtils]: 241: Hoare triple {22177#false} assume !false; {22177#false} is VALID [2018-11-23 12:17:02,023 INFO L134 CoverageAnalysis]: Checked inductivity of 3545 backedges. 1414 proven. 49 refuted. 0 times theorem prover too weak. 2082 trivial. 0 not checked. [2018-11-23 12:17:02,042 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:17:02,042 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 10] total 24 [2018-11-23 12:17:02,042 INFO L78 Accepts]: Start accepts. Automaton has 24 states. Word has length 242 [2018-11-23 12:17:02,043 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:17:02,043 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 24 states. [2018-11-23 12:17:02,192 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:17:02,192 INFO L459 AbstractCegarLoop]: Interpolant automaton has 24 states [2018-11-23 12:17:02,193 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2018-11-23 12:17:02,193 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=164, Invalid=388, Unknown=0, NotChecked=0, Total=552 [2018-11-23 12:17:02,193 INFO L87 Difference]: Start difference. First operand 129 states and 146 transitions. Second operand 24 states. [2018-11-23 12:17:02,864 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:02,864 INFO L93 Difference]: Finished difference Result 220 states and 259 transitions. [2018-11-23 12:17:02,865 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2018-11-23 12:17:02,865 INFO L78 Accepts]: Start accepts. Automaton has 24 states. Word has length 242 [2018-11-23 12:17:02,865 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:17:02,865 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 24 states. [2018-11-23 12:17:02,866 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 146 transitions. [2018-11-23 12:17:02,866 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 24 states. [2018-11-23 12:17:02,868 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 146 transitions. [2018-11-23 12:17:02,868 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 24 states and 146 transitions. [2018-11-23 12:17:02,999 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 146 edges. 146 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:17:03,002 INFO L225 Difference]: With dead ends: 220 [2018-11-23 12:17:03,002 INFO L226 Difference]: Without dead ends: 139 [2018-11-23 12:17:03,003 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 257 GetRequests, 235 SyntacticMatches, 0 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 104 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=164, Invalid=388, Unknown=0, NotChecked=0, Total=552 [2018-11-23 12:17:03,004 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 139 states. [2018-11-23 12:17:03,068 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 139 to 135. [2018-11-23 12:17:03,068 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:17:03,068 INFO L82 GeneralOperation]: Start isEquivalent. First operand 139 states. Second operand 135 states. [2018-11-23 12:17:03,068 INFO L74 IsIncluded]: Start isIncluded. First operand 139 states. Second operand 135 states. [2018-11-23 12:17:03,068 INFO L87 Difference]: Start difference. First operand 139 states. Second operand 135 states. [2018-11-23 12:17:03,071 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:03,071 INFO L93 Difference]: Finished difference Result 139 states and 158 transitions. [2018-11-23 12:17:03,071 INFO L276 IsEmpty]: Start isEmpty. Operand 139 states and 158 transitions. [2018-11-23 12:17:03,071 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:03,071 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:03,071 INFO L74 IsIncluded]: Start isIncluded. First operand 135 states. Second operand 139 states. [2018-11-23 12:17:03,071 INFO L87 Difference]: Start difference. First operand 135 states. Second operand 139 states. [2018-11-23 12:17:03,073 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:03,073 INFO L93 Difference]: Finished difference Result 139 states and 158 transitions. [2018-11-23 12:17:03,074 INFO L276 IsEmpty]: Start isEmpty. Operand 139 states and 158 transitions. [2018-11-23 12:17:03,074 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:03,074 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:03,074 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:17:03,074 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:17:03,074 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 135 states. [2018-11-23 12:17:03,077 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 135 states to 135 states and 153 transitions. [2018-11-23 12:17:03,077 INFO L78 Accepts]: Start accepts. Automaton has 135 states and 153 transitions. Word has length 242 [2018-11-23 12:17:03,077 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:17:03,078 INFO L480 AbstractCegarLoop]: Abstraction has 135 states and 153 transitions. [2018-11-23 12:17:03,078 INFO L481 AbstractCegarLoop]: Interpolant automaton has 24 states. [2018-11-23 12:17:03,078 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 153 transitions. [2018-11-23 12:17:03,079 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 257 [2018-11-23 12:17:03,079 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:17:03,079 INFO L402 BasicCegarLoop]: trace histogram [42, 42, 42, 42, 20, 20, 8, 8, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:17:03,080 INFO L423 AbstractCegarLoop]: === Iteration 31 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:17:03,080 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:17:03,080 INFO L82 PathProgramCache]: Analyzing trace with hash 1719183645, now seen corresponding path program 28 times [2018-11-23 12:17:03,080 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:17:03,080 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:17:03,081 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:03,081 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:17:03,081 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:03,127 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:03,765 INFO L256 TraceCheckUtils]: 0: Hoare triple {23689#true} call ULTIMATE.init(); {23689#true} is VALID [2018-11-23 12:17:03,765 INFO L273 TraceCheckUtils]: 1: Hoare triple {23689#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {23689#true} is VALID [2018-11-23 12:17:03,766 INFO L273 TraceCheckUtils]: 2: Hoare triple {23689#true} assume true; {23689#true} is VALID [2018-11-23 12:17:03,766 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {23689#true} {23689#true} #73#return; {23689#true} is VALID [2018-11-23 12:17:03,766 INFO L256 TraceCheckUtils]: 4: Hoare triple {23689#true} call #t~ret14 := main(); {23689#true} is VALID [2018-11-23 12:17:03,766 INFO L273 TraceCheckUtils]: 5: Hoare triple {23689#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {23689#true} is VALID [2018-11-23 12:17:03,766 INFO L273 TraceCheckUtils]: 6: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:03,767 INFO L273 TraceCheckUtils]: 7: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:03,767 INFO L273 TraceCheckUtils]: 8: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:03,767 INFO L273 TraceCheckUtils]: 9: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:03,767 INFO L273 TraceCheckUtils]: 10: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:03,768 INFO L273 TraceCheckUtils]: 11: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:03,768 INFO L273 TraceCheckUtils]: 12: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:03,768 INFO L273 TraceCheckUtils]: 13: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:03,768 INFO L273 TraceCheckUtils]: 14: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:03,768 INFO L273 TraceCheckUtils]: 15: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:03,768 INFO L273 TraceCheckUtils]: 16: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:03,769 INFO L273 TraceCheckUtils]: 17: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:03,769 INFO L273 TraceCheckUtils]: 18: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:03,769 INFO L273 TraceCheckUtils]: 19: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:03,769 INFO L273 TraceCheckUtils]: 20: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:03,769 INFO L273 TraceCheckUtils]: 21: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:03,769 INFO L273 TraceCheckUtils]: 22: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:03,769 INFO L273 TraceCheckUtils]: 23: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:03,770 INFO L273 TraceCheckUtils]: 24: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:03,770 INFO L273 TraceCheckUtils]: 25: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:03,770 INFO L273 TraceCheckUtils]: 26: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:03,770 INFO L273 TraceCheckUtils]: 27: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:03,770 INFO L273 TraceCheckUtils]: 28: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:03,770 INFO L273 TraceCheckUtils]: 29: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:03,771 INFO L273 TraceCheckUtils]: 30: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:03,771 INFO L273 TraceCheckUtils]: 31: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:03,771 INFO L273 TraceCheckUtils]: 32: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:03,771 INFO L273 TraceCheckUtils]: 33: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:03,771 INFO L273 TraceCheckUtils]: 34: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:03,771 INFO L273 TraceCheckUtils]: 35: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:03,771 INFO L273 TraceCheckUtils]: 36: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:03,771 INFO L273 TraceCheckUtils]: 37: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:03,772 INFO L273 TraceCheckUtils]: 38: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:03,772 INFO L273 TraceCheckUtils]: 39: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:03,772 INFO L273 TraceCheckUtils]: 40: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:03,772 INFO L273 TraceCheckUtils]: 41: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:03,772 INFO L273 TraceCheckUtils]: 42: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:03,772 INFO L273 TraceCheckUtils]: 43: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:03,772 INFO L273 TraceCheckUtils]: 44: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:03,772 INFO L273 TraceCheckUtils]: 45: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:03,772 INFO L273 TraceCheckUtils]: 46: Hoare triple {23689#true} assume !(~i~1 < 20); {23689#true} is VALID [2018-11-23 12:17:03,772 INFO L256 TraceCheckUtils]: 47: Hoare triple {23689#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {23689#true} is VALID [2018-11-23 12:17:03,773 INFO L273 TraceCheckUtils]: 48: Hoare triple {23689#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {23691#(= max_~i~0 0)} is VALID [2018-11-23 12:17:03,773 INFO L273 TraceCheckUtils]: 49: Hoare triple {23691#(= max_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23691#(= max_~i~0 0)} is VALID [2018-11-23 12:17:03,773 INFO L273 TraceCheckUtils]: 50: Hoare triple {23691#(= max_~i~0 0)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23691#(= max_~i~0 0)} is VALID [2018-11-23 12:17:03,774 INFO L273 TraceCheckUtils]: 51: Hoare triple {23691#(= max_~i~0 0)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23691#(= max_~i~0 0)} is VALID [2018-11-23 12:17:03,774 INFO L273 TraceCheckUtils]: 52: Hoare triple {23691#(= max_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23692#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:03,774 INFO L273 TraceCheckUtils]: 53: Hoare triple {23692#(<= max_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23692#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:03,775 INFO L273 TraceCheckUtils]: 54: Hoare triple {23692#(<= max_~i~0 1)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23692#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:03,775 INFO L273 TraceCheckUtils]: 55: Hoare triple {23692#(<= max_~i~0 1)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23692#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:03,775 INFO L273 TraceCheckUtils]: 56: Hoare triple {23692#(<= max_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23693#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:03,776 INFO L273 TraceCheckUtils]: 57: Hoare triple {23693#(<= max_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23693#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:03,776 INFO L273 TraceCheckUtils]: 58: Hoare triple {23693#(<= max_~i~0 2)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23693#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:03,777 INFO L273 TraceCheckUtils]: 59: Hoare triple {23693#(<= max_~i~0 2)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23693#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:03,777 INFO L273 TraceCheckUtils]: 60: Hoare triple {23693#(<= max_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23694#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:03,778 INFO L273 TraceCheckUtils]: 61: Hoare triple {23694#(<= max_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23694#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:03,778 INFO L273 TraceCheckUtils]: 62: Hoare triple {23694#(<= max_~i~0 3)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23694#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:03,779 INFO L273 TraceCheckUtils]: 63: Hoare triple {23694#(<= max_~i~0 3)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23694#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:03,780 INFO L273 TraceCheckUtils]: 64: Hoare triple {23694#(<= max_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23695#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:03,780 INFO L273 TraceCheckUtils]: 65: Hoare triple {23695#(<= max_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23695#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:03,781 INFO L273 TraceCheckUtils]: 66: Hoare triple {23695#(<= max_~i~0 4)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23695#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:03,781 INFO L273 TraceCheckUtils]: 67: Hoare triple {23695#(<= max_~i~0 4)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23695#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:03,782 INFO L273 TraceCheckUtils]: 68: Hoare triple {23695#(<= max_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23696#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:03,782 INFO L273 TraceCheckUtils]: 69: Hoare triple {23696#(<= max_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23696#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:03,783 INFO L273 TraceCheckUtils]: 70: Hoare triple {23696#(<= max_~i~0 5)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23696#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:03,783 INFO L273 TraceCheckUtils]: 71: Hoare triple {23696#(<= max_~i~0 5)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23696#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:03,784 INFO L273 TraceCheckUtils]: 72: Hoare triple {23696#(<= max_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23697#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:03,785 INFO L273 TraceCheckUtils]: 73: Hoare triple {23697#(<= max_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23697#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:03,785 INFO L273 TraceCheckUtils]: 74: Hoare triple {23697#(<= max_~i~0 6)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23697#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:03,786 INFO L273 TraceCheckUtils]: 75: Hoare triple {23697#(<= max_~i~0 6)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23697#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:03,786 INFO L273 TraceCheckUtils]: 76: Hoare triple {23697#(<= max_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23698#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:03,787 INFO L273 TraceCheckUtils]: 77: Hoare triple {23698#(<= max_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23698#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:03,787 INFO L273 TraceCheckUtils]: 78: Hoare triple {23698#(<= max_~i~0 7)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23698#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:03,788 INFO L273 TraceCheckUtils]: 79: Hoare triple {23698#(<= max_~i~0 7)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23698#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:03,788 INFO L273 TraceCheckUtils]: 80: Hoare triple {23698#(<= max_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23699#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:03,789 INFO L273 TraceCheckUtils]: 81: Hoare triple {23699#(<= max_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23699#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:03,789 INFO L273 TraceCheckUtils]: 82: Hoare triple {23699#(<= max_~i~0 8)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23699#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:03,790 INFO L273 TraceCheckUtils]: 83: Hoare triple {23699#(<= max_~i~0 8)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23699#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:03,791 INFO L273 TraceCheckUtils]: 84: Hoare triple {23699#(<= max_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23700#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:03,791 INFO L273 TraceCheckUtils]: 85: Hoare triple {23700#(<= max_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23700#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:03,792 INFO L273 TraceCheckUtils]: 86: Hoare triple {23700#(<= max_~i~0 9)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23700#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:03,792 INFO L273 TraceCheckUtils]: 87: Hoare triple {23700#(<= max_~i~0 9)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23700#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:03,793 INFO L273 TraceCheckUtils]: 88: Hoare triple {23700#(<= max_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23701#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:03,793 INFO L273 TraceCheckUtils]: 89: Hoare triple {23701#(<= max_~i~0 10)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23701#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:03,794 INFO L273 TraceCheckUtils]: 90: Hoare triple {23701#(<= max_~i~0 10)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23701#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:03,794 INFO L273 TraceCheckUtils]: 91: Hoare triple {23701#(<= max_~i~0 10)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23701#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:03,795 INFO L273 TraceCheckUtils]: 92: Hoare triple {23701#(<= max_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23702#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:03,796 INFO L273 TraceCheckUtils]: 93: Hoare triple {23702#(<= max_~i~0 11)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23702#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:03,796 INFO L273 TraceCheckUtils]: 94: Hoare triple {23702#(<= max_~i~0 11)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23702#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:03,797 INFO L273 TraceCheckUtils]: 95: Hoare triple {23702#(<= max_~i~0 11)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23702#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:03,797 INFO L273 TraceCheckUtils]: 96: Hoare triple {23702#(<= max_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23703#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:03,798 INFO L273 TraceCheckUtils]: 97: Hoare triple {23703#(<= max_~i~0 12)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23703#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:03,798 INFO L273 TraceCheckUtils]: 98: Hoare triple {23703#(<= max_~i~0 12)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23703#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:03,799 INFO L273 TraceCheckUtils]: 99: Hoare triple {23703#(<= max_~i~0 12)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23703#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:03,800 INFO L273 TraceCheckUtils]: 100: Hoare triple {23703#(<= max_~i~0 12)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23704#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:03,800 INFO L273 TraceCheckUtils]: 101: Hoare triple {23704#(<= max_~i~0 13)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23704#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:03,801 INFO L273 TraceCheckUtils]: 102: Hoare triple {23704#(<= max_~i~0 13)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23704#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:03,801 INFO L273 TraceCheckUtils]: 103: Hoare triple {23704#(<= max_~i~0 13)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23704#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:03,802 INFO L273 TraceCheckUtils]: 104: Hoare triple {23704#(<= max_~i~0 13)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23705#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:03,802 INFO L273 TraceCheckUtils]: 105: Hoare triple {23705#(<= max_~i~0 14)} assume !(~i~0 < 20); {23690#false} is VALID [2018-11-23 12:17:03,802 INFO L273 TraceCheckUtils]: 106: Hoare triple {23690#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {23690#false} is VALID [2018-11-23 12:17:03,803 INFO L273 TraceCheckUtils]: 107: Hoare triple {23690#false} assume true; {23690#false} is VALID [2018-11-23 12:17:03,803 INFO L268 TraceCheckUtils]: 108: Hoare quadruple {23690#false} {23689#true} #77#return; {23690#false} is VALID [2018-11-23 12:17:03,803 INFO L273 TraceCheckUtils]: 109: Hoare triple {23690#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {23690#false} is VALID [2018-11-23 12:17:03,803 INFO L256 TraceCheckUtils]: 110: Hoare triple {23690#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {23689#true} is VALID [2018-11-23 12:17:03,803 INFO L273 TraceCheckUtils]: 111: Hoare triple {23689#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {23689#true} is VALID [2018-11-23 12:17:03,803 INFO L273 TraceCheckUtils]: 112: Hoare triple {23689#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23689#true} is VALID [2018-11-23 12:17:03,804 INFO L273 TraceCheckUtils]: 113: Hoare triple {23689#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23689#true} is VALID [2018-11-23 12:17:03,804 INFO L273 TraceCheckUtils]: 114: Hoare triple {23689#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23689#true} is VALID [2018-11-23 12:17:03,804 INFO L273 TraceCheckUtils]: 115: Hoare triple {23689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23689#true} is VALID [2018-11-23 12:17:03,804 INFO L273 TraceCheckUtils]: 116: Hoare triple {23689#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23689#true} is VALID [2018-11-23 12:17:03,804 INFO L273 TraceCheckUtils]: 117: Hoare triple {23689#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23689#true} is VALID [2018-11-23 12:17:03,804 INFO L273 TraceCheckUtils]: 118: Hoare triple {23689#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23689#true} is VALID [2018-11-23 12:17:03,805 INFO L273 TraceCheckUtils]: 119: Hoare triple {23689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23689#true} is VALID [2018-11-23 12:17:03,805 INFO L273 TraceCheckUtils]: 120: Hoare triple {23689#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23689#true} is VALID [2018-11-23 12:17:03,805 INFO L273 TraceCheckUtils]: 121: Hoare triple {23689#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23689#true} is VALID [2018-11-23 12:17:03,805 INFO L273 TraceCheckUtils]: 122: Hoare triple {23689#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23689#true} is VALID [2018-11-23 12:17:03,805 INFO L273 TraceCheckUtils]: 123: Hoare triple {23689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23689#true} is VALID [2018-11-23 12:17:03,806 INFO L273 TraceCheckUtils]: 124: Hoare triple {23689#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23689#true} is VALID [2018-11-23 12:17:03,806 INFO L273 TraceCheckUtils]: 125: Hoare triple {23689#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23689#true} is VALID [2018-11-23 12:17:03,806 INFO L273 TraceCheckUtils]: 126: Hoare triple {23689#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23689#true} is VALID [2018-11-23 12:17:03,806 INFO L273 TraceCheckUtils]: 127: Hoare triple {23689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23689#true} is VALID [2018-11-23 12:17:03,806 INFO L273 TraceCheckUtils]: 128: Hoare triple {23689#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23689#true} is VALID [2018-11-23 12:17:03,806 INFO L273 TraceCheckUtils]: 129: Hoare triple {23689#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23689#true} is VALID [2018-11-23 12:17:03,806 INFO L273 TraceCheckUtils]: 130: Hoare triple {23689#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23689#true} is VALID [2018-11-23 12:17:03,806 INFO L273 TraceCheckUtils]: 131: Hoare triple {23689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23689#true} is VALID [2018-11-23 12:17:03,806 INFO L273 TraceCheckUtils]: 132: Hoare triple {23689#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23689#true} is VALID [2018-11-23 12:17:03,807 INFO L273 TraceCheckUtils]: 133: Hoare triple {23689#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23689#true} is VALID [2018-11-23 12:17:03,807 INFO L273 TraceCheckUtils]: 134: Hoare triple {23689#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23689#true} is VALID [2018-11-23 12:17:03,807 INFO L273 TraceCheckUtils]: 135: Hoare triple {23689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23689#true} is VALID [2018-11-23 12:17:03,807 INFO L273 TraceCheckUtils]: 136: Hoare triple {23689#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23689#true} is VALID [2018-11-23 12:17:03,807 INFO L273 TraceCheckUtils]: 137: Hoare triple {23689#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23689#true} is VALID [2018-11-23 12:17:03,807 INFO L273 TraceCheckUtils]: 138: Hoare triple {23689#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23689#true} is VALID [2018-11-23 12:17:03,807 INFO L273 TraceCheckUtils]: 139: Hoare triple {23689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23689#true} is VALID [2018-11-23 12:17:03,807 INFO L273 TraceCheckUtils]: 140: Hoare triple {23689#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23689#true} is VALID [2018-11-23 12:17:03,807 INFO L273 TraceCheckUtils]: 141: Hoare triple {23689#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23689#true} is VALID [2018-11-23 12:17:03,807 INFO L273 TraceCheckUtils]: 142: Hoare triple {23689#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23689#true} is VALID [2018-11-23 12:17:03,808 INFO L273 TraceCheckUtils]: 143: Hoare triple {23689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23689#true} is VALID [2018-11-23 12:17:03,808 INFO L273 TraceCheckUtils]: 144: Hoare triple {23689#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23689#true} is VALID [2018-11-23 12:17:03,808 INFO L273 TraceCheckUtils]: 145: Hoare triple {23689#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23689#true} is VALID [2018-11-23 12:17:03,808 INFO L273 TraceCheckUtils]: 146: Hoare triple {23689#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23689#true} is VALID [2018-11-23 12:17:03,808 INFO L273 TraceCheckUtils]: 147: Hoare triple {23689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23689#true} is VALID [2018-11-23 12:17:03,808 INFO L273 TraceCheckUtils]: 148: Hoare triple {23689#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23689#true} is VALID [2018-11-23 12:17:03,808 INFO L273 TraceCheckUtils]: 149: Hoare triple {23689#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23689#true} is VALID [2018-11-23 12:17:03,808 INFO L273 TraceCheckUtils]: 150: Hoare triple {23689#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23689#true} is VALID [2018-11-23 12:17:03,808 INFO L273 TraceCheckUtils]: 151: Hoare triple {23689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23689#true} is VALID [2018-11-23 12:17:03,809 INFO L273 TraceCheckUtils]: 152: Hoare triple {23689#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23689#true} is VALID [2018-11-23 12:17:03,809 INFO L273 TraceCheckUtils]: 153: Hoare triple {23689#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23689#true} is VALID [2018-11-23 12:17:03,809 INFO L273 TraceCheckUtils]: 154: Hoare triple {23689#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23689#true} is VALID [2018-11-23 12:17:03,809 INFO L273 TraceCheckUtils]: 155: Hoare triple {23689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23689#true} is VALID [2018-11-23 12:17:03,809 INFO L273 TraceCheckUtils]: 156: Hoare triple {23689#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23689#true} is VALID [2018-11-23 12:17:03,809 INFO L273 TraceCheckUtils]: 157: Hoare triple {23689#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23689#true} is VALID [2018-11-23 12:17:03,809 INFO L273 TraceCheckUtils]: 158: Hoare triple {23689#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23689#true} is VALID [2018-11-23 12:17:03,809 INFO L273 TraceCheckUtils]: 159: Hoare triple {23689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23689#true} is VALID [2018-11-23 12:17:03,809 INFO L273 TraceCheckUtils]: 160: Hoare triple {23689#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23689#true} is VALID [2018-11-23 12:17:03,809 INFO L273 TraceCheckUtils]: 161: Hoare triple {23689#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23689#true} is VALID [2018-11-23 12:17:03,810 INFO L273 TraceCheckUtils]: 162: Hoare triple {23689#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23689#true} is VALID [2018-11-23 12:17:03,810 INFO L273 TraceCheckUtils]: 163: Hoare triple {23689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23689#true} is VALID [2018-11-23 12:17:03,810 INFO L273 TraceCheckUtils]: 164: Hoare triple {23689#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23689#true} is VALID [2018-11-23 12:17:03,810 INFO L273 TraceCheckUtils]: 165: Hoare triple {23689#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23689#true} is VALID [2018-11-23 12:17:03,810 INFO L273 TraceCheckUtils]: 166: Hoare triple {23689#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23689#true} is VALID [2018-11-23 12:17:03,810 INFO L273 TraceCheckUtils]: 167: Hoare triple {23689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23689#true} is VALID [2018-11-23 12:17:03,810 INFO L273 TraceCheckUtils]: 168: Hoare triple {23689#true} assume !(~i~0 < 20); {23689#true} is VALID [2018-11-23 12:17:03,810 INFO L273 TraceCheckUtils]: 169: Hoare triple {23689#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {23689#true} is VALID [2018-11-23 12:17:03,810 INFO L273 TraceCheckUtils]: 170: Hoare triple {23689#true} assume true; {23689#true} is VALID [2018-11-23 12:17:03,810 INFO L268 TraceCheckUtils]: 171: Hoare quadruple {23689#true} {23690#false} #79#return; {23690#false} is VALID [2018-11-23 12:17:03,811 INFO L273 TraceCheckUtils]: 172: Hoare triple {23690#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {23690#false} is VALID [2018-11-23 12:17:03,811 INFO L273 TraceCheckUtils]: 173: Hoare triple {23690#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {23690#false} is VALID [2018-11-23 12:17:03,811 INFO L273 TraceCheckUtils]: 174: Hoare triple {23690#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {23690#false} is VALID [2018-11-23 12:17:03,811 INFO L273 TraceCheckUtils]: 175: Hoare triple {23690#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {23690#false} is VALID [2018-11-23 12:17:03,811 INFO L273 TraceCheckUtils]: 176: Hoare triple {23690#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {23690#false} is VALID [2018-11-23 12:17:03,811 INFO L273 TraceCheckUtils]: 177: Hoare triple {23690#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {23690#false} is VALID [2018-11-23 12:17:03,811 INFO L273 TraceCheckUtils]: 178: Hoare triple {23690#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {23690#false} is VALID [2018-11-23 12:17:03,811 INFO L273 TraceCheckUtils]: 179: Hoare triple {23690#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {23690#false} is VALID [2018-11-23 12:17:03,811 INFO L273 TraceCheckUtils]: 180: Hoare triple {23690#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {23690#false} is VALID [2018-11-23 12:17:03,811 INFO L273 TraceCheckUtils]: 181: Hoare triple {23690#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {23690#false} is VALID [2018-11-23 12:17:03,812 INFO L273 TraceCheckUtils]: 182: Hoare triple {23690#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {23690#false} is VALID [2018-11-23 12:17:03,812 INFO L273 TraceCheckUtils]: 183: Hoare triple {23690#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {23690#false} is VALID [2018-11-23 12:17:03,812 INFO L273 TraceCheckUtils]: 184: Hoare triple {23690#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {23690#false} is VALID [2018-11-23 12:17:03,812 INFO L273 TraceCheckUtils]: 185: Hoare triple {23690#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {23690#false} is VALID [2018-11-23 12:17:03,812 INFO L273 TraceCheckUtils]: 186: Hoare triple {23690#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {23690#false} is VALID [2018-11-23 12:17:03,812 INFO L273 TraceCheckUtils]: 187: Hoare triple {23690#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {23690#false} is VALID [2018-11-23 12:17:03,812 INFO L273 TraceCheckUtils]: 188: Hoare triple {23690#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {23690#false} is VALID [2018-11-23 12:17:03,812 INFO L273 TraceCheckUtils]: 189: Hoare triple {23690#false} assume !(~i~2 < 19); {23690#false} is VALID [2018-11-23 12:17:03,812 INFO L273 TraceCheckUtils]: 190: Hoare triple {23690#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {23690#false} is VALID [2018-11-23 12:17:03,812 INFO L256 TraceCheckUtils]: 191: Hoare triple {23690#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {23689#true} is VALID [2018-11-23 12:17:03,813 INFO L273 TraceCheckUtils]: 192: Hoare triple {23689#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {23689#true} is VALID [2018-11-23 12:17:03,813 INFO L273 TraceCheckUtils]: 193: Hoare triple {23689#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23689#true} is VALID [2018-11-23 12:17:03,813 INFO L273 TraceCheckUtils]: 194: Hoare triple {23689#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23689#true} is VALID [2018-11-23 12:17:03,813 INFO L273 TraceCheckUtils]: 195: Hoare triple {23689#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23689#true} is VALID [2018-11-23 12:17:03,813 INFO L273 TraceCheckUtils]: 196: Hoare triple {23689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23689#true} is VALID [2018-11-23 12:17:03,813 INFO L273 TraceCheckUtils]: 197: Hoare triple {23689#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23689#true} is VALID [2018-11-23 12:17:03,813 INFO L273 TraceCheckUtils]: 198: Hoare triple {23689#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23689#true} is VALID [2018-11-23 12:17:03,813 INFO L273 TraceCheckUtils]: 199: Hoare triple {23689#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23689#true} is VALID [2018-11-23 12:17:03,813 INFO L273 TraceCheckUtils]: 200: Hoare triple {23689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23689#true} is VALID [2018-11-23 12:17:03,813 INFO L273 TraceCheckUtils]: 201: Hoare triple {23689#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23689#true} is VALID [2018-11-23 12:17:03,814 INFO L273 TraceCheckUtils]: 202: Hoare triple {23689#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23689#true} is VALID [2018-11-23 12:17:03,814 INFO L273 TraceCheckUtils]: 203: Hoare triple {23689#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23689#true} is VALID [2018-11-23 12:17:03,814 INFO L273 TraceCheckUtils]: 204: Hoare triple {23689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23689#true} is VALID [2018-11-23 12:17:03,814 INFO L273 TraceCheckUtils]: 205: Hoare triple {23689#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23689#true} is VALID [2018-11-23 12:17:03,814 INFO L273 TraceCheckUtils]: 206: Hoare triple {23689#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23689#true} is VALID [2018-11-23 12:17:03,814 INFO L273 TraceCheckUtils]: 207: Hoare triple {23689#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23689#true} is VALID [2018-11-23 12:17:03,814 INFO L273 TraceCheckUtils]: 208: Hoare triple {23689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23689#true} is VALID [2018-11-23 12:17:03,814 INFO L273 TraceCheckUtils]: 209: Hoare triple {23689#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23689#true} is VALID [2018-11-23 12:17:03,814 INFO L273 TraceCheckUtils]: 210: Hoare triple {23689#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23689#true} is VALID [2018-11-23 12:17:03,814 INFO L273 TraceCheckUtils]: 211: Hoare triple {23689#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23689#true} is VALID [2018-11-23 12:17:03,815 INFO L273 TraceCheckUtils]: 212: Hoare triple {23689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23689#true} is VALID [2018-11-23 12:17:03,815 INFO L273 TraceCheckUtils]: 213: Hoare triple {23689#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23689#true} is VALID [2018-11-23 12:17:03,815 INFO L273 TraceCheckUtils]: 214: Hoare triple {23689#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23689#true} is VALID [2018-11-23 12:17:03,815 INFO L273 TraceCheckUtils]: 215: Hoare triple {23689#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23689#true} is VALID [2018-11-23 12:17:03,815 INFO L273 TraceCheckUtils]: 216: Hoare triple {23689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23689#true} is VALID [2018-11-23 12:17:03,815 INFO L273 TraceCheckUtils]: 217: Hoare triple {23689#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23689#true} is VALID [2018-11-23 12:17:03,815 INFO L273 TraceCheckUtils]: 218: Hoare triple {23689#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23689#true} is VALID [2018-11-23 12:17:03,815 INFO L273 TraceCheckUtils]: 219: Hoare triple {23689#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23689#true} is VALID [2018-11-23 12:17:03,815 INFO L273 TraceCheckUtils]: 220: Hoare triple {23689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23689#true} is VALID [2018-11-23 12:17:03,815 INFO L273 TraceCheckUtils]: 221: Hoare triple {23689#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23689#true} is VALID [2018-11-23 12:17:03,816 INFO L273 TraceCheckUtils]: 222: Hoare triple {23689#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23689#true} is VALID [2018-11-23 12:17:03,816 INFO L273 TraceCheckUtils]: 223: Hoare triple {23689#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23689#true} is VALID [2018-11-23 12:17:03,816 INFO L273 TraceCheckUtils]: 224: Hoare triple {23689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23689#true} is VALID [2018-11-23 12:17:03,816 INFO L273 TraceCheckUtils]: 225: Hoare triple {23689#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23689#true} is VALID [2018-11-23 12:17:03,816 INFO L273 TraceCheckUtils]: 226: Hoare triple {23689#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23689#true} is VALID [2018-11-23 12:17:03,816 INFO L273 TraceCheckUtils]: 227: Hoare triple {23689#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23689#true} is VALID [2018-11-23 12:17:03,816 INFO L273 TraceCheckUtils]: 228: Hoare triple {23689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23689#true} is VALID [2018-11-23 12:17:03,816 INFO L273 TraceCheckUtils]: 229: Hoare triple {23689#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23689#true} is VALID [2018-11-23 12:17:03,816 INFO L273 TraceCheckUtils]: 230: Hoare triple {23689#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23689#true} is VALID [2018-11-23 12:17:03,817 INFO L273 TraceCheckUtils]: 231: Hoare triple {23689#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23689#true} is VALID [2018-11-23 12:17:03,817 INFO L273 TraceCheckUtils]: 232: Hoare triple {23689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23689#true} is VALID [2018-11-23 12:17:03,817 INFO L273 TraceCheckUtils]: 233: Hoare triple {23689#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23689#true} is VALID [2018-11-23 12:17:03,817 INFO L273 TraceCheckUtils]: 234: Hoare triple {23689#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23689#true} is VALID [2018-11-23 12:17:03,817 INFO L273 TraceCheckUtils]: 235: Hoare triple {23689#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23689#true} is VALID [2018-11-23 12:17:03,817 INFO L273 TraceCheckUtils]: 236: Hoare triple {23689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23689#true} is VALID [2018-11-23 12:17:03,817 INFO L273 TraceCheckUtils]: 237: Hoare triple {23689#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23689#true} is VALID [2018-11-23 12:17:03,817 INFO L273 TraceCheckUtils]: 238: Hoare triple {23689#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23689#true} is VALID [2018-11-23 12:17:03,817 INFO L273 TraceCheckUtils]: 239: Hoare triple {23689#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23689#true} is VALID [2018-11-23 12:17:03,817 INFO L273 TraceCheckUtils]: 240: Hoare triple {23689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23689#true} is VALID [2018-11-23 12:17:03,818 INFO L273 TraceCheckUtils]: 241: Hoare triple {23689#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23689#true} is VALID [2018-11-23 12:17:03,818 INFO L273 TraceCheckUtils]: 242: Hoare triple {23689#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23689#true} is VALID [2018-11-23 12:17:03,818 INFO L273 TraceCheckUtils]: 243: Hoare triple {23689#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23689#true} is VALID [2018-11-23 12:17:03,818 INFO L273 TraceCheckUtils]: 244: Hoare triple {23689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23689#true} is VALID [2018-11-23 12:17:03,818 INFO L273 TraceCheckUtils]: 245: Hoare triple {23689#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23689#true} is VALID [2018-11-23 12:17:03,818 INFO L273 TraceCheckUtils]: 246: Hoare triple {23689#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23689#true} is VALID [2018-11-23 12:17:03,818 INFO L273 TraceCheckUtils]: 247: Hoare triple {23689#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23689#true} is VALID [2018-11-23 12:17:03,818 INFO L273 TraceCheckUtils]: 248: Hoare triple {23689#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23689#true} is VALID [2018-11-23 12:17:03,818 INFO L273 TraceCheckUtils]: 249: Hoare triple {23689#true} assume !(~i~0 < 20); {23689#true} is VALID [2018-11-23 12:17:03,819 INFO L273 TraceCheckUtils]: 250: Hoare triple {23689#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {23689#true} is VALID [2018-11-23 12:17:03,819 INFO L273 TraceCheckUtils]: 251: Hoare triple {23689#true} assume true; {23689#true} is VALID [2018-11-23 12:17:03,819 INFO L268 TraceCheckUtils]: 252: Hoare quadruple {23689#true} {23690#false} #81#return; {23690#false} is VALID [2018-11-23 12:17:03,819 INFO L273 TraceCheckUtils]: 253: Hoare triple {23690#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {23690#false} is VALID [2018-11-23 12:17:03,819 INFO L273 TraceCheckUtils]: 254: Hoare triple {23690#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {23690#false} is VALID [2018-11-23 12:17:03,819 INFO L273 TraceCheckUtils]: 255: Hoare triple {23690#false} assume !false; {23690#false} is VALID [2018-11-23 12:17:03,844 INFO L134 CoverageAnalysis]: Checked inductivity of 4049 backedges. 0 proven. 2010 refuted. 0 times theorem prover too weak. 2039 trivial. 0 not checked. [2018-11-23 12:17:03,844 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:17:03,844 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 30 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 30 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:17:03,855 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 12:17:03,982 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 12:17:03,982 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:17:04,034 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:04,036 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:17:04,373 INFO L256 TraceCheckUtils]: 0: Hoare triple {23689#true} call ULTIMATE.init(); {23689#true} is VALID [2018-11-23 12:17:04,374 INFO L273 TraceCheckUtils]: 1: Hoare triple {23689#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {23689#true} is VALID [2018-11-23 12:17:04,374 INFO L273 TraceCheckUtils]: 2: Hoare triple {23689#true} assume true; {23689#true} is VALID [2018-11-23 12:17:04,374 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {23689#true} {23689#true} #73#return; {23689#true} is VALID [2018-11-23 12:17:04,374 INFO L256 TraceCheckUtils]: 4: Hoare triple {23689#true} call #t~ret14 := main(); {23689#true} is VALID [2018-11-23 12:17:04,374 INFO L273 TraceCheckUtils]: 5: Hoare triple {23689#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {23689#true} is VALID [2018-11-23 12:17:04,375 INFO L273 TraceCheckUtils]: 6: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:04,375 INFO L273 TraceCheckUtils]: 7: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:04,375 INFO L273 TraceCheckUtils]: 8: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:04,375 INFO L273 TraceCheckUtils]: 9: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:04,375 INFO L273 TraceCheckUtils]: 10: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:04,375 INFO L273 TraceCheckUtils]: 11: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:04,376 INFO L273 TraceCheckUtils]: 12: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:04,376 INFO L273 TraceCheckUtils]: 13: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:04,376 INFO L273 TraceCheckUtils]: 14: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:04,376 INFO L273 TraceCheckUtils]: 15: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:04,376 INFO L273 TraceCheckUtils]: 16: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:04,376 INFO L273 TraceCheckUtils]: 17: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:04,376 INFO L273 TraceCheckUtils]: 18: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:04,376 INFO L273 TraceCheckUtils]: 19: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:04,377 INFO L273 TraceCheckUtils]: 20: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:04,377 INFO L273 TraceCheckUtils]: 21: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:04,377 INFO L273 TraceCheckUtils]: 22: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:04,377 INFO L273 TraceCheckUtils]: 23: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:04,377 INFO L273 TraceCheckUtils]: 24: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:04,377 INFO L273 TraceCheckUtils]: 25: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:04,377 INFO L273 TraceCheckUtils]: 26: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:04,377 INFO L273 TraceCheckUtils]: 27: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:04,377 INFO L273 TraceCheckUtils]: 28: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:04,377 INFO L273 TraceCheckUtils]: 29: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:04,378 INFO L273 TraceCheckUtils]: 30: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:04,378 INFO L273 TraceCheckUtils]: 31: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:04,378 INFO L273 TraceCheckUtils]: 32: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:04,378 INFO L273 TraceCheckUtils]: 33: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:04,378 INFO L273 TraceCheckUtils]: 34: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:04,378 INFO L273 TraceCheckUtils]: 35: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:04,378 INFO L273 TraceCheckUtils]: 36: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:04,378 INFO L273 TraceCheckUtils]: 37: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:04,378 INFO L273 TraceCheckUtils]: 38: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:04,378 INFO L273 TraceCheckUtils]: 39: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:04,379 INFO L273 TraceCheckUtils]: 40: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:04,379 INFO L273 TraceCheckUtils]: 41: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:04,379 INFO L273 TraceCheckUtils]: 42: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:04,379 INFO L273 TraceCheckUtils]: 43: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:04,379 INFO L273 TraceCheckUtils]: 44: Hoare triple {23689#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {23689#true} is VALID [2018-11-23 12:17:04,379 INFO L273 TraceCheckUtils]: 45: Hoare triple {23689#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {23689#true} is VALID [2018-11-23 12:17:04,379 INFO L273 TraceCheckUtils]: 46: Hoare triple {23689#true} assume !(~i~1 < 20); {23689#true} is VALID [2018-11-23 12:17:04,379 INFO L256 TraceCheckUtils]: 47: Hoare triple {23689#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {23689#true} is VALID [2018-11-23 12:17:04,380 INFO L273 TraceCheckUtils]: 48: Hoare triple {23689#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {23853#(<= max_~i~0 0)} is VALID [2018-11-23 12:17:04,380 INFO L273 TraceCheckUtils]: 49: Hoare triple {23853#(<= max_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23853#(<= max_~i~0 0)} is VALID [2018-11-23 12:17:04,380 INFO L273 TraceCheckUtils]: 50: Hoare triple {23853#(<= max_~i~0 0)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23853#(<= max_~i~0 0)} is VALID [2018-11-23 12:17:04,381 INFO L273 TraceCheckUtils]: 51: Hoare triple {23853#(<= max_~i~0 0)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23853#(<= max_~i~0 0)} is VALID [2018-11-23 12:17:04,381 INFO L273 TraceCheckUtils]: 52: Hoare triple {23853#(<= max_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23692#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:04,381 INFO L273 TraceCheckUtils]: 53: Hoare triple {23692#(<= max_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23692#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:04,382 INFO L273 TraceCheckUtils]: 54: Hoare triple {23692#(<= max_~i~0 1)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23692#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:04,382 INFO L273 TraceCheckUtils]: 55: Hoare triple {23692#(<= max_~i~0 1)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23692#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:04,382 INFO L273 TraceCheckUtils]: 56: Hoare triple {23692#(<= max_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23693#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:04,383 INFO L273 TraceCheckUtils]: 57: Hoare triple {23693#(<= max_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23693#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:04,383 INFO L273 TraceCheckUtils]: 58: Hoare triple {23693#(<= max_~i~0 2)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23693#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:04,383 INFO L273 TraceCheckUtils]: 59: Hoare triple {23693#(<= max_~i~0 2)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23693#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:04,384 INFO L273 TraceCheckUtils]: 60: Hoare triple {23693#(<= max_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23694#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:04,384 INFO L273 TraceCheckUtils]: 61: Hoare triple {23694#(<= max_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23694#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:04,385 INFO L273 TraceCheckUtils]: 62: Hoare triple {23694#(<= max_~i~0 3)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23694#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:04,385 INFO L273 TraceCheckUtils]: 63: Hoare triple {23694#(<= max_~i~0 3)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23694#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:04,386 INFO L273 TraceCheckUtils]: 64: Hoare triple {23694#(<= max_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23695#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:04,387 INFO L273 TraceCheckUtils]: 65: Hoare triple {23695#(<= max_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23695#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:04,387 INFO L273 TraceCheckUtils]: 66: Hoare triple {23695#(<= max_~i~0 4)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23695#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:04,388 INFO L273 TraceCheckUtils]: 67: Hoare triple {23695#(<= max_~i~0 4)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23695#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:04,388 INFO L273 TraceCheckUtils]: 68: Hoare triple {23695#(<= max_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23696#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:04,389 INFO L273 TraceCheckUtils]: 69: Hoare triple {23696#(<= max_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23696#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:04,389 INFO L273 TraceCheckUtils]: 70: Hoare triple {23696#(<= max_~i~0 5)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23696#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:04,390 INFO L273 TraceCheckUtils]: 71: Hoare triple {23696#(<= max_~i~0 5)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23696#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:04,390 INFO L273 TraceCheckUtils]: 72: Hoare triple {23696#(<= max_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23697#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:04,391 INFO L273 TraceCheckUtils]: 73: Hoare triple {23697#(<= max_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23697#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:04,391 INFO L273 TraceCheckUtils]: 74: Hoare triple {23697#(<= max_~i~0 6)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23697#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:04,392 INFO L273 TraceCheckUtils]: 75: Hoare triple {23697#(<= max_~i~0 6)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23697#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:04,392 INFO L273 TraceCheckUtils]: 76: Hoare triple {23697#(<= max_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23698#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:04,393 INFO L273 TraceCheckUtils]: 77: Hoare triple {23698#(<= max_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23698#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:04,393 INFO L273 TraceCheckUtils]: 78: Hoare triple {23698#(<= max_~i~0 7)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23698#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:04,394 INFO L273 TraceCheckUtils]: 79: Hoare triple {23698#(<= max_~i~0 7)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23698#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:04,395 INFO L273 TraceCheckUtils]: 80: Hoare triple {23698#(<= max_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23699#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:04,395 INFO L273 TraceCheckUtils]: 81: Hoare triple {23699#(<= max_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23699#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:04,395 INFO L273 TraceCheckUtils]: 82: Hoare triple {23699#(<= max_~i~0 8)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23699#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:04,396 INFO L273 TraceCheckUtils]: 83: Hoare triple {23699#(<= max_~i~0 8)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23699#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:04,397 INFO L273 TraceCheckUtils]: 84: Hoare triple {23699#(<= max_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23700#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:04,397 INFO L273 TraceCheckUtils]: 85: Hoare triple {23700#(<= max_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23700#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:04,398 INFO L273 TraceCheckUtils]: 86: Hoare triple {23700#(<= max_~i~0 9)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23700#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:04,398 INFO L273 TraceCheckUtils]: 87: Hoare triple {23700#(<= max_~i~0 9)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23700#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:04,399 INFO L273 TraceCheckUtils]: 88: Hoare triple {23700#(<= max_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23701#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:04,399 INFO L273 TraceCheckUtils]: 89: Hoare triple {23701#(<= max_~i~0 10)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23701#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:04,400 INFO L273 TraceCheckUtils]: 90: Hoare triple {23701#(<= max_~i~0 10)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23701#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:04,400 INFO L273 TraceCheckUtils]: 91: Hoare triple {23701#(<= max_~i~0 10)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23701#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:04,401 INFO L273 TraceCheckUtils]: 92: Hoare triple {23701#(<= max_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23702#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:04,401 INFO L273 TraceCheckUtils]: 93: Hoare triple {23702#(<= max_~i~0 11)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23702#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:04,402 INFO L273 TraceCheckUtils]: 94: Hoare triple {23702#(<= max_~i~0 11)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23702#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:04,402 INFO L273 TraceCheckUtils]: 95: Hoare triple {23702#(<= max_~i~0 11)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23702#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:04,403 INFO L273 TraceCheckUtils]: 96: Hoare triple {23702#(<= max_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23703#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:04,403 INFO L273 TraceCheckUtils]: 97: Hoare triple {23703#(<= max_~i~0 12)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23703#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:04,404 INFO L273 TraceCheckUtils]: 98: Hoare triple {23703#(<= max_~i~0 12)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23703#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:04,404 INFO L273 TraceCheckUtils]: 99: Hoare triple {23703#(<= max_~i~0 12)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23703#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:04,405 INFO L273 TraceCheckUtils]: 100: Hoare triple {23703#(<= max_~i~0 12)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23704#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:04,405 INFO L273 TraceCheckUtils]: 101: Hoare triple {23704#(<= max_~i~0 13)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23704#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:04,406 INFO L273 TraceCheckUtils]: 102: Hoare triple {23704#(<= max_~i~0 13)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23704#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:04,406 INFO L273 TraceCheckUtils]: 103: Hoare triple {23704#(<= max_~i~0 13)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23704#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:04,407 INFO L273 TraceCheckUtils]: 104: Hoare triple {23704#(<= max_~i~0 13)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23705#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:04,407 INFO L273 TraceCheckUtils]: 105: Hoare triple {23705#(<= max_~i~0 14)} assume !(~i~0 < 20); {23690#false} is VALID [2018-11-23 12:17:04,408 INFO L273 TraceCheckUtils]: 106: Hoare triple {23690#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {23690#false} is VALID [2018-11-23 12:17:04,408 INFO L273 TraceCheckUtils]: 107: Hoare triple {23690#false} assume true; {23690#false} is VALID [2018-11-23 12:17:04,408 INFO L268 TraceCheckUtils]: 108: Hoare quadruple {23690#false} {23689#true} #77#return; {23690#false} is VALID [2018-11-23 12:17:04,408 INFO L273 TraceCheckUtils]: 109: Hoare triple {23690#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {23690#false} is VALID [2018-11-23 12:17:04,408 INFO L256 TraceCheckUtils]: 110: Hoare triple {23690#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {23690#false} is VALID [2018-11-23 12:17:04,409 INFO L273 TraceCheckUtils]: 111: Hoare triple {23690#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {23690#false} is VALID [2018-11-23 12:17:04,409 INFO L273 TraceCheckUtils]: 112: Hoare triple {23690#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23690#false} is VALID [2018-11-23 12:17:04,409 INFO L273 TraceCheckUtils]: 113: Hoare triple {23690#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23690#false} is VALID [2018-11-23 12:17:04,409 INFO L273 TraceCheckUtils]: 114: Hoare triple {23690#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23690#false} is VALID [2018-11-23 12:17:04,409 INFO L273 TraceCheckUtils]: 115: Hoare triple {23690#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23690#false} is VALID [2018-11-23 12:17:04,409 INFO L273 TraceCheckUtils]: 116: Hoare triple {23690#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23690#false} is VALID [2018-11-23 12:17:04,410 INFO L273 TraceCheckUtils]: 117: Hoare triple {23690#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23690#false} is VALID [2018-11-23 12:17:04,410 INFO L273 TraceCheckUtils]: 118: Hoare triple {23690#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23690#false} is VALID [2018-11-23 12:17:04,410 INFO L273 TraceCheckUtils]: 119: Hoare triple {23690#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23690#false} is VALID [2018-11-23 12:17:04,410 INFO L273 TraceCheckUtils]: 120: Hoare triple {23690#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23690#false} is VALID [2018-11-23 12:17:04,410 INFO L273 TraceCheckUtils]: 121: Hoare triple {23690#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23690#false} is VALID [2018-11-23 12:17:04,410 INFO L273 TraceCheckUtils]: 122: Hoare triple {23690#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23690#false} is VALID [2018-11-23 12:17:04,411 INFO L273 TraceCheckUtils]: 123: Hoare triple {23690#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23690#false} is VALID [2018-11-23 12:17:04,411 INFO L273 TraceCheckUtils]: 124: Hoare triple {23690#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23690#false} is VALID [2018-11-23 12:17:04,411 INFO L273 TraceCheckUtils]: 125: Hoare triple {23690#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23690#false} is VALID [2018-11-23 12:17:04,411 INFO L273 TraceCheckUtils]: 126: Hoare triple {23690#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23690#false} is VALID [2018-11-23 12:17:04,411 INFO L273 TraceCheckUtils]: 127: Hoare triple {23690#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23690#false} is VALID [2018-11-23 12:17:04,411 INFO L273 TraceCheckUtils]: 128: Hoare triple {23690#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23690#false} is VALID [2018-11-23 12:17:04,412 INFO L273 TraceCheckUtils]: 129: Hoare triple {23690#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23690#false} is VALID [2018-11-23 12:17:04,412 INFO L273 TraceCheckUtils]: 130: Hoare triple {23690#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23690#false} is VALID [2018-11-23 12:17:04,412 INFO L273 TraceCheckUtils]: 131: Hoare triple {23690#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23690#false} is VALID [2018-11-23 12:17:04,412 INFO L273 TraceCheckUtils]: 132: Hoare triple {23690#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23690#false} is VALID [2018-11-23 12:17:04,412 INFO L273 TraceCheckUtils]: 133: Hoare triple {23690#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23690#false} is VALID [2018-11-23 12:17:04,412 INFO L273 TraceCheckUtils]: 134: Hoare triple {23690#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23690#false} is VALID [2018-11-23 12:17:04,413 INFO L273 TraceCheckUtils]: 135: Hoare triple {23690#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23690#false} is VALID [2018-11-23 12:17:04,413 INFO L273 TraceCheckUtils]: 136: Hoare triple {23690#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23690#false} is VALID [2018-11-23 12:17:04,413 INFO L273 TraceCheckUtils]: 137: Hoare triple {23690#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23690#false} is VALID [2018-11-23 12:17:04,413 INFO L273 TraceCheckUtils]: 138: Hoare triple {23690#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23690#false} is VALID [2018-11-23 12:17:04,413 INFO L273 TraceCheckUtils]: 139: Hoare triple {23690#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23690#false} is VALID [2018-11-23 12:17:04,413 INFO L273 TraceCheckUtils]: 140: Hoare triple {23690#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23690#false} is VALID [2018-11-23 12:17:04,413 INFO L273 TraceCheckUtils]: 141: Hoare triple {23690#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23690#false} is VALID [2018-11-23 12:17:04,413 INFO L273 TraceCheckUtils]: 142: Hoare triple {23690#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23690#false} is VALID [2018-11-23 12:17:04,414 INFO L273 TraceCheckUtils]: 143: Hoare triple {23690#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23690#false} is VALID [2018-11-23 12:17:04,414 INFO L273 TraceCheckUtils]: 144: Hoare triple {23690#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23690#false} is VALID [2018-11-23 12:17:04,414 INFO L273 TraceCheckUtils]: 145: Hoare triple {23690#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23690#false} is VALID [2018-11-23 12:17:04,414 INFO L273 TraceCheckUtils]: 146: Hoare triple {23690#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23690#false} is VALID [2018-11-23 12:17:04,414 INFO L273 TraceCheckUtils]: 147: Hoare triple {23690#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23690#false} is VALID [2018-11-23 12:17:04,414 INFO L273 TraceCheckUtils]: 148: Hoare triple {23690#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23690#false} is VALID [2018-11-23 12:17:04,414 INFO L273 TraceCheckUtils]: 149: Hoare triple {23690#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23690#false} is VALID [2018-11-23 12:17:04,414 INFO L273 TraceCheckUtils]: 150: Hoare triple {23690#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23690#false} is VALID [2018-11-23 12:17:04,414 INFO L273 TraceCheckUtils]: 151: Hoare triple {23690#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23690#false} is VALID [2018-11-23 12:17:04,414 INFO L273 TraceCheckUtils]: 152: Hoare triple {23690#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23690#false} is VALID [2018-11-23 12:17:04,415 INFO L273 TraceCheckUtils]: 153: Hoare triple {23690#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23690#false} is VALID [2018-11-23 12:17:04,415 INFO L273 TraceCheckUtils]: 154: Hoare triple {23690#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23690#false} is VALID [2018-11-23 12:17:04,415 INFO L273 TraceCheckUtils]: 155: Hoare triple {23690#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23690#false} is VALID [2018-11-23 12:17:04,415 INFO L273 TraceCheckUtils]: 156: Hoare triple {23690#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23690#false} is VALID [2018-11-23 12:17:04,415 INFO L273 TraceCheckUtils]: 157: Hoare triple {23690#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23690#false} is VALID [2018-11-23 12:17:04,415 INFO L273 TraceCheckUtils]: 158: Hoare triple {23690#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23690#false} is VALID [2018-11-23 12:17:04,415 INFO L273 TraceCheckUtils]: 159: Hoare triple {23690#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23690#false} is VALID [2018-11-23 12:17:04,415 INFO L273 TraceCheckUtils]: 160: Hoare triple {23690#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23690#false} is VALID [2018-11-23 12:17:04,415 INFO L273 TraceCheckUtils]: 161: Hoare triple {23690#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23690#false} is VALID [2018-11-23 12:17:04,415 INFO L273 TraceCheckUtils]: 162: Hoare triple {23690#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23690#false} is VALID [2018-11-23 12:17:04,416 INFO L273 TraceCheckUtils]: 163: Hoare triple {23690#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23690#false} is VALID [2018-11-23 12:17:04,416 INFO L273 TraceCheckUtils]: 164: Hoare triple {23690#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23690#false} is VALID [2018-11-23 12:17:04,416 INFO L273 TraceCheckUtils]: 165: Hoare triple {23690#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23690#false} is VALID [2018-11-23 12:17:04,416 INFO L273 TraceCheckUtils]: 166: Hoare triple {23690#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23690#false} is VALID [2018-11-23 12:17:04,416 INFO L273 TraceCheckUtils]: 167: Hoare triple {23690#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23690#false} is VALID [2018-11-23 12:17:04,416 INFO L273 TraceCheckUtils]: 168: Hoare triple {23690#false} assume !(~i~0 < 20); {23690#false} is VALID [2018-11-23 12:17:04,416 INFO L273 TraceCheckUtils]: 169: Hoare triple {23690#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {23690#false} is VALID [2018-11-23 12:17:04,416 INFO L273 TraceCheckUtils]: 170: Hoare triple {23690#false} assume true; {23690#false} is VALID [2018-11-23 12:17:04,416 INFO L268 TraceCheckUtils]: 171: Hoare quadruple {23690#false} {23690#false} #79#return; {23690#false} is VALID [2018-11-23 12:17:04,416 INFO L273 TraceCheckUtils]: 172: Hoare triple {23690#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {23690#false} is VALID [2018-11-23 12:17:04,417 INFO L273 TraceCheckUtils]: 173: Hoare triple {23690#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {23690#false} is VALID [2018-11-23 12:17:04,417 INFO L273 TraceCheckUtils]: 174: Hoare triple {23690#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {23690#false} is VALID [2018-11-23 12:17:04,417 INFO L273 TraceCheckUtils]: 175: Hoare triple {23690#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {23690#false} is VALID [2018-11-23 12:17:04,417 INFO L273 TraceCheckUtils]: 176: Hoare triple {23690#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {23690#false} is VALID [2018-11-23 12:17:04,417 INFO L273 TraceCheckUtils]: 177: Hoare triple {23690#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {23690#false} is VALID [2018-11-23 12:17:04,417 INFO L273 TraceCheckUtils]: 178: Hoare triple {23690#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {23690#false} is VALID [2018-11-23 12:17:04,417 INFO L273 TraceCheckUtils]: 179: Hoare triple {23690#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {23690#false} is VALID [2018-11-23 12:17:04,417 INFO L273 TraceCheckUtils]: 180: Hoare triple {23690#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {23690#false} is VALID [2018-11-23 12:17:04,417 INFO L273 TraceCheckUtils]: 181: Hoare triple {23690#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {23690#false} is VALID [2018-11-23 12:17:04,417 INFO L273 TraceCheckUtils]: 182: Hoare triple {23690#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {23690#false} is VALID [2018-11-23 12:17:04,418 INFO L273 TraceCheckUtils]: 183: Hoare triple {23690#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {23690#false} is VALID [2018-11-23 12:17:04,418 INFO L273 TraceCheckUtils]: 184: Hoare triple {23690#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {23690#false} is VALID [2018-11-23 12:17:04,418 INFO L273 TraceCheckUtils]: 185: Hoare triple {23690#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {23690#false} is VALID [2018-11-23 12:17:04,418 INFO L273 TraceCheckUtils]: 186: Hoare triple {23690#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {23690#false} is VALID [2018-11-23 12:17:04,418 INFO L273 TraceCheckUtils]: 187: Hoare triple {23690#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {23690#false} is VALID [2018-11-23 12:17:04,418 INFO L273 TraceCheckUtils]: 188: Hoare triple {23690#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {23690#false} is VALID [2018-11-23 12:17:04,418 INFO L273 TraceCheckUtils]: 189: Hoare triple {23690#false} assume !(~i~2 < 19); {23690#false} is VALID [2018-11-23 12:17:04,418 INFO L273 TraceCheckUtils]: 190: Hoare triple {23690#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {23690#false} is VALID [2018-11-23 12:17:04,418 INFO L256 TraceCheckUtils]: 191: Hoare triple {23690#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {23690#false} is VALID [2018-11-23 12:17:04,418 INFO L273 TraceCheckUtils]: 192: Hoare triple {23690#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {23690#false} is VALID [2018-11-23 12:17:04,419 INFO L273 TraceCheckUtils]: 193: Hoare triple {23690#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23690#false} is VALID [2018-11-23 12:17:04,419 INFO L273 TraceCheckUtils]: 194: Hoare triple {23690#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23690#false} is VALID [2018-11-23 12:17:04,419 INFO L273 TraceCheckUtils]: 195: Hoare triple {23690#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23690#false} is VALID [2018-11-23 12:17:04,419 INFO L273 TraceCheckUtils]: 196: Hoare triple {23690#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23690#false} is VALID [2018-11-23 12:17:04,419 INFO L273 TraceCheckUtils]: 197: Hoare triple {23690#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23690#false} is VALID [2018-11-23 12:17:04,419 INFO L273 TraceCheckUtils]: 198: Hoare triple {23690#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23690#false} is VALID [2018-11-23 12:17:04,419 INFO L273 TraceCheckUtils]: 199: Hoare triple {23690#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23690#false} is VALID [2018-11-23 12:17:04,419 INFO L273 TraceCheckUtils]: 200: Hoare triple {23690#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23690#false} is VALID [2018-11-23 12:17:04,419 INFO L273 TraceCheckUtils]: 201: Hoare triple {23690#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23690#false} is VALID [2018-11-23 12:17:04,419 INFO L273 TraceCheckUtils]: 202: Hoare triple {23690#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23690#false} is VALID [2018-11-23 12:17:04,420 INFO L273 TraceCheckUtils]: 203: Hoare triple {23690#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23690#false} is VALID [2018-11-23 12:17:04,420 INFO L273 TraceCheckUtils]: 204: Hoare triple {23690#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23690#false} is VALID [2018-11-23 12:17:04,420 INFO L273 TraceCheckUtils]: 205: Hoare triple {23690#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23690#false} is VALID [2018-11-23 12:17:04,420 INFO L273 TraceCheckUtils]: 206: Hoare triple {23690#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23690#false} is VALID [2018-11-23 12:17:04,420 INFO L273 TraceCheckUtils]: 207: Hoare triple {23690#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23690#false} is VALID [2018-11-23 12:17:04,420 INFO L273 TraceCheckUtils]: 208: Hoare triple {23690#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23690#false} is VALID [2018-11-23 12:17:04,420 INFO L273 TraceCheckUtils]: 209: Hoare triple {23690#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23690#false} is VALID [2018-11-23 12:17:04,420 INFO L273 TraceCheckUtils]: 210: Hoare triple {23690#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23690#false} is VALID [2018-11-23 12:17:04,420 INFO L273 TraceCheckUtils]: 211: Hoare triple {23690#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23690#false} is VALID [2018-11-23 12:17:04,421 INFO L273 TraceCheckUtils]: 212: Hoare triple {23690#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23690#false} is VALID [2018-11-23 12:17:04,421 INFO L273 TraceCheckUtils]: 213: Hoare triple {23690#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23690#false} is VALID [2018-11-23 12:17:04,421 INFO L273 TraceCheckUtils]: 214: Hoare triple {23690#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23690#false} is VALID [2018-11-23 12:17:04,421 INFO L273 TraceCheckUtils]: 215: Hoare triple {23690#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23690#false} is VALID [2018-11-23 12:17:04,421 INFO L273 TraceCheckUtils]: 216: Hoare triple {23690#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23690#false} is VALID [2018-11-23 12:17:04,421 INFO L273 TraceCheckUtils]: 217: Hoare triple {23690#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23690#false} is VALID [2018-11-23 12:17:04,421 INFO L273 TraceCheckUtils]: 218: Hoare triple {23690#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23690#false} is VALID [2018-11-23 12:17:04,421 INFO L273 TraceCheckUtils]: 219: Hoare triple {23690#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23690#false} is VALID [2018-11-23 12:17:04,421 INFO L273 TraceCheckUtils]: 220: Hoare triple {23690#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23690#false} is VALID [2018-11-23 12:17:04,421 INFO L273 TraceCheckUtils]: 221: Hoare triple {23690#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23690#false} is VALID [2018-11-23 12:17:04,422 INFO L273 TraceCheckUtils]: 222: Hoare triple {23690#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23690#false} is VALID [2018-11-23 12:17:04,422 INFO L273 TraceCheckUtils]: 223: Hoare triple {23690#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23690#false} is VALID [2018-11-23 12:17:04,422 INFO L273 TraceCheckUtils]: 224: Hoare triple {23690#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23690#false} is VALID [2018-11-23 12:17:04,422 INFO L273 TraceCheckUtils]: 225: Hoare triple {23690#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23690#false} is VALID [2018-11-23 12:17:04,422 INFO L273 TraceCheckUtils]: 226: Hoare triple {23690#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23690#false} is VALID [2018-11-23 12:17:04,422 INFO L273 TraceCheckUtils]: 227: Hoare triple {23690#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23690#false} is VALID [2018-11-23 12:17:04,422 INFO L273 TraceCheckUtils]: 228: Hoare triple {23690#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23690#false} is VALID [2018-11-23 12:17:04,422 INFO L273 TraceCheckUtils]: 229: Hoare triple {23690#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23690#false} is VALID [2018-11-23 12:17:04,422 INFO L273 TraceCheckUtils]: 230: Hoare triple {23690#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23690#false} is VALID [2018-11-23 12:17:04,422 INFO L273 TraceCheckUtils]: 231: Hoare triple {23690#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23690#false} is VALID [2018-11-23 12:17:04,423 INFO L273 TraceCheckUtils]: 232: Hoare triple {23690#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23690#false} is VALID [2018-11-23 12:17:04,423 INFO L273 TraceCheckUtils]: 233: Hoare triple {23690#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23690#false} is VALID [2018-11-23 12:17:04,423 INFO L273 TraceCheckUtils]: 234: Hoare triple {23690#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23690#false} is VALID [2018-11-23 12:17:04,423 INFO L273 TraceCheckUtils]: 235: Hoare triple {23690#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23690#false} is VALID [2018-11-23 12:17:04,423 INFO L273 TraceCheckUtils]: 236: Hoare triple {23690#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23690#false} is VALID [2018-11-23 12:17:04,423 INFO L273 TraceCheckUtils]: 237: Hoare triple {23690#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23690#false} is VALID [2018-11-23 12:17:04,423 INFO L273 TraceCheckUtils]: 238: Hoare triple {23690#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23690#false} is VALID [2018-11-23 12:17:04,423 INFO L273 TraceCheckUtils]: 239: Hoare triple {23690#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23690#false} is VALID [2018-11-23 12:17:04,423 INFO L273 TraceCheckUtils]: 240: Hoare triple {23690#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23690#false} is VALID [2018-11-23 12:17:04,423 INFO L273 TraceCheckUtils]: 241: Hoare triple {23690#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23690#false} is VALID [2018-11-23 12:17:04,424 INFO L273 TraceCheckUtils]: 242: Hoare triple {23690#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23690#false} is VALID [2018-11-23 12:17:04,424 INFO L273 TraceCheckUtils]: 243: Hoare triple {23690#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23690#false} is VALID [2018-11-23 12:17:04,424 INFO L273 TraceCheckUtils]: 244: Hoare triple {23690#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23690#false} is VALID [2018-11-23 12:17:04,424 INFO L273 TraceCheckUtils]: 245: Hoare triple {23690#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {23690#false} is VALID [2018-11-23 12:17:04,424 INFO L273 TraceCheckUtils]: 246: Hoare triple {23690#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {23690#false} is VALID [2018-11-23 12:17:04,424 INFO L273 TraceCheckUtils]: 247: Hoare triple {23690#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {23690#false} is VALID [2018-11-23 12:17:04,424 INFO L273 TraceCheckUtils]: 248: Hoare triple {23690#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {23690#false} is VALID [2018-11-23 12:17:04,424 INFO L273 TraceCheckUtils]: 249: Hoare triple {23690#false} assume !(~i~0 < 20); {23690#false} is VALID [2018-11-23 12:17:04,424 INFO L273 TraceCheckUtils]: 250: Hoare triple {23690#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {23690#false} is VALID [2018-11-23 12:17:04,424 INFO L273 TraceCheckUtils]: 251: Hoare triple {23690#false} assume true; {23690#false} is VALID [2018-11-23 12:17:04,425 INFO L268 TraceCheckUtils]: 252: Hoare quadruple {23690#false} {23690#false} #81#return; {23690#false} is VALID [2018-11-23 12:17:04,425 INFO L273 TraceCheckUtils]: 253: Hoare triple {23690#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {23690#false} is VALID [2018-11-23 12:17:04,425 INFO L273 TraceCheckUtils]: 254: Hoare triple {23690#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {23690#false} is VALID [2018-11-23 12:17:04,425 INFO L273 TraceCheckUtils]: 255: Hoare triple {23690#false} assume !false; {23690#false} is VALID [2018-11-23 12:17:04,451 INFO L134 CoverageAnalysis]: Checked inductivity of 4049 backedges. 1628 proven. 378 refuted. 0 times theorem prover too weak. 2043 trivial. 0 not checked. [2018-11-23 12:17:04,471 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:17:04,472 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 17] total 18 [2018-11-23 12:17:04,472 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 256 [2018-11-23 12:17:04,473 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:17:04,473 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states. [2018-11-23 12:17:04,573 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:17:04,573 INFO L459 AbstractCegarLoop]: Interpolant automaton has 18 states [2018-11-23 12:17:04,573 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2018-11-23 12:17:04,573 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=153, Invalid=153, Unknown=0, NotChecked=0, Total=306 [2018-11-23 12:17:04,574 INFO L87 Difference]: Start difference. First operand 135 states and 153 transitions. Second operand 18 states. [2018-11-23 12:17:05,079 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:05,079 INFO L93 Difference]: Finished difference Result 229 states and 269 transitions. [2018-11-23 12:17:05,079 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2018-11-23 12:17:05,079 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 256 [2018-11-23 12:17:05,080 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:17:05,080 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-23 12:17:05,081 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 134 transitions. [2018-11-23 12:17:05,081 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-23 12:17:05,082 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 134 transitions. [2018-11-23 12:17:05,082 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 134 transitions. [2018-11-23 12:17:05,202 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 134 edges. 134 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:17:05,205 INFO L225 Difference]: With dead ends: 229 [2018-11-23 12:17:05,205 INFO L226 Difference]: Without dead ends: 142 [2018-11-23 12:17:05,206 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 272 GetRequests, 256 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 26 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=153, Invalid=153, Unknown=0, NotChecked=0, Total=306 [2018-11-23 12:17:05,206 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 142 states. [2018-11-23 12:17:05,301 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 142 to 139. [2018-11-23 12:17:05,301 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:17:05,301 INFO L82 GeneralOperation]: Start isEquivalent. First operand 142 states. Second operand 139 states. [2018-11-23 12:17:05,301 INFO L74 IsIncluded]: Start isIncluded. First operand 142 states. Second operand 139 states. [2018-11-23 12:17:05,301 INFO L87 Difference]: Start difference. First operand 142 states. Second operand 139 states. [2018-11-23 12:17:05,304 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:05,304 INFO L93 Difference]: Finished difference Result 142 states and 162 transitions. [2018-11-23 12:17:05,304 INFO L276 IsEmpty]: Start isEmpty. Operand 142 states and 162 transitions. [2018-11-23 12:17:05,304 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:05,305 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:05,305 INFO L74 IsIncluded]: Start isIncluded. First operand 139 states. Second operand 142 states. [2018-11-23 12:17:05,305 INFO L87 Difference]: Start difference. First operand 139 states. Second operand 142 states. [2018-11-23 12:17:05,307 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:05,307 INFO L93 Difference]: Finished difference Result 142 states and 162 transitions. [2018-11-23 12:17:05,308 INFO L276 IsEmpty]: Start isEmpty. Operand 142 states and 162 transitions. [2018-11-23 12:17:05,308 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:05,308 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:05,308 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:17:05,308 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:17:05,309 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 139 states. [2018-11-23 12:17:05,311 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 139 states to 139 states and 158 transitions. [2018-11-23 12:17:05,311 INFO L78 Accepts]: Start accepts. Automaton has 139 states and 158 transitions. Word has length 256 [2018-11-23 12:17:05,311 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:17:05,312 INFO L480 AbstractCegarLoop]: Abstraction has 139 states and 158 transitions. [2018-11-23 12:17:05,312 INFO L481 AbstractCegarLoop]: Interpolant automaton has 18 states. [2018-11-23 12:17:05,312 INFO L276 IsEmpty]: Start isEmpty. Operand 139 states and 158 transitions. [2018-11-23 12:17:05,313 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 269 [2018-11-23 12:17:05,313 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:17:05,314 INFO L402 BasicCegarLoop]: trace histogram [45, 45, 45, 45, 20, 20, 8, 8, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:17:05,314 INFO L423 AbstractCegarLoop]: === Iteration 32 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:17:05,314 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:17:05,314 INFO L82 PathProgramCache]: Analyzing trace with hash 1323327416, now seen corresponding path program 29 times [2018-11-23 12:17:05,314 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:17:05,314 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:17:05,315 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:05,315 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:17:05,315 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:05,359 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:05,639 INFO L256 TraceCheckUtils]: 0: Hoare triple {25261#true} call ULTIMATE.init(); {25261#true} is VALID [2018-11-23 12:17:05,639 INFO L273 TraceCheckUtils]: 1: Hoare triple {25261#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {25261#true} is VALID [2018-11-23 12:17:05,639 INFO L273 TraceCheckUtils]: 2: Hoare triple {25261#true} assume true; {25261#true} is VALID [2018-11-23 12:17:05,640 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {25261#true} {25261#true} #73#return; {25261#true} is VALID [2018-11-23 12:17:05,640 INFO L256 TraceCheckUtils]: 4: Hoare triple {25261#true} call #t~ret14 := main(); {25261#true} is VALID [2018-11-23 12:17:05,640 INFO L273 TraceCheckUtils]: 5: Hoare triple {25261#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {25261#true} is VALID [2018-11-23 12:17:05,640 INFO L273 TraceCheckUtils]: 6: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:05,640 INFO L273 TraceCheckUtils]: 7: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:05,640 INFO L273 TraceCheckUtils]: 8: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:05,641 INFO L273 TraceCheckUtils]: 9: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:05,641 INFO L273 TraceCheckUtils]: 10: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:05,641 INFO L273 TraceCheckUtils]: 11: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:05,641 INFO L273 TraceCheckUtils]: 12: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:05,641 INFO L273 TraceCheckUtils]: 13: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:05,641 INFO L273 TraceCheckUtils]: 14: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:05,642 INFO L273 TraceCheckUtils]: 15: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:05,642 INFO L273 TraceCheckUtils]: 16: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:05,642 INFO L273 TraceCheckUtils]: 17: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:05,642 INFO L273 TraceCheckUtils]: 18: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:05,642 INFO L273 TraceCheckUtils]: 19: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:05,642 INFO L273 TraceCheckUtils]: 20: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:05,642 INFO L273 TraceCheckUtils]: 21: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:05,642 INFO L273 TraceCheckUtils]: 22: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:05,642 INFO L273 TraceCheckUtils]: 23: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:05,642 INFO L273 TraceCheckUtils]: 24: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:05,643 INFO L273 TraceCheckUtils]: 25: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:05,643 INFO L273 TraceCheckUtils]: 26: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:05,643 INFO L273 TraceCheckUtils]: 27: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:05,643 INFO L273 TraceCheckUtils]: 28: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:05,643 INFO L273 TraceCheckUtils]: 29: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:05,643 INFO L273 TraceCheckUtils]: 30: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:05,643 INFO L273 TraceCheckUtils]: 31: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:05,643 INFO L273 TraceCheckUtils]: 32: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:05,643 INFO L273 TraceCheckUtils]: 33: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:05,643 INFO L273 TraceCheckUtils]: 34: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:05,644 INFO L273 TraceCheckUtils]: 35: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:05,644 INFO L273 TraceCheckUtils]: 36: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:05,644 INFO L273 TraceCheckUtils]: 37: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:05,644 INFO L273 TraceCheckUtils]: 38: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:05,644 INFO L273 TraceCheckUtils]: 39: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:05,644 INFO L273 TraceCheckUtils]: 40: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:05,644 INFO L273 TraceCheckUtils]: 41: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:05,644 INFO L273 TraceCheckUtils]: 42: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:05,644 INFO L273 TraceCheckUtils]: 43: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:05,644 INFO L273 TraceCheckUtils]: 44: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:05,645 INFO L273 TraceCheckUtils]: 45: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:05,645 INFO L273 TraceCheckUtils]: 46: Hoare triple {25261#true} assume !(~i~1 < 20); {25261#true} is VALID [2018-11-23 12:17:05,645 INFO L256 TraceCheckUtils]: 47: Hoare triple {25261#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {25261#true} is VALID [2018-11-23 12:17:05,645 INFO L273 TraceCheckUtils]: 48: Hoare triple {25261#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {25263#(= max_~i~0 0)} is VALID [2018-11-23 12:17:05,645 INFO L273 TraceCheckUtils]: 49: Hoare triple {25263#(= max_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25263#(= max_~i~0 0)} is VALID [2018-11-23 12:17:05,646 INFO L273 TraceCheckUtils]: 50: Hoare triple {25263#(= max_~i~0 0)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25263#(= max_~i~0 0)} is VALID [2018-11-23 12:17:05,646 INFO L273 TraceCheckUtils]: 51: Hoare triple {25263#(= max_~i~0 0)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25263#(= max_~i~0 0)} is VALID [2018-11-23 12:17:05,646 INFO L273 TraceCheckUtils]: 52: Hoare triple {25263#(= max_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25264#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:05,647 INFO L273 TraceCheckUtils]: 53: Hoare triple {25264#(<= max_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25264#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:05,647 INFO L273 TraceCheckUtils]: 54: Hoare triple {25264#(<= max_~i~0 1)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25264#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:05,647 INFO L273 TraceCheckUtils]: 55: Hoare triple {25264#(<= max_~i~0 1)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25264#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:05,648 INFO L273 TraceCheckUtils]: 56: Hoare triple {25264#(<= max_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25265#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:05,649 INFO L273 TraceCheckUtils]: 57: Hoare triple {25265#(<= max_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25265#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:05,649 INFO L273 TraceCheckUtils]: 58: Hoare triple {25265#(<= max_~i~0 2)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25265#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:05,649 INFO L273 TraceCheckUtils]: 59: Hoare triple {25265#(<= max_~i~0 2)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25265#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:05,650 INFO L273 TraceCheckUtils]: 60: Hoare triple {25265#(<= max_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25266#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:05,651 INFO L273 TraceCheckUtils]: 61: Hoare triple {25266#(<= max_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25266#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:05,651 INFO L273 TraceCheckUtils]: 62: Hoare triple {25266#(<= max_~i~0 3)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25266#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:05,652 INFO L273 TraceCheckUtils]: 63: Hoare triple {25266#(<= max_~i~0 3)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25266#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:05,652 INFO L273 TraceCheckUtils]: 64: Hoare triple {25266#(<= max_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25267#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:05,653 INFO L273 TraceCheckUtils]: 65: Hoare triple {25267#(<= max_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25267#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:05,653 INFO L273 TraceCheckUtils]: 66: Hoare triple {25267#(<= max_~i~0 4)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25267#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:05,654 INFO L273 TraceCheckUtils]: 67: Hoare triple {25267#(<= max_~i~0 4)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25267#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:05,655 INFO L273 TraceCheckUtils]: 68: Hoare triple {25267#(<= max_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25268#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:05,655 INFO L273 TraceCheckUtils]: 69: Hoare triple {25268#(<= max_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25268#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:05,656 INFO L273 TraceCheckUtils]: 70: Hoare triple {25268#(<= max_~i~0 5)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25268#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:05,656 INFO L273 TraceCheckUtils]: 71: Hoare triple {25268#(<= max_~i~0 5)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25268#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:05,657 INFO L273 TraceCheckUtils]: 72: Hoare triple {25268#(<= max_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25269#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:05,657 INFO L273 TraceCheckUtils]: 73: Hoare triple {25269#(<= max_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25269#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:05,658 INFO L273 TraceCheckUtils]: 74: Hoare triple {25269#(<= max_~i~0 6)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25269#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:05,658 INFO L273 TraceCheckUtils]: 75: Hoare triple {25269#(<= max_~i~0 6)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25269#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:05,659 INFO L273 TraceCheckUtils]: 76: Hoare triple {25269#(<= max_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25270#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:05,660 INFO L273 TraceCheckUtils]: 77: Hoare triple {25270#(<= max_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25270#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:05,660 INFO L273 TraceCheckUtils]: 78: Hoare triple {25270#(<= max_~i~0 7)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25270#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:05,661 INFO L273 TraceCheckUtils]: 79: Hoare triple {25270#(<= max_~i~0 7)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25270#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:05,661 INFO L273 TraceCheckUtils]: 80: Hoare triple {25270#(<= max_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25271#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:05,662 INFO L273 TraceCheckUtils]: 81: Hoare triple {25271#(<= max_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25271#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:05,662 INFO L273 TraceCheckUtils]: 82: Hoare triple {25271#(<= max_~i~0 8)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25271#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:05,663 INFO L273 TraceCheckUtils]: 83: Hoare triple {25271#(<= max_~i~0 8)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25271#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:05,664 INFO L273 TraceCheckUtils]: 84: Hoare triple {25271#(<= max_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25272#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:05,664 INFO L273 TraceCheckUtils]: 85: Hoare triple {25272#(<= max_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25272#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:05,664 INFO L273 TraceCheckUtils]: 86: Hoare triple {25272#(<= max_~i~0 9)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25272#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:05,665 INFO L273 TraceCheckUtils]: 87: Hoare triple {25272#(<= max_~i~0 9)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25272#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:05,666 INFO L273 TraceCheckUtils]: 88: Hoare triple {25272#(<= max_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25273#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:05,666 INFO L273 TraceCheckUtils]: 89: Hoare triple {25273#(<= max_~i~0 10)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25273#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:05,667 INFO L273 TraceCheckUtils]: 90: Hoare triple {25273#(<= max_~i~0 10)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25273#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:05,667 INFO L273 TraceCheckUtils]: 91: Hoare triple {25273#(<= max_~i~0 10)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25273#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:05,668 INFO L273 TraceCheckUtils]: 92: Hoare triple {25273#(<= max_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25274#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:05,668 INFO L273 TraceCheckUtils]: 93: Hoare triple {25274#(<= max_~i~0 11)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25274#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:05,669 INFO L273 TraceCheckUtils]: 94: Hoare triple {25274#(<= max_~i~0 11)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25274#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:05,669 INFO L273 TraceCheckUtils]: 95: Hoare triple {25274#(<= max_~i~0 11)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25274#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:05,670 INFO L273 TraceCheckUtils]: 96: Hoare triple {25274#(<= max_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25275#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:05,671 INFO L273 TraceCheckUtils]: 97: Hoare triple {25275#(<= max_~i~0 12)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25275#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:05,671 INFO L273 TraceCheckUtils]: 98: Hoare triple {25275#(<= max_~i~0 12)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25275#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:05,672 INFO L273 TraceCheckUtils]: 99: Hoare triple {25275#(<= max_~i~0 12)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25275#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:05,672 INFO L273 TraceCheckUtils]: 100: Hoare triple {25275#(<= max_~i~0 12)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25276#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:05,673 INFO L273 TraceCheckUtils]: 101: Hoare triple {25276#(<= max_~i~0 13)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25276#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:05,673 INFO L273 TraceCheckUtils]: 102: Hoare triple {25276#(<= max_~i~0 13)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25276#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:05,674 INFO L273 TraceCheckUtils]: 103: Hoare triple {25276#(<= max_~i~0 13)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25276#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:05,674 INFO L273 TraceCheckUtils]: 104: Hoare triple {25276#(<= max_~i~0 13)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25277#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:05,675 INFO L273 TraceCheckUtils]: 105: Hoare triple {25277#(<= max_~i~0 14)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25277#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:05,675 INFO L273 TraceCheckUtils]: 106: Hoare triple {25277#(<= max_~i~0 14)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25277#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:05,676 INFO L273 TraceCheckUtils]: 107: Hoare triple {25277#(<= max_~i~0 14)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25277#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:05,677 INFO L273 TraceCheckUtils]: 108: Hoare triple {25277#(<= max_~i~0 14)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25278#(<= max_~i~0 15)} is VALID [2018-11-23 12:17:05,677 INFO L273 TraceCheckUtils]: 109: Hoare triple {25278#(<= max_~i~0 15)} assume !(~i~0 < 20); {25262#false} is VALID [2018-11-23 12:17:05,678 INFO L273 TraceCheckUtils]: 110: Hoare triple {25262#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {25262#false} is VALID [2018-11-23 12:17:05,678 INFO L273 TraceCheckUtils]: 111: Hoare triple {25262#false} assume true; {25262#false} is VALID [2018-11-23 12:17:05,678 INFO L268 TraceCheckUtils]: 112: Hoare quadruple {25262#false} {25261#true} #77#return; {25262#false} is VALID [2018-11-23 12:17:05,678 INFO L273 TraceCheckUtils]: 113: Hoare triple {25262#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {25262#false} is VALID [2018-11-23 12:17:05,678 INFO L256 TraceCheckUtils]: 114: Hoare triple {25262#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {25261#true} is VALID [2018-11-23 12:17:05,678 INFO L273 TraceCheckUtils]: 115: Hoare triple {25261#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {25261#true} is VALID [2018-11-23 12:17:05,679 INFO L273 TraceCheckUtils]: 116: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,679 INFO L273 TraceCheckUtils]: 117: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,679 INFO L273 TraceCheckUtils]: 118: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,679 INFO L273 TraceCheckUtils]: 119: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,679 INFO L273 TraceCheckUtils]: 120: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,680 INFO L273 TraceCheckUtils]: 121: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,680 INFO L273 TraceCheckUtils]: 122: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,680 INFO L273 TraceCheckUtils]: 123: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,680 INFO L273 TraceCheckUtils]: 124: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,680 INFO L273 TraceCheckUtils]: 125: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,680 INFO L273 TraceCheckUtils]: 126: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,680 INFO L273 TraceCheckUtils]: 127: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,681 INFO L273 TraceCheckUtils]: 128: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,681 INFO L273 TraceCheckUtils]: 129: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,681 INFO L273 TraceCheckUtils]: 130: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,681 INFO L273 TraceCheckUtils]: 131: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,681 INFO L273 TraceCheckUtils]: 132: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,681 INFO L273 TraceCheckUtils]: 133: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,681 INFO L273 TraceCheckUtils]: 134: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,681 INFO L273 TraceCheckUtils]: 135: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,681 INFO L273 TraceCheckUtils]: 136: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,682 INFO L273 TraceCheckUtils]: 137: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,682 INFO L273 TraceCheckUtils]: 138: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,682 INFO L273 TraceCheckUtils]: 139: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,682 INFO L273 TraceCheckUtils]: 140: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,682 INFO L273 TraceCheckUtils]: 141: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,682 INFO L273 TraceCheckUtils]: 142: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,682 INFO L273 TraceCheckUtils]: 143: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,682 INFO L273 TraceCheckUtils]: 144: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,682 INFO L273 TraceCheckUtils]: 145: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,682 INFO L273 TraceCheckUtils]: 146: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,683 INFO L273 TraceCheckUtils]: 147: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,683 INFO L273 TraceCheckUtils]: 148: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,683 INFO L273 TraceCheckUtils]: 149: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,683 INFO L273 TraceCheckUtils]: 150: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,683 INFO L273 TraceCheckUtils]: 151: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,683 INFO L273 TraceCheckUtils]: 152: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,683 INFO L273 TraceCheckUtils]: 153: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,683 INFO L273 TraceCheckUtils]: 154: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,683 INFO L273 TraceCheckUtils]: 155: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,683 INFO L273 TraceCheckUtils]: 156: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,684 INFO L273 TraceCheckUtils]: 157: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,684 INFO L273 TraceCheckUtils]: 158: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,684 INFO L273 TraceCheckUtils]: 159: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,684 INFO L273 TraceCheckUtils]: 160: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,684 INFO L273 TraceCheckUtils]: 161: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,684 INFO L273 TraceCheckUtils]: 162: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,684 INFO L273 TraceCheckUtils]: 163: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,684 INFO L273 TraceCheckUtils]: 164: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,684 INFO L273 TraceCheckUtils]: 165: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,684 INFO L273 TraceCheckUtils]: 166: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,685 INFO L273 TraceCheckUtils]: 167: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,685 INFO L273 TraceCheckUtils]: 168: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,685 INFO L273 TraceCheckUtils]: 169: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,685 INFO L273 TraceCheckUtils]: 170: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,685 INFO L273 TraceCheckUtils]: 171: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,685 INFO L273 TraceCheckUtils]: 172: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,685 INFO L273 TraceCheckUtils]: 173: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,685 INFO L273 TraceCheckUtils]: 174: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,685 INFO L273 TraceCheckUtils]: 175: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,685 INFO L273 TraceCheckUtils]: 176: Hoare triple {25261#true} assume !(~i~0 < 20); {25261#true} is VALID [2018-11-23 12:17:05,686 INFO L273 TraceCheckUtils]: 177: Hoare triple {25261#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {25261#true} is VALID [2018-11-23 12:17:05,686 INFO L273 TraceCheckUtils]: 178: Hoare triple {25261#true} assume true; {25261#true} is VALID [2018-11-23 12:17:05,686 INFO L268 TraceCheckUtils]: 179: Hoare quadruple {25261#true} {25262#false} #79#return; {25262#false} is VALID [2018-11-23 12:17:05,686 INFO L273 TraceCheckUtils]: 180: Hoare triple {25262#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {25262#false} is VALID [2018-11-23 12:17:05,686 INFO L273 TraceCheckUtils]: 181: Hoare triple {25262#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {25262#false} is VALID [2018-11-23 12:17:05,686 INFO L273 TraceCheckUtils]: 182: Hoare triple {25262#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {25262#false} is VALID [2018-11-23 12:17:05,686 INFO L273 TraceCheckUtils]: 183: Hoare triple {25262#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {25262#false} is VALID [2018-11-23 12:17:05,686 INFO L273 TraceCheckUtils]: 184: Hoare triple {25262#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {25262#false} is VALID [2018-11-23 12:17:05,686 INFO L273 TraceCheckUtils]: 185: Hoare triple {25262#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {25262#false} is VALID [2018-11-23 12:17:05,687 INFO L273 TraceCheckUtils]: 186: Hoare triple {25262#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {25262#false} is VALID [2018-11-23 12:17:05,687 INFO L273 TraceCheckUtils]: 187: Hoare triple {25262#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {25262#false} is VALID [2018-11-23 12:17:05,687 INFO L273 TraceCheckUtils]: 188: Hoare triple {25262#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {25262#false} is VALID [2018-11-23 12:17:05,687 INFO L273 TraceCheckUtils]: 189: Hoare triple {25262#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {25262#false} is VALID [2018-11-23 12:17:05,687 INFO L273 TraceCheckUtils]: 190: Hoare triple {25262#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {25262#false} is VALID [2018-11-23 12:17:05,687 INFO L273 TraceCheckUtils]: 191: Hoare triple {25262#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {25262#false} is VALID [2018-11-23 12:17:05,687 INFO L273 TraceCheckUtils]: 192: Hoare triple {25262#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {25262#false} is VALID [2018-11-23 12:17:05,687 INFO L273 TraceCheckUtils]: 193: Hoare triple {25262#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {25262#false} is VALID [2018-11-23 12:17:05,687 INFO L273 TraceCheckUtils]: 194: Hoare triple {25262#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {25262#false} is VALID [2018-11-23 12:17:05,687 INFO L273 TraceCheckUtils]: 195: Hoare triple {25262#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {25262#false} is VALID [2018-11-23 12:17:05,688 INFO L273 TraceCheckUtils]: 196: Hoare triple {25262#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {25262#false} is VALID [2018-11-23 12:17:05,688 INFO L273 TraceCheckUtils]: 197: Hoare triple {25262#false} assume !(~i~2 < 19); {25262#false} is VALID [2018-11-23 12:17:05,688 INFO L273 TraceCheckUtils]: 198: Hoare triple {25262#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {25262#false} is VALID [2018-11-23 12:17:05,688 INFO L256 TraceCheckUtils]: 199: Hoare triple {25262#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {25261#true} is VALID [2018-11-23 12:17:05,688 INFO L273 TraceCheckUtils]: 200: Hoare triple {25261#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {25261#true} is VALID [2018-11-23 12:17:05,688 INFO L273 TraceCheckUtils]: 201: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,688 INFO L273 TraceCheckUtils]: 202: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,688 INFO L273 TraceCheckUtils]: 203: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,688 INFO L273 TraceCheckUtils]: 204: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,688 INFO L273 TraceCheckUtils]: 205: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,689 INFO L273 TraceCheckUtils]: 206: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,689 INFO L273 TraceCheckUtils]: 207: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,689 INFO L273 TraceCheckUtils]: 208: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,689 INFO L273 TraceCheckUtils]: 209: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,689 INFO L273 TraceCheckUtils]: 210: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,689 INFO L273 TraceCheckUtils]: 211: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,689 INFO L273 TraceCheckUtils]: 212: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,689 INFO L273 TraceCheckUtils]: 213: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,689 INFO L273 TraceCheckUtils]: 214: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,690 INFO L273 TraceCheckUtils]: 215: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,690 INFO L273 TraceCheckUtils]: 216: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,690 INFO L273 TraceCheckUtils]: 217: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,690 INFO L273 TraceCheckUtils]: 218: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,690 INFO L273 TraceCheckUtils]: 219: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,690 INFO L273 TraceCheckUtils]: 220: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,690 INFO L273 TraceCheckUtils]: 221: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,690 INFO L273 TraceCheckUtils]: 222: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,690 INFO L273 TraceCheckUtils]: 223: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,690 INFO L273 TraceCheckUtils]: 224: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,691 INFO L273 TraceCheckUtils]: 225: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,691 INFO L273 TraceCheckUtils]: 226: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,691 INFO L273 TraceCheckUtils]: 227: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,691 INFO L273 TraceCheckUtils]: 228: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,691 INFO L273 TraceCheckUtils]: 229: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,691 INFO L273 TraceCheckUtils]: 230: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,691 INFO L273 TraceCheckUtils]: 231: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,691 INFO L273 TraceCheckUtils]: 232: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,691 INFO L273 TraceCheckUtils]: 233: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,691 INFO L273 TraceCheckUtils]: 234: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,692 INFO L273 TraceCheckUtils]: 235: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,692 INFO L273 TraceCheckUtils]: 236: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,692 INFO L273 TraceCheckUtils]: 237: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,692 INFO L273 TraceCheckUtils]: 238: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,692 INFO L273 TraceCheckUtils]: 239: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,692 INFO L273 TraceCheckUtils]: 240: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,692 INFO L273 TraceCheckUtils]: 241: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,692 INFO L273 TraceCheckUtils]: 242: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,692 INFO L273 TraceCheckUtils]: 243: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,692 INFO L273 TraceCheckUtils]: 244: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,693 INFO L273 TraceCheckUtils]: 245: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,693 INFO L273 TraceCheckUtils]: 246: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,693 INFO L273 TraceCheckUtils]: 247: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,693 INFO L273 TraceCheckUtils]: 248: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,693 INFO L273 TraceCheckUtils]: 249: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,693 INFO L273 TraceCheckUtils]: 250: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,693 INFO L273 TraceCheckUtils]: 251: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,693 INFO L273 TraceCheckUtils]: 252: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,693 INFO L273 TraceCheckUtils]: 253: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,693 INFO L273 TraceCheckUtils]: 254: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,694 INFO L273 TraceCheckUtils]: 255: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,694 INFO L273 TraceCheckUtils]: 256: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,694 INFO L273 TraceCheckUtils]: 257: Hoare triple {25261#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25261#true} is VALID [2018-11-23 12:17:05,694 INFO L273 TraceCheckUtils]: 258: Hoare triple {25261#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25261#true} is VALID [2018-11-23 12:17:05,694 INFO L273 TraceCheckUtils]: 259: Hoare triple {25261#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25261#true} is VALID [2018-11-23 12:17:05,694 INFO L273 TraceCheckUtils]: 260: Hoare triple {25261#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25261#true} is VALID [2018-11-23 12:17:05,694 INFO L273 TraceCheckUtils]: 261: Hoare triple {25261#true} assume !(~i~0 < 20); {25261#true} is VALID [2018-11-23 12:17:05,694 INFO L273 TraceCheckUtils]: 262: Hoare triple {25261#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {25261#true} is VALID [2018-11-23 12:17:05,694 INFO L273 TraceCheckUtils]: 263: Hoare triple {25261#true} assume true; {25261#true} is VALID [2018-11-23 12:17:05,694 INFO L268 TraceCheckUtils]: 264: Hoare quadruple {25261#true} {25262#false} #81#return; {25262#false} is VALID [2018-11-23 12:17:05,695 INFO L273 TraceCheckUtils]: 265: Hoare triple {25262#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {25262#false} is VALID [2018-11-23 12:17:05,695 INFO L273 TraceCheckUtils]: 266: Hoare triple {25262#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {25262#false} is VALID [2018-11-23 12:17:05,695 INFO L273 TraceCheckUtils]: 267: Hoare triple {25262#false} assume !false; {25262#false} is VALID [2018-11-23 12:17:05,722 INFO L134 CoverageAnalysis]: Checked inductivity of 4574 backedges. 0 proven. 2303 refuted. 0 times theorem prover too weak. 2271 trivial. 0 not checked. [2018-11-23 12:17:05,723 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:17:05,723 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 31 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 31 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:17:05,736 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 12:17:10,064 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 31 check-sat command(s) [2018-11-23 12:17:10,064 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:17:10,126 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:10,128 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:17:10,415 INFO L256 TraceCheckUtils]: 0: Hoare triple {25261#true} call ULTIMATE.init(); {25261#true} is VALID [2018-11-23 12:17:10,415 INFO L273 TraceCheckUtils]: 1: Hoare triple {25261#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {25261#true} is VALID [2018-11-23 12:17:10,415 INFO L273 TraceCheckUtils]: 2: Hoare triple {25261#true} assume true; {25261#true} is VALID [2018-11-23 12:17:10,415 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {25261#true} {25261#true} #73#return; {25261#true} is VALID [2018-11-23 12:17:10,416 INFO L256 TraceCheckUtils]: 4: Hoare triple {25261#true} call #t~ret14 := main(); {25261#true} is VALID [2018-11-23 12:17:10,416 INFO L273 TraceCheckUtils]: 5: Hoare triple {25261#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {25261#true} is VALID [2018-11-23 12:17:10,416 INFO L273 TraceCheckUtils]: 6: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:10,416 INFO L273 TraceCheckUtils]: 7: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:10,416 INFO L273 TraceCheckUtils]: 8: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:10,416 INFO L273 TraceCheckUtils]: 9: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:10,417 INFO L273 TraceCheckUtils]: 10: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:10,417 INFO L273 TraceCheckUtils]: 11: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:10,417 INFO L273 TraceCheckUtils]: 12: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:10,417 INFO L273 TraceCheckUtils]: 13: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:10,417 INFO L273 TraceCheckUtils]: 14: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:10,417 INFO L273 TraceCheckUtils]: 15: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:10,418 INFO L273 TraceCheckUtils]: 16: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:10,418 INFO L273 TraceCheckUtils]: 17: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:10,418 INFO L273 TraceCheckUtils]: 18: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:10,418 INFO L273 TraceCheckUtils]: 19: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:10,418 INFO L273 TraceCheckUtils]: 20: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:10,418 INFO L273 TraceCheckUtils]: 21: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:10,418 INFO L273 TraceCheckUtils]: 22: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:10,418 INFO L273 TraceCheckUtils]: 23: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:10,418 INFO L273 TraceCheckUtils]: 24: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:10,418 INFO L273 TraceCheckUtils]: 25: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:10,419 INFO L273 TraceCheckUtils]: 26: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:10,419 INFO L273 TraceCheckUtils]: 27: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:10,419 INFO L273 TraceCheckUtils]: 28: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:10,419 INFO L273 TraceCheckUtils]: 29: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:10,419 INFO L273 TraceCheckUtils]: 30: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:10,419 INFO L273 TraceCheckUtils]: 31: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:10,419 INFO L273 TraceCheckUtils]: 32: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:10,419 INFO L273 TraceCheckUtils]: 33: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:10,419 INFO L273 TraceCheckUtils]: 34: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:10,420 INFO L273 TraceCheckUtils]: 35: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:10,420 INFO L273 TraceCheckUtils]: 36: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:10,420 INFO L273 TraceCheckUtils]: 37: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:10,420 INFO L273 TraceCheckUtils]: 38: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:10,420 INFO L273 TraceCheckUtils]: 39: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:10,420 INFO L273 TraceCheckUtils]: 40: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:10,420 INFO L273 TraceCheckUtils]: 41: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:10,420 INFO L273 TraceCheckUtils]: 42: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:10,420 INFO L273 TraceCheckUtils]: 43: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:10,420 INFO L273 TraceCheckUtils]: 44: Hoare triple {25261#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {25261#true} is VALID [2018-11-23 12:17:10,421 INFO L273 TraceCheckUtils]: 45: Hoare triple {25261#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {25261#true} is VALID [2018-11-23 12:17:10,421 INFO L273 TraceCheckUtils]: 46: Hoare triple {25261#true} assume !(~i~1 < 20); {25261#true} is VALID [2018-11-23 12:17:10,421 INFO L256 TraceCheckUtils]: 47: Hoare triple {25261#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {25261#true} is VALID [2018-11-23 12:17:10,421 INFO L273 TraceCheckUtils]: 48: Hoare triple {25261#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {25426#(<= max_~i~0 0)} is VALID [2018-11-23 12:17:10,422 INFO L273 TraceCheckUtils]: 49: Hoare triple {25426#(<= max_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25426#(<= max_~i~0 0)} is VALID [2018-11-23 12:17:10,422 INFO L273 TraceCheckUtils]: 50: Hoare triple {25426#(<= max_~i~0 0)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25426#(<= max_~i~0 0)} is VALID [2018-11-23 12:17:10,422 INFO L273 TraceCheckUtils]: 51: Hoare triple {25426#(<= max_~i~0 0)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25426#(<= max_~i~0 0)} is VALID [2018-11-23 12:17:10,423 INFO L273 TraceCheckUtils]: 52: Hoare triple {25426#(<= max_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25264#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:10,423 INFO L273 TraceCheckUtils]: 53: Hoare triple {25264#(<= max_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25264#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:10,423 INFO L273 TraceCheckUtils]: 54: Hoare triple {25264#(<= max_~i~0 1)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25264#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:10,423 INFO L273 TraceCheckUtils]: 55: Hoare triple {25264#(<= max_~i~0 1)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25264#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:10,424 INFO L273 TraceCheckUtils]: 56: Hoare triple {25264#(<= max_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25265#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:10,424 INFO L273 TraceCheckUtils]: 57: Hoare triple {25265#(<= max_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25265#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:10,425 INFO L273 TraceCheckUtils]: 58: Hoare triple {25265#(<= max_~i~0 2)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25265#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:10,425 INFO L273 TraceCheckUtils]: 59: Hoare triple {25265#(<= max_~i~0 2)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25265#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:10,425 INFO L273 TraceCheckUtils]: 60: Hoare triple {25265#(<= max_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25266#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:10,426 INFO L273 TraceCheckUtils]: 61: Hoare triple {25266#(<= max_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25266#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:10,426 INFO L273 TraceCheckUtils]: 62: Hoare triple {25266#(<= max_~i~0 3)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25266#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:10,427 INFO L273 TraceCheckUtils]: 63: Hoare triple {25266#(<= max_~i~0 3)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25266#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:10,427 INFO L273 TraceCheckUtils]: 64: Hoare triple {25266#(<= max_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25267#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:10,428 INFO L273 TraceCheckUtils]: 65: Hoare triple {25267#(<= max_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25267#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:10,428 INFO L273 TraceCheckUtils]: 66: Hoare triple {25267#(<= max_~i~0 4)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25267#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:10,429 INFO L273 TraceCheckUtils]: 67: Hoare triple {25267#(<= max_~i~0 4)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25267#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:10,430 INFO L273 TraceCheckUtils]: 68: Hoare triple {25267#(<= max_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25268#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:10,430 INFO L273 TraceCheckUtils]: 69: Hoare triple {25268#(<= max_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25268#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:10,431 INFO L273 TraceCheckUtils]: 70: Hoare triple {25268#(<= max_~i~0 5)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25268#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:10,431 INFO L273 TraceCheckUtils]: 71: Hoare triple {25268#(<= max_~i~0 5)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25268#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:10,432 INFO L273 TraceCheckUtils]: 72: Hoare triple {25268#(<= max_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25269#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:10,432 INFO L273 TraceCheckUtils]: 73: Hoare triple {25269#(<= max_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25269#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:10,433 INFO L273 TraceCheckUtils]: 74: Hoare triple {25269#(<= max_~i~0 6)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25269#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:10,433 INFO L273 TraceCheckUtils]: 75: Hoare triple {25269#(<= max_~i~0 6)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25269#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:10,434 INFO L273 TraceCheckUtils]: 76: Hoare triple {25269#(<= max_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25270#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:10,435 INFO L273 TraceCheckUtils]: 77: Hoare triple {25270#(<= max_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25270#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:10,435 INFO L273 TraceCheckUtils]: 78: Hoare triple {25270#(<= max_~i~0 7)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25270#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:10,436 INFO L273 TraceCheckUtils]: 79: Hoare triple {25270#(<= max_~i~0 7)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25270#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:10,436 INFO L273 TraceCheckUtils]: 80: Hoare triple {25270#(<= max_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25271#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:10,437 INFO L273 TraceCheckUtils]: 81: Hoare triple {25271#(<= max_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25271#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:10,437 INFO L273 TraceCheckUtils]: 82: Hoare triple {25271#(<= max_~i~0 8)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25271#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:10,438 INFO L273 TraceCheckUtils]: 83: Hoare triple {25271#(<= max_~i~0 8)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25271#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:10,438 INFO L273 TraceCheckUtils]: 84: Hoare triple {25271#(<= max_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25272#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:10,439 INFO L273 TraceCheckUtils]: 85: Hoare triple {25272#(<= max_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25272#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:10,439 INFO L273 TraceCheckUtils]: 86: Hoare triple {25272#(<= max_~i~0 9)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25272#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:10,440 INFO L273 TraceCheckUtils]: 87: Hoare triple {25272#(<= max_~i~0 9)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25272#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:10,441 INFO L273 TraceCheckUtils]: 88: Hoare triple {25272#(<= max_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25273#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:10,441 INFO L273 TraceCheckUtils]: 89: Hoare triple {25273#(<= max_~i~0 10)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25273#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:10,442 INFO L273 TraceCheckUtils]: 90: Hoare triple {25273#(<= max_~i~0 10)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25273#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:10,442 INFO L273 TraceCheckUtils]: 91: Hoare triple {25273#(<= max_~i~0 10)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25273#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:10,443 INFO L273 TraceCheckUtils]: 92: Hoare triple {25273#(<= max_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25274#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:10,443 INFO L273 TraceCheckUtils]: 93: Hoare triple {25274#(<= max_~i~0 11)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25274#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:10,444 INFO L273 TraceCheckUtils]: 94: Hoare triple {25274#(<= max_~i~0 11)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25274#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:10,444 INFO L273 TraceCheckUtils]: 95: Hoare triple {25274#(<= max_~i~0 11)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25274#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:10,445 INFO L273 TraceCheckUtils]: 96: Hoare triple {25274#(<= max_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25275#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:10,446 INFO L273 TraceCheckUtils]: 97: Hoare triple {25275#(<= max_~i~0 12)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25275#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:10,446 INFO L273 TraceCheckUtils]: 98: Hoare triple {25275#(<= max_~i~0 12)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25275#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:10,446 INFO L273 TraceCheckUtils]: 99: Hoare triple {25275#(<= max_~i~0 12)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25275#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:10,447 INFO L273 TraceCheckUtils]: 100: Hoare triple {25275#(<= max_~i~0 12)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25276#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:10,448 INFO L273 TraceCheckUtils]: 101: Hoare triple {25276#(<= max_~i~0 13)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25276#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:10,448 INFO L273 TraceCheckUtils]: 102: Hoare triple {25276#(<= max_~i~0 13)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25276#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:10,449 INFO L273 TraceCheckUtils]: 103: Hoare triple {25276#(<= max_~i~0 13)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25276#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:10,449 INFO L273 TraceCheckUtils]: 104: Hoare triple {25276#(<= max_~i~0 13)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25277#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:10,450 INFO L273 TraceCheckUtils]: 105: Hoare triple {25277#(<= max_~i~0 14)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25277#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:10,450 INFO L273 TraceCheckUtils]: 106: Hoare triple {25277#(<= max_~i~0 14)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25277#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:10,451 INFO L273 TraceCheckUtils]: 107: Hoare triple {25277#(<= max_~i~0 14)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25277#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:10,452 INFO L273 TraceCheckUtils]: 108: Hoare triple {25277#(<= max_~i~0 14)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25278#(<= max_~i~0 15)} is VALID [2018-11-23 12:17:10,452 INFO L273 TraceCheckUtils]: 109: Hoare triple {25278#(<= max_~i~0 15)} assume !(~i~0 < 20); {25262#false} is VALID [2018-11-23 12:17:10,452 INFO L273 TraceCheckUtils]: 110: Hoare triple {25262#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {25262#false} is VALID [2018-11-23 12:17:10,453 INFO L273 TraceCheckUtils]: 111: Hoare triple {25262#false} assume true; {25262#false} is VALID [2018-11-23 12:17:10,453 INFO L268 TraceCheckUtils]: 112: Hoare quadruple {25262#false} {25261#true} #77#return; {25262#false} is VALID [2018-11-23 12:17:10,453 INFO L273 TraceCheckUtils]: 113: Hoare triple {25262#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {25262#false} is VALID [2018-11-23 12:17:10,453 INFO L256 TraceCheckUtils]: 114: Hoare triple {25262#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {25262#false} is VALID [2018-11-23 12:17:10,453 INFO L273 TraceCheckUtils]: 115: Hoare triple {25262#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {25262#false} is VALID [2018-11-23 12:17:10,454 INFO L273 TraceCheckUtils]: 116: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,454 INFO L273 TraceCheckUtils]: 117: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,454 INFO L273 TraceCheckUtils]: 118: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,454 INFO L273 TraceCheckUtils]: 119: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,454 INFO L273 TraceCheckUtils]: 120: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,454 INFO L273 TraceCheckUtils]: 121: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,455 INFO L273 TraceCheckUtils]: 122: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,455 INFO L273 TraceCheckUtils]: 123: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,455 INFO L273 TraceCheckUtils]: 124: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,455 INFO L273 TraceCheckUtils]: 125: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,455 INFO L273 TraceCheckUtils]: 126: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,455 INFO L273 TraceCheckUtils]: 127: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,455 INFO L273 TraceCheckUtils]: 128: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,455 INFO L273 TraceCheckUtils]: 129: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,455 INFO L273 TraceCheckUtils]: 130: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,455 INFO L273 TraceCheckUtils]: 131: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,456 INFO L273 TraceCheckUtils]: 132: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,456 INFO L273 TraceCheckUtils]: 133: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,456 INFO L273 TraceCheckUtils]: 134: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,456 INFO L273 TraceCheckUtils]: 135: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,456 INFO L273 TraceCheckUtils]: 136: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,456 INFO L273 TraceCheckUtils]: 137: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,456 INFO L273 TraceCheckUtils]: 138: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,456 INFO L273 TraceCheckUtils]: 139: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,456 INFO L273 TraceCheckUtils]: 140: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,456 INFO L273 TraceCheckUtils]: 141: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,457 INFO L273 TraceCheckUtils]: 142: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,457 INFO L273 TraceCheckUtils]: 143: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,457 INFO L273 TraceCheckUtils]: 144: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,457 INFO L273 TraceCheckUtils]: 145: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,457 INFO L273 TraceCheckUtils]: 146: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,457 INFO L273 TraceCheckUtils]: 147: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,457 INFO L273 TraceCheckUtils]: 148: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,457 INFO L273 TraceCheckUtils]: 149: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,457 INFO L273 TraceCheckUtils]: 150: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,457 INFO L273 TraceCheckUtils]: 151: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,458 INFO L273 TraceCheckUtils]: 152: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,458 INFO L273 TraceCheckUtils]: 153: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,458 INFO L273 TraceCheckUtils]: 154: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,458 INFO L273 TraceCheckUtils]: 155: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,458 INFO L273 TraceCheckUtils]: 156: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,458 INFO L273 TraceCheckUtils]: 157: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,458 INFO L273 TraceCheckUtils]: 158: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,458 INFO L273 TraceCheckUtils]: 159: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,458 INFO L273 TraceCheckUtils]: 160: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,458 INFO L273 TraceCheckUtils]: 161: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,459 INFO L273 TraceCheckUtils]: 162: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,459 INFO L273 TraceCheckUtils]: 163: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,459 INFO L273 TraceCheckUtils]: 164: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,459 INFO L273 TraceCheckUtils]: 165: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,459 INFO L273 TraceCheckUtils]: 166: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,459 INFO L273 TraceCheckUtils]: 167: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,459 INFO L273 TraceCheckUtils]: 168: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,459 INFO L273 TraceCheckUtils]: 169: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,459 INFO L273 TraceCheckUtils]: 170: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,460 INFO L273 TraceCheckUtils]: 171: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,460 INFO L273 TraceCheckUtils]: 172: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,460 INFO L273 TraceCheckUtils]: 173: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,460 INFO L273 TraceCheckUtils]: 174: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,460 INFO L273 TraceCheckUtils]: 175: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,460 INFO L273 TraceCheckUtils]: 176: Hoare triple {25262#false} assume !(~i~0 < 20); {25262#false} is VALID [2018-11-23 12:17:10,460 INFO L273 TraceCheckUtils]: 177: Hoare triple {25262#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {25262#false} is VALID [2018-11-23 12:17:10,460 INFO L273 TraceCheckUtils]: 178: Hoare triple {25262#false} assume true; {25262#false} is VALID [2018-11-23 12:17:10,460 INFO L268 TraceCheckUtils]: 179: Hoare quadruple {25262#false} {25262#false} #79#return; {25262#false} is VALID [2018-11-23 12:17:10,460 INFO L273 TraceCheckUtils]: 180: Hoare triple {25262#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {25262#false} is VALID [2018-11-23 12:17:10,461 INFO L273 TraceCheckUtils]: 181: Hoare triple {25262#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {25262#false} is VALID [2018-11-23 12:17:10,461 INFO L273 TraceCheckUtils]: 182: Hoare triple {25262#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {25262#false} is VALID [2018-11-23 12:17:10,461 INFO L273 TraceCheckUtils]: 183: Hoare triple {25262#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {25262#false} is VALID [2018-11-23 12:17:10,461 INFO L273 TraceCheckUtils]: 184: Hoare triple {25262#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {25262#false} is VALID [2018-11-23 12:17:10,461 INFO L273 TraceCheckUtils]: 185: Hoare triple {25262#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {25262#false} is VALID [2018-11-23 12:17:10,461 INFO L273 TraceCheckUtils]: 186: Hoare triple {25262#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {25262#false} is VALID [2018-11-23 12:17:10,461 INFO L273 TraceCheckUtils]: 187: Hoare triple {25262#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {25262#false} is VALID [2018-11-23 12:17:10,461 INFO L273 TraceCheckUtils]: 188: Hoare triple {25262#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {25262#false} is VALID [2018-11-23 12:17:10,461 INFO L273 TraceCheckUtils]: 189: Hoare triple {25262#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {25262#false} is VALID [2018-11-23 12:17:10,461 INFO L273 TraceCheckUtils]: 190: Hoare triple {25262#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {25262#false} is VALID [2018-11-23 12:17:10,462 INFO L273 TraceCheckUtils]: 191: Hoare triple {25262#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {25262#false} is VALID [2018-11-23 12:17:10,462 INFO L273 TraceCheckUtils]: 192: Hoare triple {25262#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {25262#false} is VALID [2018-11-23 12:17:10,462 INFO L273 TraceCheckUtils]: 193: Hoare triple {25262#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {25262#false} is VALID [2018-11-23 12:17:10,462 INFO L273 TraceCheckUtils]: 194: Hoare triple {25262#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {25262#false} is VALID [2018-11-23 12:17:10,462 INFO L273 TraceCheckUtils]: 195: Hoare triple {25262#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {25262#false} is VALID [2018-11-23 12:17:10,462 INFO L273 TraceCheckUtils]: 196: Hoare triple {25262#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {25262#false} is VALID [2018-11-23 12:17:10,462 INFO L273 TraceCheckUtils]: 197: Hoare triple {25262#false} assume !(~i~2 < 19); {25262#false} is VALID [2018-11-23 12:17:10,462 INFO L273 TraceCheckUtils]: 198: Hoare triple {25262#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {25262#false} is VALID [2018-11-23 12:17:10,462 INFO L256 TraceCheckUtils]: 199: Hoare triple {25262#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {25262#false} is VALID [2018-11-23 12:17:10,462 INFO L273 TraceCheckUtils]: 200: Hoare triple {25262#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {25262#false} is VALID [2018-11-23 12:17:10,463 INFO L273 TraceCheckUtils]: 201: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,463 INFO L273 TraceCheckUtils]: 202: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,463 INFO L273 TraceCheckUtils]: 203: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,463 INFO L273 TraceCheckUtils]: 204: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,463 INFO L273 TraceCheckUtils]: 205: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,463 INFO L273 TraceCheckUtils]: 206: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,463 INFO L273 TraceCheckUtils]: 207: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,463 INFO L273 TraceCheckUtils]: 208: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,463 INFO L273 TraceCheckUtils]: 209: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,464 INFO L273 TraceCheckUtils]: 210: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,464 INFO L273 TraceCheckUtils]: 211: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,464 INFO L273 TraceCheckUtils]: 212: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,464 INFO L273 TraceCheckUtils]: 213: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,464 INFO L273 TraceCheckUtils]: 214: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,464 INFO L273 TraceCheckUtils]: 215: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,464 INFO L273 TraceCheckUtils]: 216: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,464 INFO L273 TraceCheckUtils]: 217: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,464 INFO L273 TraceCheckUtils]: 218: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,464 INFO L273 TraceCheckUtils]: 219: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,465 INFO L273 TraceCheckUtils]: 220: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,465 INFO L273 TraceCheckUtils]: 221: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,465 INFO L273 TraceCheckUtils]: 222: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,465 INFO L273 TraceCheckUtils]: 223: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,465 INFO L273 TraceCheckUtils]: 224: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,465 INFO L273 TraceCheckUtils]: 225: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,465 INFO L273 TraceCheckUtils]: 226: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,465 INFO L273 TraceCheckUtils]: 227: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,465 INFO L273 TraceCheckUtils]: 228: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,465 INFO L273 TraceCheckUtils]: 229: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,466 INFO L273 TraceCheckUtils]: 230: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,466 INFO L273 TraceCheckUtils]: 231: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,466 INFO L273 TraceCheckUtils]: 232: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,466 INFO L273 TraceCheckUtils]: 233: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,466 INFO L273 TraceCheckUtils]: 234: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,466 INFO L273 TraceCheckUtils]: 235: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,466 INFO L273 TraceCheckUtils]: 236: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,466 INFO L273 TraceCheckUtils]: 237: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,466 INFO L273 TraceCheckUtils]: 238: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,466 INFO L273 TraceCheckUtils]: 239: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,467 INFO L273 TraceCheckUtils]: 240: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,467 INFO L273 TraceCheckUtils]: 241: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,467 INFO L273 TraceCheckUtils]: 242: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,467 INFO L273 TraceCheckUtils]: 243: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,467 INFO L273 TraceCheckUtils]: 244: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,467 INFO L273 TraceCheckUtils]: 245: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,467 INFO L273 TraceCheckUtils]: 246: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,467 INFO L273 TraceCheckUtils]: 247: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,467 INFO L273 TraceCheckUtils]: 248: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,467 INFO L273 TraceCheckUtils]: 249: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,468 INFO L273 TraceCheckUtils]: 250: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,468 INFO L273 TraceCheckUtils]: 251: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,468 INFO L273 TraceCheckUtils]: 252: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,468 INFO L273 TraceCheckUtils]: 253: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,468 INFO L273 TraceCheckUtils]: 254: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,468 INFO L273 TraceCheckUtils]: 255: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,468 INFO L273 TraceCheckUtils]: 256: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,468 INFO L273 TraceCheckUtils]: 257: Hoare triple {25262#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {25262#false} is VALID [2018-11-23 12:17:10,468 INFO L273 TraceCheckUtils]: 258: Hoare triple {25262#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {25262#false} is VALID [2018-11-23 12:17:10,468 INFO L273 TraceCheckUtils]: 259: Hoare triple {25262#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {25262#false} is VALID [2018-11-23 12:17:10,469 INFO L273 TraceCheckUtils]: 260: Hoare triple {25262#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {25262#false} is VALID [2018-11-23 12:17:10,469 INFO L273 TraceCheckUtils]: 261: Hoare triple {25262#false} assume !(~i~0 < 20); {25262#false} is VALID [2018-11-23 12:17:10,469 INFO L273 TraceCheckUtils]: 262: Hoare triple {25262#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {25262#false} is VALID [2018-11-23 12:17:10,469 INFO L273 TraceCheckUtils]: 263: Hoare triple {25262#false} assume true; {25262#false} is VALID [2018-11-23 12:17:10,469 INFO L268 TraceCheckUtils]: 264: Hoare quadruple {25262#false} {25262#false} #81#return; {25262#false} is VALID [2018-11-23 12:17:10,469 INFO L273 TraceCheckUtils]: 265: Hoare triple {25262#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {25262#false} is VALID [2018-11-23 12:17:10,469 INFO L273 TraceCheckUtils]: 266: Hoare triple {25262#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {25262#false} is VALID [2018-11-23 12:17:10,469 INFO L273 TraceCheckUtils]: 267: Hoare triple {25262#false} assume !false; {25262#false} is VALID [2018-11-23 12:17:10,497 INFO L134 CoverageAnalysis]: Checked inductivity of 4574 backedges. 1864 proven. 435 refuted. 0 times theorem prover too weak. 2275 trivial. 0 not checked. [2018-11-23 12:17:10,520 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:17:10,521 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 18] total 19 [2018-11-23 12:17:10,521 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 268 [2018-11-23 12:17:10,522 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:17:10,522 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states. [2018-11-23 12:17:10,635 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:17:10,635 INFO L459 AbstractCegarLoop]: Interpolant automaton has 19 states [2018-11-23 12:17:10,636 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2018-11-23 12:17:10,636 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=171, Invalid=171, Unknown=0, NotChecked=0, Total=342 [2018-11-23 12:17:10,636 INFO L87 Difference]: Start difference. First operand 139 states and 158 transitions. Second operand 19 states. [2018-11-23 12:17:11,821 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:11,821 INFO L93 Difference]: Finished difference Result 237 states and 279 transitions. [2018-11-23 12:17:11,821 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2018-11-23 12:17:11,821 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 268 [2018-11-23 12:17:11,821 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:17:11,821 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-23 12:17:11,822 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 139 transitions. [2018-11-23 12:17:11,822 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-23 12:17:11,823 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 139 transitions. [2018-11-23 12:17:11,824 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states and 139 transitions. [2018-11-23 12:17:12,053 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 139 edges. 139 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:17:12,057 INFO L225 Difference]: With dead ends: 237 [2018-11-23 12:17:12,057 INFO L226 Difference]: Without dead ends: 146 [2018-11-23 12:17:12,058 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 285 GetRequests, 268 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 28 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=171, Invalid=171, Unknown=0, NotChecked=0, Total=342 [2018-11-23 12:17:12,058 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 146 states. [2018-11-23 12:17:12,108 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 146 to 143. [2018-11-23 12:17:12,108 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:17:12,108 INFO L82 GeneralOperation]: Start isEquivalent. First operand 146 states. Second operand 143 states. [2018-11-23 12:17:12,109 INFO L74 IsIncluded]: Start isIncluded. First operand 146 states. Second operand 143 states. [2018-11-23 12:17:12,109 INFO L87 Difference]: Start difference. First operand 146 states. Second operand 143 states. [2018-11-23 12:17:12,112 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:12,112 INFO L93 Difference]: Finished difference Result 146 states and 167 transitions. [2018-11-23 12:17:12,112 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 167 transitions. [2018-11-23 12:17:12,112 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:12,112 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:12,112 INFO L74 IsIncluded]: Start isIncluded. First operand 143 states. Second operand 146 states. [2018-11-23 12:17:12,112 INFO L87 Difference]: Start difference. First operand 143 states. Second operand 146 states. [2018-11-23 12:17:12,114 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:12,114 INFO L93 Difference]: Finished difference Result 146 states and 167 transitions. [2018-11-23 12:17:12,114 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 167 transitions. [2018-11-23 12:17:12,115 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:12,115 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:12,115 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:17:12,115 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:17:12,115 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 143 states. [2018-11-23 12:17:12,117 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 143 states to 143 states and 163 transitions. [2018-11-23 12:17:12,117 INFO L78 Accepts]: Start accepts. Automaton has 143 states and 163 transitions. Word has length 268 [2018-11-23 12:17:12,117 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:17:12,117 INFO L480 AbstractCegarLoop]: Abstraction has 143 states and 163 transitions. [2018-11-23 12:17:12,117 INFO L481 AbstractCegarLoop]: Interpolant automaton has 19 states. [2018-11-23 12:17:12,117 INFO L276 IsEmpty]: Start isEmpty. Operand 143 states and 163 transitions. [2018-11-23 12:17:12,119 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 281 [2018-11-23 12:17:12,119 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:17:12,119 INFO L402 BasicCegarLoop]: trace histogram [48, 48, 48, 48, 20, 20, 8, 8, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:17:12,119 INFO L423 AbstractCegarLoop]: === Iteration 33 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:17:12,119 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:17:12,119 INFO L82 PathProgramCache]: Analyzing trace with hash 1622672851, now seen corresponding path program 30 times [2018-11-23 12:17:12,119 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:17:12,119 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:17:12,120 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:12,120 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:17:12,120 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:12,165 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:12,592 INFO L256 TraceCheckUtils]: 0: Hoare triple {26893#true} call ULTIMATE.init(); {26893#true} is VALID [2018-11-23 12:17:12,592 INFO L273 TraceCheckUtils]: 1: Hoare triple {26893#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {26893#true} is VALID [2018-11-23 12:17:12,592 INFO L273 TraceCheckUtils]: 2: Hoare triple {26893#true} assume true; {26893#true} is VALID [2018-11-23 12:17:12,593 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {26893#true} {26893#true} #73#return; {26893#true} is VALID [2018-11-23 12:17:12,593 INFO L256 TraceCheckUtils]: 4: Hoare triple {26893#true} call #t~ret14 := main(); {26893#true} is VALID [2018-11-23 12:17:12,593 INFO L273 TraceCheckUtils]: 5: Hoare triple {26893#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {26893#true} is VALID [2018-11-23 12:17:12,593 INFO L273 TraceCheckUtils]: 6: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:12,594 INFO L273 TraceCheckUtils]: 7: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:12,594 INFO L273 TraceCheckUtils]: 8: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:12,594 INFO L273 TraceCheckUtils]: 9: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:12,594 INFO L273 TraceCheckUtils]: 10: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:12,594 INFO L273 TraceCheckUtils]: 11: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:12,595 INFO L273 TraceCheckUtils]: 12: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:12,595 INFO L273 TraceCheckUtils]: 13: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:12,595 INFO L273 TraceCheckUtils]: 14: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:12,595 INFO L273 TraceCheckUtils]: 15: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:12,596 INFO L273 TraceCheckUtils]: 16: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:12,596 INFO L273 TraceCheckUtils]: 17: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:12,596 INFO L273 TraceCheckUtils]: 18: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:12,596 INFO L273 TraceCheckUtils]: 19: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:12,597 INFO L273 TraceCheckUtils]: 20: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:12,597 INFO L273 TraceCheckUtils]: 21: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:12,597 INFO L273 TraceCheckUtils]: 22: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:12,597 INFO L273 TraceCheckUtils]: 23: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:12,597 INFO L273 TraceCheckUtils]: 24: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:12,597 INFO L273 TraceCheckUtils]: 25: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:12,597 INFO L273 TraceCheckUtils]: 26: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:12,597 INFO L273 TraceCheckUtils]: 27: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:12,598 INFO L273 TraceCheckUtils]: 28: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:12,598 INFO L273 TraceCheckUtils]: 29: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:12,598 INFO L273 TraceCheckUtils]: 30: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:12,598 INFO L273 TraceCheckUtils]: 31: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:12,598 INFO L273 TraceCheckUtils]: 32: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:12,598 INFO L273 TraceCheckUtils]: 33: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:12,598 INFO L273 TraceCheckUtils]: 34: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:12,599 INFO L273 TraceCheckUtils]: 35: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:12,599 INFO L273 TraceCheckUtils]: 36: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:12,599 INFO L273 TraceCheckUtils]: 37: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:12,599 INFO L273 TraceCheckUtils]: 38: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:12,599 INFO L273 TraceCheckUtils]: 39: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:12,599 INFO L273 TraceCheckUtils]: 40: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:12,599 INFO L273 TraceCheckUtils]: 41: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:12,599 INFO L273 TraceCheckUtils]: 42: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:12,600 INFO L273 TraceCheckUtils]: 43: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:12,600 INFO L273 TraceCheckUtils]: 44: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:12,600 INFO L273 TraceCheckUtils]: 45: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:12,600 INFO L273 TraceCheckUtils]: 46: Hoare triple {26893#true} assume !(~i~1 < 20); {26893#true} is VALID [2018-11-23 12:17:12,600 INFO L256 TraceCheckUtils]: 47: Hoare triple {26893#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {26893#true} is VALID [2018-11-23 12:17:12,601 INFO L273 TraceCheckUtils]: 48: Hoare triple {26893#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {26895#(= max_~i~0 0)} is VALID [2018-11-23 12:17:12,601 INFO L273 TraceCheckUtils]: 49: Hoare triple {26895#(= max_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26895#(= max_~i~0 0)} is VALID [2018-11-23 12:17:12,601 INFO L273 TraceCheckUtils]: 50: Hoare triple {26895#(= max_~i~0 0)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26895#(= max_~i~0 0)} is VALID [2018-11-23 12:17:12,602 INFO L273 TraceCheckUtils]: 51: Hoare triple {26895#(= max_~i~0 0)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26895#(= max_~i~0 0)} is VALID [2018-11-23 12:17:12,602 INFO L273 TraceCheckUtils]: 52: Hoare triple {26895#(= max_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26896#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:12,602 INFO L273 TraceCheckUtils]: 53: Hoare triple {26896#(<= max_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26896#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:12,603 INFO L273 TraceCheckUtils]: 54: Hoare triple {26896#(<= max_~i~0 1)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26896#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:12,603 INFO L273 TraceCheckUtils]: 55: Hoare triple {26896#(<= max_~i~0 1)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26896#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:12,604 INFO L273 TraceCheckUtils]: 56: Hoare triple {26896#(<= max_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26897#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:12,604 INFO L273 TraceCheckUtils]: 57: Hoare triple {26897#(<= max_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26897#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:12,604 INFO L273 TraceCheckUtils]: 58: Hoare triple {26897#(<= max_~i~0 2)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26897#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:12,605 INFO L273 TraceCheckUtils]: 59: Hoare triple {26897#(<= max_~i~0 2)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26897#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:12,606 INFO L273 TraceCheckUtils]: 60: Hoare triple {26897#(<= max_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26898#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:12,606 INFO L273 TraceCheckUtils]: 61: Hoare triple {26898#(<= max_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26898#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:12,607 INFO L273 TraceCheckUtils]: 62: Hoare triple {26898#(<= max_~i~0 3)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26898#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:12,607 INFO L273 TraceCheckUtils]: 63: Hoare triple {26898#(<= max_~i~0 3)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26898#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:12,608 INFO L273 TraceCheckUtils]: 64: Hoare triple {26898#(<= max_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26899#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:12,609 INFO L273 TraceCheckUtils]: 65: Hoare triple {26899#(<= max_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26899#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:12,610 INFO L273 TraceCheckUtils]: 66: Hoare triple {26899#(<= max_~i~0 4)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26899#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:12,610 INFO L273 TraceCheckUtils]: 67: Hoare triple {26899#(<= max_~i~0 4)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26899#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:12,611 INFO L273 TraceCheckUtils]: 68: Hoare triple {26899#(<= max_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26900#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:12,612 INFO L273 TraceCheckUtils]: 69: Hoare triple {26900#(<= max_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26900#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:12,612 INFO L273 TraceCheckUtils]: 70: Hoare triple {26900#(<= max_~i~0 5)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26900#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:12,613 INFO L273 TraceCheckUtils]: 71: Hoare triple {26900#(<= max_~i~0 5)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26900#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:12,614 INFO L273 TraceCheckUtils]: 72: Hoare triple {26900#(<= max_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26901#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:12,614 INFO L273 TraceCheckUtils]: 73: Hoare triple {26901#(<= max_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26901#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:12,615 INFO L273 TraceCheckUtils]: 74: Hoare triple {26901#(<= max_~i~0 6)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26901#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:12,615 INFO L273 TraceCheckUtils]: 75: Hoare triple {26901#(<= max_~i~0 6)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26901#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:12,616 INFO L273 TraceCheckUtils]: 76: Hoare triple {26901#(<= max_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26902#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:12,617 INFO L273 TraceCheckUtils]: 77: Hoare triple {26902#(<= max_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26902#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:12,617 INFO L273 TraceCheckUtils]: 78: Hoare triple {26902#(<= max_~i~0 7)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26902#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:12,618 INFO L273 TraceCheckUtils]: 79: Hoare triple {26902#(<= max_~i~0 7)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26902#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:12,619 INFO L273 TraceCheckUtils]: 80: Hoare triple {26902#(<= max_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26903#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:12,619 INFO L273 TraceCheckUtils]: 81: Hoare triple {26903#(<= max_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26903#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:12,620 INFO L273 TraceCheckUtils]: 82: Hoare triple {26903#(<= max_~i~0 8)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26903#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:12,621 INFO L273 TraceCheckUtils]: 83: Hoare triple {26903#(<= max_~i~0 8)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26903#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:12,621 INFO L273 TraceCheckUtils]: 84: Hoare triple {26903#(<= max_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26904#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:12,622 INFO L273 TraceCheckUtils]: 85: Hoare triple {26904#(<= max_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26904#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:12,623 INFO L273 TraceCheckUtils]: 86: Hoare triple {26904#(<= max_~i~0 9)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26904#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:12,623 INFO L273 TraceCheckUtils]: 87: Hoare triple {26904#(<= max_~i~0 9)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26904#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:12,624 INFO L273 TraceCheckUtils]: 88: Hoare triple {26904#(<= max_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26905#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:12,625 INFO L273 TraceCheckUtils]: 89: Hoare triple {26905#(<= max_~i~0 10)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26905#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:12,625 INFO L273 TraceCheckUtils]: 90: Hoare triple {26905#(<= max_~i~0 10)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26905#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:12,626 INFO L273 TraceCheckUtils]: 91: Hoare triple {26905#(<= max_~i~0 10)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26905#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:12,626 INFO L273 TraceCheckUtils]: 92: Hoare triple {26905#(<= max_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26906#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:12,627 INFO L273 TraceCheckUtils]: 93: Hoare triple {26906#(<= max_~i~0 11)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26906#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:12,627 INFO L273 TraceCheckUtils]: 94: Hoare triple {26906#(<= max_~i~0 11)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26906#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:12,628 INFO L273 TraceCheckUtils]: 95: Hoare triple {26906#(<= max_~i~0 11)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26906#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:12,629 INFO L273 TraceCheckUtils]: 96: Hoare triple {26906#(<= max_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26907#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:12,629 INFO L273 TraceCheckUtils]: 97: Hoare triple {26907#(<= max_~i~0 12)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26907#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:12,630 INFO L273 TraceCheckUtils]: 98: Hoare triple {26907#(<= max_~i~0 12)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26907#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:12,630 INFO L273 TraceCheckUtils]: 99: Hoare triple {26907#(<= max_~i~0 12)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26907#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:12,631 INFO L273 TraceCheckUtils]: 100: Hoare triple {26907#(<= max_~i~0 12)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26908#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:12,631 INFO L273 TraceCheckUtils]: 101: Hoare triple {26908#(<= max_~i~0 13)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26908#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:12,632 INFO L273 TraceCheckUtils]: 102: Hoare triple {26908#(<= max_~i~0 13)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26908#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:12,632 INFO L273 TraceCheckUtils]: 103: Hoare triple {26908#(<= max_~i~0 13)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26908#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:12,633 INFO L273 TraceCheckUtils]: 104: Hoare triple {26908#(<= max_~i~0 13)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26909#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:12,634 INFO L273 TraceCheckUtils]: 105: Hoare triple {26909#(<= max_~i~0 14)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26909#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:12,634 INFO L273 TraceCheckUtils]: 106: Hoare triple {26909#(<= max_~i~0 14)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26909#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:12,634 INFO L273 TraceCheckUtils]: 107: Hoare triple {26909#(<= max_~i~0 14)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26909#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:12,635 INFO L273 TraceCheckUtils]: 108: Hoare triple {26909#(<= max_~i~0 14)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26910#(<= max_~i~0 15)} is VALID [2018-11-23 12:17:12,636 INFO L273 TraceCheckUtils]: 109: Hoare triple {26910#(<= max_~i~0 15)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26910#(<= max_~i~0 15)} is VALID [2018-11-23 12:17:12,636 INFO L273 TraceCheckUtils]: 110: Hoare triple {26910#(<= max_~i~0 15)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26910#(<= max_~i~0 15)} is VALID [2018-11-23 12:17:12,637 INFO L273 TraceCheckUtils]: 111: Hoare triple {26910#(<= max_~i~0 15)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26910#(<= max_~i~0 15)} is VALID [2018-11-23 12:17:12,637 INFO L273 TraceCheckUtils]: 112: Hoare triple {26910#(<= max_~i~0 15)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26911#(<= max_~i~0 16)} is VALID [2018-11-23 12:17:12,638 INFO L273 TraceCheckUtils]: 113: Hoare triple {26911#(<= max_~i~0 16)} assume !(~i~0 < 20); {26894#false} is VALID [2018-11-23 12:17:12,638 INFO L273 TraceCheckUtils]: 114: Hoare triple {26894#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {26894#false} is VALID [2018-11-23 12:17:12,638 INFO L273 TraceCheckUtils]: 115: Hoare triple {26894#false} assume true; {26894#false} is VALID [2018-11-23 12:17:12,639 INFO L268 TraceCheckUtils]: 116: Hoare quadruple {26894#false} {26893#true} #77#return; {26894#false} is VALID [2018-11-23 12:17:12,639 INFO L273 TraceCheckUtils]: 117: Hoare triple {26894#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {26894#false} is VALID [2018-11-23 12:17:12,639 INFO L256 TraceCheckUtils]: 118: Hoare triple {26894#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {26893#true} is VALID [2018-11-23 12:17:12,639 INFO L273 TraceCheckUtils]: 119: Hoare triple {26893#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {26893#true} is VALID [2018-11-23 12:17:12,639 INFO L273 TraceCheckUtils]: 120: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,639 INFO L273 TraceCheckUtils]: 121: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,640 INFO L273 TraceCheckUtils]: 122: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,640 INFO L273 TraceCheckUtils]: 123: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,640 INFO L273 TraceCheckUtils]: 124: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,640 INFO L273 TraceCheckUtils]: 125: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,640 INFO L273 TraceCheckUtils]: 126: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,640 INFO L273 TraceCheckUtils]: 127: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,641 INFO L273 TraceCheckUtils]: 128: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,641 INFO L273 TraceCheckUtils]: 129: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,641 INFO L273 TraceCheckUtils]: 130: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,641 INFO L273 TraceCheckUtils]: 131: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,641 INFO L273 TraceCheckUtils]: 132: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,642 INFO L273 TraceCheckUtils]: 133: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,642 INFO L273 TraceCheckUtils]: 134: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,642 INFO L273 TraceCheckUtils]: 135: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,642 INFO L273 TraceCheckUtils]: 136: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,642 INFO L273 TraceCheckUtils]: 137: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,642 INFO L273 TraceCheckUtils]: 138: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,643 INFO L273 TraceCheckUtils]: 139: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,643 INFO L273 TraceCheckUtils]: 140: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,643 INFO L273 TraceCheckUtils]: 141: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,643 INFO L273 TraceCheckUtils]: 142: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,643 INFO L273 TraceCheckUtils]: 143: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,643 INFO L273 TraceCheckUtils]: 144: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,643 INFO L273 TraceCheckUtils]: 145: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,644 INFO L273 TraceCheckUtils]: 146: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,644 INFO L273 TraceCheckUtils]: 147: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,644 INFO L273 TraceCheckUtils]: 148: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,644 INFO L273 TraceCheckUtils]: 149: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,644 INFO L273 TraceCheckUtils]: 150: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,644 INFO L273 TraceCheckUtils]: 151: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,644 INFO L273 TraceCheckUtils]: 152: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,644 INFO L273 TraceCheckUtils]: 153: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,645 INFO L273 TraceCheckUtils]: 154: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,645 INFO L273 TraceCheckUtils]: 155: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,645 INFO L273 TraceCheckUtils]: 156: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,645 INFO L273 TraceCheckUtils]: 157: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,645 INFO L273 TraceCheckUtils]: 158: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,645 INFO L273 TraceCheckUtils]: 159: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,645 INFO L273 TraceCheckUtils]: 160: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,645 INFO L273 TraceCheckUtils]: 161: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,646 INFO L273 TraceCheckUtils]: 162: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,646 INFO L273 TraceCheckUtils]: 163: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,646 INFO L273 TraceCheckUtils]: 164: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,646 INFO L273 TraceCheckUtils]: 165: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,646 INFO L273 TraceCheckUtils]: 166: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,646 INFO L273 TraceCheckUtils]: 167: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,646 INFO L273 TraceCheckUtils]: 168: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,647 INFO L273 TraceCheckUtils]: 169: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,647 INFO L273 TraceCheckUtils]: 170: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,647 INFO L273 TraceCheckUtils]: 171: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,647 INFO L273 TraceCheckUtils]: 172: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,647 INFO L273 TraceCheckUtils]: 173: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,647 INFO L273 TraceCheckUtils]: 174: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,647 INFO L273 TraceCheckUtils]: 175: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,647 INFO L273 TraceCheckUtils]: 176: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,648 INFO L273 TraceCheckUtils]: 177: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,648 INFO L273 TraceCheckUtils]: 178: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,648 INFO L273 TraceCheckUtils]: 179: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,648 INFO L273 TraceCheckUtils]: 180: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,648 INFO L273 TraceCheckUtils]: 181: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,648 INFO L273 TraceCheckUtils]: 182: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,648 INFO L273 TraceCheckUtils]: 183: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,649 INFO L273 TraceCheckUtils]: 184: Hoare triple {26893#true} assume !(~i~0 < 20); {26893#true} is VALID [2018-11-23 12:17:12,649 INFO L273 TraceCheckUtils]: 185: Hoare triple {26893#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {26893#true} is VALID [2018-11-23 12:17:12,649 INFO L273 TraceCheckUtils]: 186: Hoare triple {26893#true} assume true; {26893#true} is VALID [2018-11-23 12:17:12,649 INFO L268 TraceCheckUtils]: 187: Hoare quadruple {26893#true} {26894#false} #79#return; {26894#false} is VALID [2018-11-23 12:17:12,649 INFO L273 TraceCheckUtils]: 188: Hoare triple {26894#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {26894#false} is VALID [2018-11-23 12:17:12,649 INFO L273 TraceCheckUtils]: 189: Hoare triple {26894#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {26894#false} is VALID [2018-11-23 12:17:12,649 INFO L273 TraceCheckUtils]: 190: Hoare triple {26894#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {26894#false} is VALID [2018-11-23 12:17:12,649 INFO L273 TraceCheckUtils]: 191: Hoare triple {26894#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {26894#false} is VALID [2018-11-23 12:17:12,650 INFO L273 TraceCheckUtils]: 192: Hoare triple {26894#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {26894#false} is VALID [2018-11-23 12:17:12,650 INFO L273 TraceCheckUtils]: 193: Hoare triple {26894#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {26894#false} is VALID [2018-11-23 12:17:12,650 INFO L273 TraceCheckUtils]: 194: Hoare triple {26894#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {26894#false} is VALID [2018-11-23 12:17:12,650 INFO L273 TraceCheckUtils]: 195: Hoare triple {26894#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {26894#false} is VALID [2018-11-23 12:17:12,650 INFO L273 TraceCheckUtils]: 196: Hoare triple {26894#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {26894#false} is VALID [2018-11-23 12:17:12,650 INFO L273 TraceCheckUtils]: 197: Hoare triple {26894#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {26894#false} is VALID [2018-11-23 12:17:12,650 INFO L273 TraceCheckUtils]: 198: Hoare triple {26894#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {26894#false} is VALID [2018-11-23 12:17:12,651 INFO L273 TraceCheckUtils]: 199: Hoare triple {26894#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {26894#false} is VALID [2018-11-23 12:17:12,651 INFO L273 TraceCheckUtils]: 200: Hoare triple {26894#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {26894#false} is VALID [2018-11-23 12:17:12,651 INFO L273 TraceCheckUtils]: 201: Hoare triple {26894#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {26894#false} is VALID [2018-11-23 12:17:12,651 INFO L273 TraceCheckUtils]: 202: Hoare triple {26894#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {26894#false} is VALID [2018-11-23 12:17:12,651 INFO L273 TraceCheckUtils]: 203: Hoare triple {26894#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {26894#false} is VALID [2018-11-23 12:17:12,651 INFO L273 TraceCheckUtils]: 204: Hoare triple {26894#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {26894#false} is VALID [2018-11-23 12:17:12,651 INFO L273 TraceCheckUtils]: 205: Hoare triple {26894#false} assume !(~i~2 < 19); {26894#false} is VALID [2018-11-23 12:17:12,651 INFO L273 TraceCheckUtils]: 206: Hoare triple {26894#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {26894#false} is VALID [2018-11-23 12:17:12,652 INFO L256 TraceCheckUtils]: 207: Hoare triple {26894#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {26893#true} is VALID [2018-11-23 12:17:12,652 INFO L273 TraceCheckUtils]: 208: Hoare triple {26893#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {26893#true} is VALID [2018-11-23 12:17:12,652 INFO L273 TraceCheckUtils]: 209: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,652 INFO L273 TraceCheckUtils]: 210: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,652 INFO L273 TraceCheckUtils]: 211: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,652 INFO L273 TraceCheckUtils]: 212: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,652 INFO L273 TraceCheckUtils]: 213: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,653 INFO L273 TraceCheckUtils]: 214: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,653 INFO L273 TraceCheckUtils]: 215: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,653 INFO L273 TraceCheckUtils]: 216: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,653 INFO L273 TraceCheckUtils]: 217: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,653 INFO L273 TraceCheckUtils]: 218: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,653 INFO L273 TraceCheckUtils]: 219: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,653 INFO L273 TraceCheckUtils]: 220: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,654 INFO L273 TraceCheckUtils]: 221: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,654 INFO L273 TraceCheckUtils]: 222: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,654 INFO L273 TraceCheckUtils]: 223: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,654 INFO L273 TraceCheckUtils]: 224: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,654 INFO L273 TraceCheckUtils]: 225: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,654 INFO L273 TraceCheckUtils]: 226: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,654 INFO L273 TraceCheckUtils]: 227: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,654 INFO L273 TraceCheckUtils]: 228: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,655 INFO L273 TraceCheckUtils]: 229: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,655 INFO L273 TraceCheckUtils]: 230: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,655 INFO L273 TraceCheckUtils]: 231: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,655 INFO L273 TraceCheckUtils]: 232: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,655 INFO L273 TraceCheckUtils]: 233: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,655 INFO L273 TraceCheckUtils]: 234: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,655 INFO L273 TraceCheckUtils]: 235: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,655 INFO L273 TraceCheckUtils]: 236: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,656 INFO L273 TraceCheckUtils]: 237: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,656 INFO L273 TraceCheckUtils]: 238: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,656 INFO L273 TraceCheckUtils]: 239: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,656 INFO L273 TraceCheckUtils]: 240: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,656 INFO L273 TraceCheckUtils]: 241: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,656 INFO L273 TraceCheckUtils]: 242: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,656 INFO L273 TraceCheckUtils]: 243: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,657 INFO L273 TraceCheckUtils]: 244: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,657 INFO L273 TraceCheckUtils]: 245: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,657 INFO L273 TraceCheckUtils]: 246: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,657 INFO L273 TraceCheckUtils]: 247: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,657 INFO L273 TraceCheckUtils]: 248: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,657 INFO L273 TraceCheckUtils]: 249: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,657 INFO L273 TraceCheckUtils]: 250: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,657 INFO L273 TraceCheckUtils]: 251: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,658 INFO L273 TraceCheckUtils]: 252: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,658 INFO L273 TraceCheckUtils]: 253: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,658 INFO L273 TraceCheckUtils]: 254: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,658 INFO L273 TraceCheckUtils]: 255: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,658 INFO L273 TraceCheckUtils]: 256: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,658 INFO L273 TraceCheckUtils]: 257: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,658 INFO L273 TraceCheckUtils]: 258: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,659 INFO L273 TraceCheckUtils]: 259: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,659 INFO L273 TraceCheckUtils]: 260: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,659 INFO L273 TraceCheckUtils]: 261: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,659 INFO L273 TraceCheckUtils]: 262: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,659 INFO L273 TraceCheckUtils]: 263: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,659 INFO L273 TraceCheckUtils]: 264: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,659 INFO L273 TraceCheckUtils]: 265: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,659 INFO L273 TraceCheckUtils]: 266: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,660 INFO L273 TraceCheckUtils]: 267: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,660 INFO L273 TraceCheckUtils]: 268: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,660 INFO L273 TraceCheckUtils]: 269: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:12,660 INFO L273 TraceCheckUtils]: 270: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:12,660 INFO L273 TraceCheckUtils]: 271: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:12,660 INFO L273 TraceCheckUtils]: 272: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:12,660 INFO L273 TraceCheckUtils]: 273: Hoare triple {26893#true} assume !(~i~0 < 20); {26893#true} is VALID [2018-11-23 12:17:12,661 INFO L273 TraceCheckUtils]: 274: Hoare triple {26893#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {26893#true} is VALID [2018-11-23 12:17:12,661 INFO L273 TraceCheckUtils]: 275: Hoare triple {26893#true} assume true; {26893#true} is VALID [2018-11-23 12:17:12,661 INFO L268 TraceCheckUtils]: 276: Hoare quadruple {26893#true} {26894#false} #81#return; {26894#false} is VALID [2018-11-23 12:17:12,661 INFO L273 TraceCheckUtils]: 277: Hoare triple {26894#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {26894#false} is VALID [2018-11-23 12:17:12,661 INFO L273 TraceCheckUtils]: 278: Hoare triple {26894#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {26894#false} is VALID [2018-11-23 12:17:12,661 INFO L273 TraceCheckUtils]: 279: Hoare triple {26894#false} assume !false; {26894#false} is VALID [2018-11-23 12:17:12,723 INFO L134 CoverageAnalysis]: Checked inductivity of 5135 backedges. 0 proven. 2616 refuted. 0 times theorem prover too weak. 2519 trivial. 0 not checked. [2018-11-23 12:17:12,724 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:17:12,724 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 32 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 32 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:17:12,733 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 12:17:13,112 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 19 check-sat command(s) [2018-11-23 12:17:13,112 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:17:13,179 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:13,181 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:17:13,903 INFO L256 TraceCheckUtils]: 0: Hoare triple {26893#true} call ULTIMATE.init(); {26893#true} is VALID [2018-11-23 12:17:13,904 INFO L273 TraceCheckUtils]: 1: Hoare triple {26893#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {26893#true} is VALID [2018-11-23 12:17:13,904 INFO L273 TraceCheckUtils]: 2: Hoare triple {26893#true} assume true; {26893#true} is VALID [2018-11-23 12:17:13,904 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {26893#true} {26893#true} #73#return; {26893#true} is VALID [2018-11-23 12:17:13,904 INFO L256 TraceCheckUtils]: 4: Hoare triple {26893#true} call #t~ret14 := main(); {26893#true} is VALID [2018-11-23 12:17:13,904 INFO L273 TraceCheckUtils]: 5: Hoare triple {26893#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {26893#true} is VALID [2018-11-23 12:17:13,905 INFO L273 TraceCheckUtils]: 6: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:13,905 INFO L273 TraceCheckUtils]: 7: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:13,905 INFO L273 TraceCheckUtils]: 8: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:13,905 INFO L273 TraceCheckUtils]: 9: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:13,905 INFO L273 TraceCheckUtils]: 10: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:13,906 INFO L273 TraceCheckUtils]: 11: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:13,906 INFO L273 TraceCheckUtils]: 12: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:13,906 INFO L273 TraceCheckUtils]: 13: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:13,906 INFO L273 TraceCheckUtils]: 14: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:13,906 INFO L273 TraceCheckUtils]: 15: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:13,906 INFO L273 TraceCheckUtils]: 16: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:13,906 INFO L273 TraceCheckUtils]: 17: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:13,906 INFO L273 TraceCheckUtils]: 18: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:13,907 INFO L273 TraceCheckUtils]: 19: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:13,907 INFO L273 TraceCheckUtils]: 20: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:13,907 INFO L273 TraceCheckUtils]: 21: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:13,907 INFO L273 TraceCheckUtils]: 22: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:13,907 INFO L273 TraceCheckUtils]: 23: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:13,907 INFO L273 TraceCheckUtils]: 24: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:13,907 INFO L273 TraceCheckUtils]: 25: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:13,907 INFO L273 TraceCheckUtils]: 26: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:13,907 INFO L273 TraceCheckUtils]: 27: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:13,907 INFO L273 TraceCheckUtils]: 28: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:13,908 INFO L273 TraceCheckUtils]: 29: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:13,908 INFO L273 TraceCheckUtils]: 30: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:13,908 INFO L273 TraceCheckUtils]: 31: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:13,908 INFO L273 TraceCheckUtils]: 32: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:13,908 INFO L273 TraceCheckUtils]: 33: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:13,908 INFO L273 TraceCheckUtils]: 34: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:13,908 INFO L273 TraceCheckUtils]: 35: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:13,908 INFO L273 TraceCheckUtils]: 36: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:13,908 INFO L273 TraceCheckUtils]: 37: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:13,908 INFO L273 TraceCheckUtils]: 38: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:13,909 INFO L273 TraceCheckUtils]: 39: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:13,909 INFO L273 TraceCheckUtils]: 40: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:13,909 INFO L273 TraceCheckUtils]: 41: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:13,909 INFO L273 TraceCheckUtils]: 42: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:13,909 INFO L273 TraceCheckUtils]: 43: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:13,909 INFO L273 TraceCheckUtils]: 44: Hoare triple {26893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {26893#true} is VALID [2018-11-23 12:17:13,909 INFO L273 TraceCheckUtils]: 45: Hoare triple {26893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {26893#true} is VALID [2018-11-23 12:17:13,909 INFO L273 TraceCheckUtils]: 46: Hoare triple {26893#true} assume !(~i~1 < 20); {26893#true} is VALID [2018-11-23 12:17:13,909 INFO L256 TraceCheckUtils]: 47: Hoare triple {26893#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {26893#true} is VALID [2018-11-23 12:17:13,909 INFO L273 TraceCheckUtils]: 48: Hoare triple {26893#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {26893#true} is VALID [2018-11-23 12:17:13,910 INFO L273 TraceCheckUtils]: 49: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,910 INFO L273 TraceCheckUtils]: 50: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,910 INFO L273 TraceCheckUtils]: 51: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,910 INFO L273 TraceCheckUtils]: 52: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,910 INFO L273 TraceCheckUtils]: 53: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,910 INFO L273 TraceCheckUtils]: 54: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,910 INFO L273 TraceCheckUtils]: 55: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,910 INFO L273 TraceCheckUtils]: 56: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,910 INFO L273 TraceCheckUtils]: 57: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,910 INFO L273 TraceCheckUtils]: 58: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,911 INFO L273 TraceCheckUtils]: 59: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,911 INFO L273 TraceCheckUtils]: 60: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,911 INFO L273 TraceCheckUtils]: 61: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,911 INFO L273 TraceCheckUtils]: 62: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,911 INFO L273 TraceCheckUtils]: 63: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,911 INFO L273 TraceCheckUtils]: 64: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,911 INFO L273 TraceCheckUtils]: 65: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,911 INFO L273 TraceCheckUtils]: 66: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,911 INFO L273 TraceCheckUtils]: 67: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,911 INFO L273 TraceCheckUtils]: 68: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,912 INFO L273 TraceCheckUtils]: 69: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,912 INFO L273 TraceCheckUtils]: 70: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,912 INFO L273 TraceCheckUtils]: 71: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,912 INFO L273 TraceCheckUtils]: 72: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,912 INFO L273 TraceCheckUtils]: 73: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,912 INFO L273 TraceCheckUtils]: 74: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,912 INFO L273 TraceCheckUtils]: 75: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,912 INFO L273 TraceCheckUtils]: 76: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,912 INFO L273 TraceCheckUtils]: 77: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,912 INFO L273 TraceCheckUtils]: 78: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,913 INFO L273 TraceCheckUtils]: 79: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,913 INFO L273 TraceCheckUtils]: 80: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,913 INFO L273 TraceCheckUtils]: 81: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,913 INFO L273 TraceCheckUtils]: 82: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,913 INFO L273 TraceCheckUtils]: 83: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,913 INFO L273 TraceCheckUtils]: 84: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,913 INFO L273 TraceCheckUtils]: 85: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,913 INFO L273 TraceCheckUtils]: 86: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,913 INFO L273 TraceCheckUtils]: 87: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,913 INFO L273 TraceCheckUtils]: 88: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,914 INFO L273 TraceCheckUtils]: 89: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,914 INFO L273 TraceCheckUtils]: 90: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,914 INFO L273 TraceCheckUtils]: 91: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,914 INFO L273 TraceCheckUtils]: 92: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,914 INFO L273 TraceCheckUtils]: 93: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,914 INFO L273 TraceCheckUtils]: 94: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,914 INFO L273 TraceCheckUtils]: 95: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,914 INFO L273 TraceCheckUtils]: 96: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,914 INFO L273 TraceCheckUtils]: 97: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,915 INFO L273 TraceCheckUtils]: 98: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,915 INFO L273 TraceCheckUtils]: 99: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,915 INFO L273 TraceCheckUtils]: 100: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,915 INFO L273 TraceCheckUtils]: 101: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,915 INFO L273 TraceCheckUtils]: 102: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,915 INFO L273 TraceCheckUtils]: 103: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,915 INFO L273 TraceCheckUtils]: 104: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,915 INFO L273 TraceCheckUtils]: 105: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,915 INFO L273 TraceCheckUtils]: 106: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,915 INFO L273 TraceCheckUtils]: 107: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,916 INFO L273 TraceCheckUtils]: 108: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,916 INFO L273 TraceCheckUtils]: 109: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,916 INFO L273 TraceCheckUtils]: 110: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,916 INFO L273 TraceCheckUtils]: 111: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,916 INFO L273 TraceCheckUtils]: 112: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,916 INFO L273 TraceCheckUtils]: 113: Hoare triple {26893#true} assume !(~i~0 < 20); {26893#true} is VALID [2018-11-23 12:17:13,916 INFO L273 TraceCheckUtils]: 114: Hoare triple {26893#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {26893#true} is VALID [2018-11-23 12:17:13,916 INFO L273 TraceCheckUtils]: 115: Hoare triple {26893#true} assume true; {26893#true} is VALID [2018-11-23 12:17:13,916 INFO L268 TraceCheckUtils]: 116: Hoare quadruple {26893#true} {26893#true} #77#return; {26893#true} is VALID [2018-11-23 12:17:13,916 INFO L273 TraceCheckUtils]: 117: Hoare triple {26893#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {26893#true} is VALID [2018-11-23 12:17:13,917 INFO L256 TraceCheckUtils]: 118: Hoare triple {26893#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {26893#true} is VALID [2018-11-23 12:17:13,917 INFO L273 TraceCheckUtils]: 119: Hoare triple {26893#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {26893#true} is VALID [2018-11-23 12:17:13,917 INFO L273 TraceCheckUtils]: 120: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,917 INFO L273 TraceCheckUtils]: 121: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,917 INFO L273 TraceCheckUtils]: 122: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,917 INFO L273 TraceCheckUtils]: 123: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,917 INFO L273 TraceCheckUtils]: 124: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,917 INFO L273 TraceCheckUtils]: 125: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,917 INFO L273 TraceCheckUtils]: 126: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,917 INFO L273 TraceCheckUtils]: 127: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,918 INFO L273 TraceCheckUtils]: 128: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,918 INFO L273 TraceCheckUtils]: 129: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,918 INFO L273 TraceCheckUtils]: 130: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,918 INFO L273 TraceCheckUtils]: 131: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,918 INFO L273 TraceCheckUtils]: 132: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,918 INFO L273 TraceCheckUtils]: 133: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,918 INFO L273 TraceCheckUtils]: 134: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,918 INFO L273 TraceCheckUtils]: 135: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,918 INFO L273 TraceCheckUtils]: 136: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,918 INFO L273 TraceCheckUtils]: 137: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,919 INFO L273 TraceCheckUtils]: 138: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,919 INFO L273 TraceCheckUtils]: 139: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,919 INFO L273 TraceCheckUtils]: 140: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,919 INFO L273 TraceCheckUtils]: 141: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,919 INFO L273 TraceCheckUtils]: 142: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,919 INFO L273 TraceCheckUtils]: 143: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,919 INFO L273 TraceCheckUtils]: 144: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,919 INFO L273 TraceCheckUtils]: 145: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,919 INFO L273 TraceCheckUtils]: 146: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,919 INFO L273 TraceCheckUtils]: 147: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,920 INFO L273 TraceCheckUtils]: 148: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,920 INFO L273 TraceCheckUtils]: 149: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,920 INFO L273 TraceCheckUtils]: 150: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,920 INFO L273 TraceCheckUtils]: 151: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,920 INFO L273 TraceCheckUtils]: 152: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,920 INFO L273 TraceCheckUtils]: 153: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,920 INFO L273 TraceCheckUtils]: 154: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,920 INFO L273 TraceCheckUtils]: 155: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,920 INFO L273 TraceCheckUtils]: 156: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,920 INFO L273 TraceCheckUtils]: 157: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,921 INFO L273 TraceCheckUtils]: 158: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,921 INFO L273 TraceCheckUtils]: 159: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,921 INFO L273 TraceCheckUtils]: 160: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,921 INFO L273 TraceCheckUtils]: 161: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,921 INFO L273 TraceCheckUtils]: 162: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,921 INFO L273 TraceCheckUtils]: 163: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,921 INFO L273 TraceCheckUtils]: 164: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,921 INFO L273 TraceCheckUtils]: 165: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,921 INFO L273 TraceCheckUtils]: 166: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,921 INFO L273 TraceCheckUtils]: 167: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,922 INFO L273 TraceCheckUtils]: 168: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,922 INFO L273 TraceCheckUtils]: 169: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,922 INFO L273 TraceCheckUtils]: 170: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,922 INFO L273 TraceCheckUtils]: 171: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,922 INFO L273 TraceCheckUtils]: 172: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,922 INFO L273 TraceCheckUtils]: 173: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,922 INFO L273 TraceCheckUtils]: 174: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,922 INFO L273 TraceCheckUtils]: 175: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,922 INFO L273 TraceCheckUtils]: 176: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,922 INFO L273 TraceCheckUtils]: 177: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,923 INFO L273 TraceCheckUtils]: 178: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,923 INFO L273 TraceCheckUtils]: 179: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,923 INFO L273 TraceCheckUtils]: 180: Hoare triple {26893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26893#true} is VALID [2018-11-23 12:17:13,923 INFO L273 TraceCheckUtils]: 181: Hoare triple {26893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26893#true} is VALID [2018-11-23 12:17:13,923 INFO L273 TraceCheckUtils]: 182: Hoare triple {26893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26893#true} is VALID [2018-11-23 12:17:13,923 INFO L273 TraceCheckUtils]: 183: Hoare triple {26893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26893#true} is VALID [2018-11-23 12:17:13,923 INFO L273 TraceCheckUtils]: 184: Hoare triple {26893#true} assume !(~i~0 < 20); {26893#true} is VALID [2018-11-23 12:17:13,923 INFO L273 TraceCheckUtils]: 185: Hoare triple {26893#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {26893#true} is VALID [2018-11-23 12:17:13,923 INFO L273 TraceCheckUtils]: 186: Hoare triple {26893#true} assume true; {26893#true} is VALID [2018-11-23 12:17:13,923 INFO L268 TraceCheckUtils]: 187: Hoare quadruple {26893#true} {26893#true} #79#return; {26893#true} is VALID [2018-11-23 12:17:13,924 INFO L273 TraceCheckUtils]: 188: Hoare triple {26893#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {27479#(<= main_~i~2 0)} is VALID [2018-11-23 12:17:13,924 INFO L273 TraceCheckUtils]: 189: Hoare triple {27479#(<= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {27479#(<= main_~i~2 0)} is VALID [2018-11-23 12:17:13,925 INFO L273 TraceCheckUtils]: 190: Hoare triple {27479#(<= main_~i~2 0)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {27486#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:13,925 INFO L273 TraceCheckUtils]: 191: Hoare triple {27486#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {27486#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:13,925 INFO L273 TraceCheckUtils]: 192: Hoare triple {27486#(<= main_~i~2 1)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {27493#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:13,926 INFO L273 TraceCheckUtils]: 193: Hoare triple {27493#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {27493#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:13,926 INFO L273 TraceCheckUtils]: 194: Hoare triple {27493#(<= main_~i~2 2)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {27500#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:13,927 INFO L273 TraceCheckUtils]: 195: Hoare triple {27500#(<= main_~i~2 3)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {27500#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:13,927 INFO L273 TraceCheckUtils]: 196: Hoare triple {27500#(<= main_~i~2 3)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {27507#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:13,928 INFO L273 TraceCheckUtils]: 197: Hoare triple {27507#(<= main_~i~2 4)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {27507#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:13,929 INFO L273 TraceCheckUtils]: 198: Hoare triple {27507#(<= main_~i~2 4)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {27514#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:13,929 INFO L273 TraceCheckUtils]: 199: Hoare triple {27514#(<= main_~i~2 5)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {27514#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:13,930 INFO L273 TraceCheckUtils]: 200: Hoare triple {27514#(<= main_~i~2 5)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {27521#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:13,930 INFO L273 TraceCheckUtils]: 201: Hoare triple {27521#(<= main_~i~2 6)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {27521#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:13,931 INFO L273 TraceCheckUtils]: 202: Hoare triple {27521#(<= main_~i~2 6)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {27528#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:13,931 INFO L273 TraceCheckUtils]: 203: Hoare triple {27528#(<= main_~i~2 7)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {27528#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:13,932 INFO L273 TraceCheckUtils]: 204: Hoare triple {27528#(<= main_~i~2 7)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {27535#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:13,933 INFO L273 TraceCheckUtils]: 205: Hoare triple {27535#(<= main_~i~2 8)} assume !(~i~2 < 19); {26894#false} is VALID [2018-11-23 12:17:13,933 INFO L273 TraceCheckUtils]: 206: Hoare triple {26894#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {26894#false} is VALID [2018-11-23 12:17:13,933 INFO L256 TraceCheckUtils]: 207: Hoare triple {26894#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {26894#false} is VALID [2018-11-23 12:17:13,933 INFO L273 TraceCheckUtils]: 208: Hoare triple {26894#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {26894#false} is VALID [2018-11-23 12:17:13,933 INFO L273 TraceCheckUtils]: 209: Hoare triple {26894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26894#false} is VALID [2018-11-23 12:17:13,933 INFO L273 TraceCheckUtils]: 210: Hoare triple {26894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26894#false} is VALID [2018-11-23 12:17:13,934 INFO L273 TraceCheckUtils]: 211: Hoare triple {26894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26894#false} is VALID [2018-11-23 12:17:13,934 INFO L273 TraceCheckUtils]: 212: Hoare triple {26894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26894#false} is VALID [2018-11-23 12:17:13,934 INFO L273 TraceCheckUtils]: 213: Hoare triple {26894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26894#false} is VALID [2018-11-23 12:17:13,934 INFO L273 TraceCheckUtils]: 214: Hoare triple {26894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26894#false} is VALID [2018-11-23 12:17:13,934 INFO L273 TraceCheckUtils]: 215: Hoare triple {26894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26894#false} is VALID [2018-11-23 12:17:13,934 INFO L273 TraceCheckUtils]: 216: Hoare triple {26894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26894#false} is VALID [2018-11-23 12:17:13,935 INFO L273 TraceCheckUtils]: 217: Hoare triple {26894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26894#false} is VALID [2018-11-23 12:17:13,935 INFO L273 TraceCheckUtils]: 218: Hoare triple {26894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26894#false} is VALID [2018-11-23 12:17:13,935 INFO L273 TraceCheckUtils]: 219: Hoare triple {26894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26894#false} is VALID [2018-11-23 12:17:13,935 INFO L273 TraceCheckUtils]: 220: Hoare triple {26894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26894#false} is VALID [2018-11-23 12:17:13,935 INFO L273 TraceCheckUtils]: 221: Hoare triple {26894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26894#false} is VALID [2018-11-23 12:17:13,935 INFO L273 TraceCheckUtils]: 222: Hoare triple {26894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26894#false} is VALID [2018-11-23 12:17:13,936 INFO L273 TraceCheckUtils]: 223: Hoare triple {26894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26894#false} is VALID [2018-11-23 12:17:13,936 INFO L273 TraceCheckUtils]: 224: Hoare triple {26894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26894#false} is VALID [2018-11-23 12:17:13,936 INFO L273 TraceCheckUtils]: 225: Hoare triple {26894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26894#false} is VALID [2018-11-23 12:17:13,936 INFO L273 TraceCheckUtils]: 226: Hoare triple {26894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26894#false} is VALID [2018-11-23 12:17:13,936 INFO L273 TraceCheckUtils]: 227: Hoare triple {26894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26894#false} is VALID [2018-11-23 12:17:13,936 INFO L273 TraceCheckUtils]: 228: Hoare triple {26894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26894#false} is VALID [2018-11-23 12:17:13,936 INFO L273 TraceCheckUtils]: 229: Hoare triple {26894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26894#false} is VALID [2018-11-23 12:17:13,936 INFO L273 TraceCheckUtils]: 230: Hoare triple {26894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26894#false} is VALID [2018-11-23 12:17:13,937 INFO L273 TraceCheckUtils]: 231: Hoare triple {26894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26894#false} is VALID [2018-11-23 12:17:13,937 INFO L273 TraceCheckUtils]: 232: Hoare triple {26894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26894#false} is VALID [2018-11-23 12:17:13,937 INFO L273 TraceCheckUtils]: 233: Hoare triple {26894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26894#false} is VALID [2018-11-23 12:17:13,937 INFO L273 TraceCheckUtils]: 234: Hoare triple {26894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26894#false} is VALID [2018-11-23 12:17:13,937 INFO L273 TraceCheckUtils]: 235: Hoare triple {26894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26894#false} is VALID [2018-11-23 12:17:13,937 INFO L273 TraceCheckUtils]: 236: Hoare triple {26894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26894#false} is VALID [2018-11-23 12:17:13,937 INFO L273 TraceCheckUtils]: 237: Hoare triple {26894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26894#false} is VALID [2018-11-23 12:17:13,937 INFO L273 TraceCheckUtils]: 238: Hoare triple {26894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26894#false} is VALID [2018-11-23 12:17:13,937 INFO L273 TraceCheckUtils]: 239: Hoare triple {26894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26894#false} is VALID [2018-11-23 12:17:13,938 INFO L273 TraceCheckUtils]: 240: Hoare triple {26894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26894#false} is VALID [2018-11-23 12:17:13,938 INFO L273 TraceCheckUtils]: 241: Hoare triple {26894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26894#false} is VALID [2018-11-23 12:17:13,938 INFO L273 TraceCheckUtils]: 242: Hoare triple {26894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26894#false} is VALID [2018-11-23 12:17:13,938 INFO L273 TraceCheckUtils]: 243: Hoare triple {26894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26894#false} is VALID [2018-11-23 12:17:13,938 INFO L273 TraceCheckUtils]: 244: Hoare triple {26894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26894#false} is VALID [2018-11-23 12:17:13,938 INFO L273 TraceCheckUtils]: 245: Hoare triple {26894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26894#false} is VALID [2018-11-23 12:17:13,938 INFO L273 TraceCheckUtils]: 246: Hoare triple {26894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26894#false} is VALID [2018-11-23 12:17:13,938 INFO L273 TraceCheckUtils]: 247: Hoare triple {26894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26894#false} is VALID [2018-11-23 12:17:13,938 INFO L273 TraceCheckUtils]: 248: Hoare triple {26894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26894#false} is VALID [2018-11-23 12:17:13,938 INFO L273 TraceCheckUtils]: 249: Hoare triple {26894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26894#false} is VALID [2018-11-23 12:17:13,939 INFO L273 TraceCheckUtils]: 250: Hoare triple {26894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26894#false} is VALID [2018-11-23 12:17:13,939 INFO L273 TraceCheckUtils]: 251: Hoare triple {26894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26894#false} is VALID [2018-11-23 12:17:13,939 INFO L273 TraceCheckUtils]: 252: Hoare triple {26894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26894#false} is VALID [2018-11-23 12:17:13,939 INFO L273 TraceCheckUtils]: 253: Hoare triple {26894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26894#false} is VALID [2018-11-23 12:17:13,939 INFO L273 TraceCheckUtils]: 254: Hoare triple {26894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26894#false} is VALID [2018-11-23 12:17:13,939 INFO L273 TraceCheckUtils]: 255: Hoare triple {26894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26894#false} is VALID [2018-11-23 12:17:13,939 INFO L273 TraceCheckUtils]: 256: Hoare triple {26894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26894#false} is VALID [2018-11-23 12:17:13,939 INFO L273 TraceCheckUtils]: 257: Hoare triple {26894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26894#false} is VALID [2018-11-23 12:17:13,939 INFO L273 TraceCheckUtils]: 258: Hoare triple {26894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26894#false} is VALID [2018-11-23 12:17:13,939 INFO L273 TraceCheckUtils]: 259: Hoare triple {26894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26894#false} is VALID [2018-11-23 12:17:13,940 INFO L273 TraceCheckUtils]: 260: Hoare triple {26894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26894#false} is VALID [2018-11-23 12:17:13,940 INFO L273 TraceCheckUtils]: 261: Hoare triple {26894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26894#false} is VALID [2018-11-23 12:17:13,940 INFO L273 TraceCheckUtils]: 262: Hoare triple {26894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26894#false} is VALID [2018-11-23 12:17:13,940 INFO L273 TraceCheckUtils]: 263: Hoare triple {26894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26894#false} is VALID [2018-11-23 12:17:13,940 INFO L273 TraceCheckUtils]: 264: Hoare triple {26894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26894#false} is VALID [2018-11-23 12:17:13,940 INFO L273 TraceCheckUtils]: 265: Hoare triple {26894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26894#false} is VALID [2018-11-23 12:17:13,940 INFO L273 TraceCheckUtils]: 266: Hoare triple {26894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26894#false} is VALID [2018-11-23 12:17:13,940 INFO L273 TraceCheckUtils]: 267: Hoare triple {26894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26894#false} is VALID [2018-11-23 12:17:13,940 INFO L273 TraceCheckUtils]: 268: Hoare triple {26894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26894#false} is VALID [2018-11-23 12:17:13,940 INFO L273 TraceCheckUtils]: 269: Hoare triple {26894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {26894#false} is VALID [2018-11-23 12:17:13,941 INFO L273 TraceCheckUtils]: 270: Hoare triple {26894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {26894#false} is VALID [2018-11-23 12:17:13,941 INFO L273 TraceCheckUtils]: 271: Hoare triple {26894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {26894#false} is VALID [2018-11-23 12:17:13,941 INFO L273 TraceCheckUtils]: 272: Hoare triple {26894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {26894#false} is VALID [2018-11-23 12:17:13,941 INFO L273 TraceCheckUtils]: 273: Hoare triple {26894#false} assume !(~i~0 < 20); {26894#false} is VALID [2018-11-23 12:17:13,941 INFO L273 TraceCheckUtils]: 274: Hoare triple {26894#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {26894#false} is VALID [2018-11-23 12:17:13,941 INFO L273 TraceCheckUtils]: 275: Hoare triple {26894#false} assume true; {26894#false} is VALID [2018-11-23 12:17:13,941 INFO L268 TraceCheckUtils]: 276: Hoare quadruple {26894#false} {26894#false} #81#return; {26894#false} is VALID [2018-11-23 12:17:13,941 INFO L273 TraceCheckUtils]: 277: Hoare triple {26894#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {26894#false} is VALID [2018-11-23 12:17:13,941 INFO L273 TraceCheckUtils]: 278: Hoare triple {26894#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {26894#false} is VALID [2018-11-23 12:17:13,942 INFO L273 TraceCheckUtils]: 279: Hoare triple {26894#false} assume !false; {26894#false} is VALID [2018-11-23 12:17:13,968 INFO L134 CoverageAnalysis]: Checked inductivity of 5135 backedges. 2122 proven. 64 refuted. 0 times theorem prover too weak. 2949 trivial. 0 not checked. [2018-11-23 12:17:13,988 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:17:13,989 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 11] total 28 [2018-11-23 12:17:13,989 INFO L78 Accepts]: Start accepts. Automaton has 28 states. Word has length 280 [2018-11-23 12:17:13,990 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:17:13,990 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 28 states. [2018-11-23 12:17:14,117 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 130 edges. 130 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:17:14,117 INFO L459 AbstractCegarLoop]: Interpolant automaton has 28 states [2018-11-23 12:17:14,117 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2018-11-23 12:17:14,118 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=225, Invalid=531, Unknown=0, NotChecked=0, Total=756 [2018-11-23 12:17:14,118 INFO L87 Difference]: Start difference. First operand 143 states and 163 transitions. Second operand 28 states. [2018-11-23 12:17:14,844 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:14,844 INFO L93 Difference]: Finished difference Result 248 states and 293 transitions. [2018-11-23 12:17:14,844 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2018-11-23 12:17:14,844 INFO L78 Accepts]: Start accepts. Automaton has 28 states. Word has length 280 [2018-11-23 12:17:14,844 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:17:14,844 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 28 states. [2018-11-23 12:17:14,845 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 163 transitions. [2018-11-23 12:17:14,846 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 28 states. [2018-11-23 12:17:14,847 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 163 transitions. [2018-11-23 12:17:14,847 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 28 states and 163 transitions. [2018-11-23 12:17:14,997 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 163 edges. 163 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:17:15,001 INFO L225 Difference]: With dead ends: 248 [2018-11-23 12:17:15,001 INFO L226 Difference]: Without dead ends: 153 [2018-11-23 12:17:15,001 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 298 GetRequests, 272 SyntacticMatches, 0 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 144 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=225, Invalid=531, Unknown=0, NotChecked=0, Total=756 [2018-11-23 12:17:15,002 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 153 states. [2018-11-23 12:17:15,073 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 153 to 149. [2018-11-23 12:17:15,074 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:17:15,074 INFO L82 GeneralOperation]: Start isEquivalent. First operand 153 states. Second operand 149 states. [2018-11-23 12:17:15,074 INFO L74 IsIncluded]: Start isIncluded. First operand 153 states. Second operand 149 states. [2018-11-23 12:17:15,074 INFO L87 Difference]: Start difference. First operand 153 states. Second operand 149 states. [2018-11-23 12:17:15,077 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:15,077 INFO L93 Difference]: Finished difference Result 153 states and 175 transitions. [2018-11-23 12:17:15,078 INFO L276 IsEmpty]: Start isEmpty. Operand 153 states and 175 transitions. [2018-11-23 12:17:15,078 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:15,078 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:15,078 INFO L74 IsIncluded]: Start isIncluded. First operand 149 states. Second operand 153 states. [2018-11-23 12:17:15,078 INFO L87 Difference]: Start difference. First operand 149 states. Second operand 153 states. [2018-11-23 12:17:15,081 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:15,081 INFO L93 Difference]: Finished difference Result 153 states and 175 transitions. [2018-11-23 12:17:15,081 INFO L276 IsEmpty]: Start isEmpty. Operand 153 states and 175 transitions. [2018-11-23 12:17:15,082 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:15,082 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:15,082 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:17:15,082 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:17:15,082 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 149 states. [2018-11-23 12:17:15,084 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 149 states to 149 states and 170 transitions. [2018-11-23 12:17:15,085 INFO L78 Accepts]: Start accepts. Automaton has 149 states and 170 transitions. Word has length 280 [2018-11-23 12:17:15,085 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:17:15,085 INFO L480 AbstractCegarLoop]: Abstraction has 149 states and 170 transitions. [2018-11-23 12:17:15,085 INFO L481 AbstractCegarLoop]: Interpolant automaton has 28 states. [2018-11-23 12:17:15,085 INFO L276 IsEmpty]: Start isEmpty. Operand 149 states and 170 transitions. [2018-11-23 12:17:15,087 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 295 [2018-11-23 12:17:15,087 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:17:15,087 INFO L402 BasicCegarLoop]: trace histogram [51, 51, 51, 51, 20, 20, 9, 9, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:17:15,088 INFO L423 AbstractCegarLoop]: === Iteration 34 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:17:15,088 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:17:15,088 INFO L82 PathProgramCache]: Analyzing trace with hash -1046516020, now seen corresponding path program 31 times [2018-11-23 12:17:15,088 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:17:15,088 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:17:15,089 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:15,089 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:17:15,089 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:15,137 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:17,260 INFO L256 TraceCheckUtils]: 0: Hoare triple {28606#true} call ULTIMATE.init(); {28606#true} is VALID [2018-11-23 12:17:17,261 INFO L273 TraceCheckUtils]: 1: Hoare triple {28606#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {28606#true} is VALID [2018-11-23 12:17:17,261 INFO L273 TraceCheckUtils]: 2: Hoare triple {28606#true} assume true; {28606#true} is VALID [2018-11-23 12:17:17,261 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {28606#true} {28606#true} #73#return; {28606#true} is VALID [2018-11-23 12:17:17,261 INFO L256 TraceCheckUtils]: 4: Hoare triple {28606#true} call #t~ret14 := main(); {28606#true} is VALID [2018-11-23 12:17:17,261 INFO L273 TraceCheckUtils]: 5: Hoare triple {28606#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {28606#true} is VALID [2018-11-23 12:17:17,262 INFO L273 TraceCheckUtils]: 6: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,262 INFO L273 TraceCheckUtils]: 7: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,262 INFO L273 TraceCheckUtils]: 8: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,262 INFO L273 TraceCheckUtils]: 9: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,262 INFO L273 TraceCheckUtils]: 10: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,262 INFO L273 TraceCheckUtils]: 11: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,263 INFO L273 TraceCheckUtils]: 12: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,263 INFO L273 TraceCheckUtils]: 13: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,263 INFO L273 TraceCheckUtils]: 14: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,263 INFO L273 TraceCheckUtils]: 15: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,263 INFO L273 TraceCheckUtils]: 16: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,263 INFO L273 TraceCheckUtils]: 17: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,263 INFO L273 TraceCheckUtils]: 18: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,263 INFO L273 TraceCheckUtils]: 19: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,263 INFO L273 TraceCheckUtils]: 20: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,263 INFO L273 TraceCheckUtils]: 21: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,264 INFO L273 TraceCheckUtils]: 22: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,264 INFO L273 TraceCheckUtils]: 23: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,264 INFO L273 TraceCheckUtils]: 24: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,264 INFO L273 TraceCheckUtils]: 25: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,264 INFO L273 TraceCheckUtils]: 26: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,264 INFO L273 TraceCheckUtils]: 27: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,264 INFO L273 TraceCheckUtils]: 28: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,264 INFO L273 TraceCheckUtils]: 29: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,264 INFO L273 TraceCheckUtils]: 30: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,265 INFO L273 TraceCheckUtils]: 31: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,265 INFO L273 TraceCheckUtils]: 32: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,265 INFO L273 TraceCheckUtils]: 33: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,265 INFO L273 TraceCheckUtils]: 34: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,265 INFO L273 TraceCheckUtils]: 35: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,265 INFO L273 TraceCheckUtils]: 36: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,265 INFO L273 TraceCheckUtils]: 37: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,265 INFO L273 TraceCheckUtils]: 38: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,265 INFO L273 TraceCheckUtils]: 39: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,265 INFO L273 TraceCheckUtils]: 40: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,266 INFO L273 TraceCheckUtils]: 41: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,266 INFO L273 TraceCheckUtils]: 42: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,266 INFO L273 TraceCheckUtils]: 43: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,266 INFO L273 TraceCheckUtils]: 44: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,266 INFO L273 TraceCheckUtils]: 45: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,266 INFO L273 TraceCheckUtils]: 46: Hoare triple {28606#true} assume !(~i~1 < 20); {28606#true} is VALID [2018-11-23 12:17:17,266 INFO L256 TraceCheckUtils]: 47: Hoare triple {28606#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {28606#true} is VALID [2018-11-23 12:17:17,266 INFO L273 TraceCheckUtils]: 48: Hoare triple {28606#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {28608#(= max_~i~0 0)} is VALID [2018-11-23 12:17:17,267 INFO L273 TraceCheckUtils]: 49: Hoare triple {28608#(= max_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28608#(= max_~i~0 0)} is VALID [2018-11-23 12:17:17,267 INFO L273 TraceCheckUtils]: 50: Hoare triple {28608#(= max_~i~0 0)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28608#(= max_~i~0 0)} is VALID [2018-11-23 12:17:17,267 INFO L273 TraceCheckUtils]: 51: Hoare triple {28608#(= max_~i~0 0)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28608#(= max_~i~0 0)} is VALID [2018-11-23 12:17:17,268 INFO L273 TraceCheckUtils]: 52: Hoare triple {28608#(= max_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28609#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:17,268 INFO L273 TraceCheckUtils]: 53: Hoare triple {28609#(<= max_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28609#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:17,268 INFO L273 TraceCheckUtils]: 54: Hoare triple {28609#(<= max_~i~0 1)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28609#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:17,269 INFO L273 TraceCheckUtils]: 55: Hoare triple {28609#(<= max_~i~0 1)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28609#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:17,269 INFO L273 TraceCheckUtils]: 56: Hoare triple {28609#(<= max_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28610#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:17,269 INFO L273 TraceCheckUtils]: 57: Hoare triple {28610#(<= max_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28610#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:17,270 INFO L273 TraceCheckUtils]: 58: Hoare triple {28610#(<= max_~i~0 2)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28610#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:17,270 INFO L273 TraceCheckUtils]: 59: Hoare triple {28610#(<= max_~i~0 2)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28610#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:17,270 INFO L273 TraceCheckUtils]: 60: Hoare triple {28610#(<= max_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28611#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:17,271 INFO L273 TraceCheckUtils]: 61: Hoare triple {28611#(<= max_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28611#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:17,271 INFO L273 TraceCheckUtils]: 62: Hoare triple {28611#(<= max_~i~0 3)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28611#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:17,272 INFO L273 TraceCheckUtils]: 63: Hoare triple {28611#(<= max_~i~0 3)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28611#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:17,272 INFO L273 TraceCheckUtils]: 64: Hoare triple {28611#(<= max_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28612#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:17,273 INFO L273 TraceCheckUtils]: 65: Hoare triple {28612#(<= max_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28612#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:17,273 INFO L273 TraceCheckUtils]: 66: Hoare triple {28612#(<= max_~i~0 4)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28612#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:17,274 INFO L273 TraceCheckUtils]: 67: Hoare triple {28612#(<= max_~i~0 4)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28612#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:17,274 INFO L273 TraceCheckUtils]: 68: Hoare triple {28612#(<= max_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28613#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:17,275 INFO L273 TraceCheckUtils]: 69: Hoare triple {28613#(<= max_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28613#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:17,275 INFO L273 TraceCheckUtils]: 70: Hoare triple {28613#(<= max_~i~0 5)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28613#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:17,276 INFO L273 TraceCheckUtils]: 71: Hoare triple {28613#(<= max_~i~0 5)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28613#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:17,276 INFO L273 TraceCheckUtils]: 72: Hoare triple {28613#(<= max_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28614#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:17,277 INFO L273 TraceCheckUtils]: 73: Hoare triple {28614#(<= max_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28614#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:17,277 INFO L273 TraceCheckUtils]: 74: Hoare triple {28614#(<= max_~i~0 6)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28614#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:17,278 INFO L273 TraceCheckUtils]: 75: Hoare triple {28614#(<= max_~i~0 6)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28614#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:17,279 INFO L273 TraceCheckUtils]: 76: Hoare triple {28614#(<= max_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28615#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:17,279 INFO L273 TraceCheckUtils]: 77: Hoare triple {28615#(<= max_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28615#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:17,280 INFO L273 TraceCheckUtils]: 78: Hoare triple {28615#(<= max_~i~0 7)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28615#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:17,280 INFO L273 TraceCheckUtils]: 79: Hoare triple {28615#(<= max_~i~0 7)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28615#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:17,281 INFO L273 TraceCheckUtils]: 80: Hoare triple {28615#(<= max_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28616#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:17,281 INFO L273 TraceCheckUtils]: 81: Hoare triple {28616#(<= max_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28616#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:17,282 INFO L273 TraceCheckUtils]: 82: Hoare triple {28616#(<= max_~i~0 8)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28616#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:17,282 INFO L273 TraceCheckUtils]: 83: Hoare triple {28616#(<= max_~i~0 8)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28616#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:17,283 INFO L273 TraceCheckUtils]: 84: Hoare triple {28616#(<= max_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28617#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:17,283 INFO L273 TraceCheckUtils]: 85: Hoare triple {28617#(<= max_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28617#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:17,284 INFO L273 TraceCheckUtils]: 86: Hoare triple {28617#(<= max_~i~0 9)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28617#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:17,284 INFO L273 TraceCheckUtils]: 87: Hoare triple {28617#(<= max_~i~0 9)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28617#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:17,285 INFO L273 TraceCheckUtils]: 88: Hoare triple {28617#(<= max_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28618#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:17,285 INFO L273 TraceCheckUtils]: 89: Hoare triple {28618#(<= max_~i~0 10)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28618#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:17,286 INFO L273 TraceCheckUtils]: 90: Hoare triple {28618#(<= max_~i~0 10)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28618#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:17,286 INFO L273 TraceCheckUtils]: 91: Hoare triple {28618#(<= max_~i~0 10)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28618#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:17,287 INFO L273 TraceCheckUtils]: 92: Hoare triple {28618#(<= max_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28619#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:17,287 INFO L273 TraceCheckUtils]: 93: Hoare triple {28619#(<= max_~i~0 11)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28619#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:17,288 INFO L273 TraceCheckUtils]: 94: Hoare triple {28619#(<= max_~i~0 11)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28619#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:17,288 INFO L273 TraceCheckUtils]: 95: Hoare triple {28619#(<= max_~i~0 11)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28619#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:17,289 INFO L273 TraceCheckUtils]: 96: Hoare triple {28619#(<= max_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28620#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:17,289 INFO L273 TraceCheckUtils]: 97: Hoare triple {28620#(<= max_~i~0 12)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28620#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:17,290 INFO L273 TraceCheckUtils]: 98: Hoare triple {28620#(<= max_~i~0 12)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28620#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:17,290 INFO L273 TraceCheckUtils]: 99: Hoare triple {28620#(<= max_~i~0 12)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28620#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:17,291 INFO L273 TraceCheckUtils]: 100: Hoare triple {28620#(<= max_~i~0 12)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28621#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:17,291 INFO L273 TraceCheckUtils]: 101: Hoare triple {28621#(<= max_~i~0 13)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28621#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:17,292 INFO L273 TraceCheckUtils]: 102: Hoare triple {28621#(<= max_~i~0 13)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28621#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:17,292 INFO L273 TraceCheckUtils]: 103: Hoare triple {28621#(<= max_~i~0 13)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28621#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:17,293 INFO L273 TraceCheckUtils]: 104: Hoare triple {28621#(<= max_~i~0 13)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28622#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:17,294 INFO L273 TraceCheckUtils]: 105: Hoare triple {28622#(<= max_~i~0 14)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28622#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:17,294 INFO L273 TraceCheckUtils]: 106: Hoare triple {28622#(<= max_~i~0 14)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28622#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:17,294 INFO L273 TraceCheckUtils]: 107: Hoare triple {28622#(<= max_~i~0 14)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28622#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:17,295 INFO L273 TraceCheckUtils]: 108: Hoare triple {28622#(<= max_~i~0 14)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28623#(<= max_~i~0 15)} is VALID [2018-11-23 12:17:17,296 INFO L273 TraceCheckUtils]: 109: Hoare triple {28623#(<= max_~i~0 15)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28623#(<= max_~i~0 15)} is VALID [2018-11-23 12:17:17,296 INFO L273 TraceCheckUtils]: 110: Hoare triple {28623#(<= max_~i~0 15)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28623#(<= max_~i~0 15)} is VALID [2018-11-23 12:17:17,297 INFO L273 TraceCheckUtils]: 111: Hoare triple {28623#(<= max_~i~0 15)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28623#(<= max_~i~0 15)} is VALID [2018-11-23 12:17:17,297 INFO L273 TraceCheckUtils]: 112: Hoare triple {28623#(<= max_~i~0 15)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28624#(<= max_~i~0 16)} is VALID [2018-11-23 12:17:17,298 INFO L273 TraceCheckUtils]: 113: Hoare triple {28624#(<= max_~i~0 16)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28624#(<= max_~i~0 16)} is VALID [2018-11-23 12:17:17,298 INFO L273 TraceCheckUtils]: 114: Hoare triple {28624#(<= max_~i~0 16)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28624#(<= max_~i~0 16)} is VALID [2018-11-23 12:17:17,299 INFO L273 TraceCheckUtils]: 115: Hoare triple {28624#(<= max_~i~0 16)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28624#(<= max_~i~0 16)} is VALID [2018-11-23 12:17:17,299 INFO L273 TraceCheckUtils]: 116: Hoare triple {28624#(<= max_~i~0 16)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28625#(<= max_~i~0 17)} is VALID [2018-11-23 12:17:17,300 INFO L273 TraceCheckUtils]: 117: Hoare triple {28625#(<= max_~i~0 17)} assume !(~i~0 < 20); {28607#false} is VALID [2018-11-23 12:17:17,300 INFO L273 TraceCheckUtils]: 118: Hoare triple {28607#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {28607#false} is VALID [2018-11-23 12:17:17,300 INFO L273 TraceCheckUtils]: 119: Hoare triple {28607#false} assume true; {28607#false} is VALID [2018-11-23 12:17:17,300 INFO L268 TraceCheckUtils]: 120: Hoare quadruple {28607#false} {28606#true} #77#return; {28607#false} is VALID [2018-11-23 12:17:17,301 INFO L273 TraceCheckUtils]: 121: Hoare triple {28607#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {28607#false} is VALID [2018-11-23 12:17:17,301 INFO L256 TraceCheckUtils]: 122: Hoare triple {28607#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {28606#true} is VALID [2018-11-23 12:17:17,301 INFO L273 TraceCheckUtils]: 123: Hoare triple {28606#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {28606#true} is VALID [2018-11-23 12:17:17,301 INFO L273 TraceCheckUtils]: 124: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,301 INFO L273 TraceCheckUtils]: 125: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,301 INFO L273 TraceCheckUtils]: 126: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,302 INFO L273 TraceCheckUtils]: 127: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,302 INFO L273 TraceCheckUtils]: 128: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,302 INFO L273 TraceCheckUtils]: 129: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,302 INFO L273 TraceCheckUtils]: 130: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,302 INFO L273 TraceCheckUtils]: 131: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,302 INFO L273 TraceCheckUtils]: 132: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,303 INFO L273 TraceCheckUtils]: 133: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,303 INFO L273 TraceCheckUtils]: 134: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,303 INFO L273 TraceCheckUtils]: 135: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,303 INFO L273 TraceCheckUtils]: 136: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,303 INFO L273 TraceCheckUtils]: 137: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,303 INFO L273 TraceCheckUtils]: 138: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,304 INFO L273 TraceCheckUtils]: 139: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,304 INFO L273 TraceCheckUtils]: 140: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,304 INFO L273 TraceCheckUtils]: 141: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,304 INFO L273 TraceCheckUtils]: 142: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,304 INFO L273 TraceCheckUtils]: 143: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,304 INFO L273 TraceCheckUtils]: 144: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,305 INFO L273 TraceCheckUtils]: 145: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,305 INFO L273 TraceCheckUtils]: 146: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,305 INFO L273 TraceCheckUtils]: 147: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,305 INFO L273 TraceCheckUtils]: 148: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,305 INFO L273 TraceCheckUtils]: 149: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,305 INFO L273 TraceCheckUtils]: 150: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,306 INFO L273 TraceCheckUtils]: 151: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,306 INFO L273 TraceCheckUtils]: 152: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,306 INFO L273 TraceCheckUtils]: 153: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,306 INFO L273 TraceCheckUtils]: 154: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,306 INFO L273 TraceCheckUtils]: 155: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,306 INFO L273 TraceCheckUtils]: 156: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,306 INFO L273 TraceCheckUtils]: 157: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,306 INFO L273 TraceCheckUtils]: 158: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,306 INFO L273 TraceCheckUtils]: 159: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,306 INFO L273 TraceCheckUtils]: 160: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,307 INFO L273 TraceCheckUtils]: 161: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,307 INFO L273 TraceCheckUtils]: 162: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,307 INFO L273 TraceCheckUtils]: 163: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,307 INFO L273 TraceCheckUtils]: 164: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,307 INFO L273 TraceCheckUtils]: 165: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,307 INFO L273 TraceCheckUtils]: 166: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,307 INFO L273 TraceCheckUtils]: 167: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,307 INFO L273 TraceCheckUtils]: 168: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,307 INFO L273 TraceCheckUtils]: 169: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,307 INFO L273 TraceCheckUtils]: 170: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,308 INFO L273 TraceCheckUtils]: 171: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,308 INFO L273 TraceCheckUtils]: 172: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,308 INFO L273 TraceCheckUtils]: 173: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,308 INFO L273 TraceCheckUtils]: 174: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,308 INFO L273 TraceCheckUtils]: 175: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,308 INFO L273 TraceCheckUtils]: 176: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,308 INFO L273 TraceCheckUtils]: 177: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,308 INFO L273 TraceCheckUtils]: 178: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,308 INFO L273 TraceCheckUtils]: 179: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,309 INFO L273 TraceCheckUtils]: 180: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,309 INFO L273 TraceCheckUtils]: 181: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,309 INFO L273 TraceCheckUtils]: 182: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,309 INFO L273 TraceCheckUtils]: 183: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,309 INFO L273 TraceCheckUtils]: 184: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,309 INFO L273 TraceCheckUtils]: 185: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,309 INFO L273 TraceCheckUtils]: 186: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,309 INFO L273 TraceCheckUtils]: 187: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,309 INFO L273 TraceCheckUtils]: 188: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,309 INFO L273 TraceCheckUtils]: 189: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,310 INFO L273 TraceCheckUtils]: 190: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,310 INFO L273 TraceCheckUtils]: 191: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,310 INFO L273 TraceCheckUtils]: 192: Hoare triple {28606#true} assume !(~i~0 < 20); {28606#true} is VALID [2018-11-23 12:17:17,310 INFO L273 TraceCheckUtils]: 193: Hoare triple {28606#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {28606#true} is VALID [2018-11-23 12:17:17,310 INFO L273 TraceCheckUtils]: 194: Hoare triple {28606#true} assume true; {28606#true} is VALID [2018-11-23 12:17:17,310 INFO L268 TraceCheckUtils]: 195: Hoare quadruple {28606#true} {28607#false} #79#return; {28607#false} is VALID [2018-11-23 12:17:17,310 INFO L273 TraceCheckUtils]: 196: Hoare triple {28607#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {28607#false} is VALID [2018-11-23 12:17:17,310 INFO L273 TraceCheckUtils]: 197: Hoare triple {28607#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {28607#false} is VALID [2018-11-23 12:17:17,310 INFO L273 TraceCheckUtils]: 198: Hoare triple {28607#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {28607#false} is VALID [2018-11-23 12:17:17,310 INFO L273 TraceCheckUtils]: 199: Hoare triple {28607#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {28607#false} is VALID [2018-11-23 12:17:17,311 INFO L273 TraceCheckUtils]: 200: Hoare triple {28607#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {28607#false} is VALID [2018-11-23 12:17:17,311 INFO L273 TraceCheckUtils]: 201: Hoare triple {28607#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {28607#false} is VALID [2018-11-23 12:17:17,311 INFO L273 TraceCheckUtils]: 202: Hoare triple {28607#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {28607#false} is VALID [2018-11-23 12:17:17,311 INFO L273 TraceCheckUtils]: 203: Hoare triple {28607#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {28607#false} is VALID [2018-11-23 12:17:17,311 INFO L273 TraceCheckUtils]: 204: Hoare triple {28607#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {28607#false} is VALID [2018-11-23 12:17:17,311 INFO L273 TraceCheckUtils]: 205: Hoare triple {28607#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {28607#false} is VALID [2018-11-23 12:17:17,311 INFO L273 TraceCheckUtils]: 206: Hoare triple {28607#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {28607#false} is VALID [2018-11-23 12:17:17,311 INFO L273 TraceCheckUtils]: 207: Hoare triple {28607#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {28607#false} is VALID [2018-11-23 12:17:17,311 INFO L273 TraceCheckUtils]: 208: Hoare triple {28607#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {28607#false} is VALID [2018-11-23 12:17:17,312 INFO L273 TraceCheckUtils]: 209: Hoare triple {28607#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {28607#false} is VALID [2018-11-23 12:17:17,312 INFO L273 TraceCheckUtils]: 210: Hoare triple {28607#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {28607#false} is VALID [2018-11-23 12:17:17,312 INFO L273 TraceCheckUtils]: 211: Hoare triple {28607#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {28607#false} is VALID [2018-11-23 12:17:17,312 INFO L273 TraceCheckUtils]: 212: Hoare triple {28607#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {28607#false} is VALID [2018-11-23 12:17:17,312 INFO L273 TraceCheckUtils]: 213: Hoare triple {28607#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {28607#false} is VALID [2018-11-23 12:17:17,312 INFO L273 TraceCheckUtils]: 214: Hoare triple {28607#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {28607#false} is VALID [2018-11-23 12:17:17,312 INFO L273 TraceCheckUtils]: 215: Hoare triple {28607#false} assume !(~i~2 < 19); {28607#false} is VALID [2018-11-23 12:17:17,312 INFO L273 TraceCheckUtils]: 216: Hoare triple {28607#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {28607#false} is VALID [2018-11-23 12:17:17,312 INFO L256 TraceCheckUtils]: 217: Hoare triple {28607#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {28606#true} is VALID [2018-11-23 12:17:17,312 INFO L273 TraceCheckUtils]: 218: Hoare triple {28606#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {28606#true} is VALID [2018-11-23 12:17:17,313 INFO L273 TraceCheckUtils]: 219: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,313 INFO L273 TraceCheckUtils]: 220: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,313 INFO L273 TraceCheckUtils]: 221: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,313 INFO L273 TraceCheckUtils]: 222: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,313 INFO L273 TraceCheckUtils]: 223: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,313 INFO L273 TraceCheckUtils]: 224: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,313 INFO L273 TraceCheckUtils]: 225: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,313 INFO L273 TraceCheckUtils]: 226: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,313 INFO L273 TraceCheckUtils]: 227: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,313 INFO L273 TraceCheckUtils]: 228: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,314 INFO L273 TraceCheckUtils]: 229: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,314 INFO L273 TraceCheckUtils]: 230: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,314 INFO L273 TraceCheckUtils]: 231: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,314 INFO L273 TraceCheckUtils]: 232: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,314 INFO L273 TraceCheckUtils]: 233: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,314 INFO L273 TraceCheckUtils]: 234: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,314 INFO L273 TraceCheckUtils]: 235: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,314 INFO L273 TraceCheckUtils]: 236: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,314 INFO L273 TraceCheckUtils]: 237: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,314 INFO L273 TraceCheckUtils]: 238: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,315 INFO L273 TraceCheckUtils]: 239: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,315 INFO L273 TraceCheckUtils]: 240: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,315 INFO L273 TraceCheckUtils]: 241: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,315 INFO L273 TraceCheckUtils]: 242: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,315 INFO L273 TraceCheckUtils]: 243: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,315 INFO L273 TraceCheckUtils]: 244: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,315 INFO L273 TraceCheckUtils]: 245: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,315 INFO L273 TraceCheckUtils]: 246: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,315 INFO L273 TraceCheckUtils]: 247: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,315 INFO L273 TraceCheckUtils]: 248: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,316 INFO L273 TraceCheckUtils]: 249: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,316 INFO L273 TraceCheckUtils]: 250: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,316 INFO L273 TraceCheckUtils]: 251: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,316 INFO L273 TraceCheckUtils]: 252: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,316 INFO L273 TraceCheckUtils]: 253: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,316 INFO L273 TraceCheckUtils]: 254: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,316 INFO L273 TraceCheckUtils]: 255: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,316 INFO L273 TraceCheckUtils]: 256: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,316 INFO L273 TraceCheckUtils]: 257: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,317 INFO L273 TraceCheckUtils]: 258: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,317 INFO L273 TraceCheckUtils]: 259: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,317 INFO L273 TraceCheckUtils]: 260: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,317 INFO L273 TraceCheckUtils]: 261: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,317 INFO L273 TraceCheckUtils]: 262: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,317 INFO L273 TraceCheckUtils]: 263: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,317 INFO L273 TraceCheckUtils]: 264: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,317 INFO L273 TraceCheckUtils]: 265: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,317 INFO L273 TraceCheckUtils]: 266: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,317 INFO L273 TraceCheckUtils]: 267: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,318 INFO L273 TraceCheckUtils]: 268: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,318 INFO L273 TraceCheckUtils]: 269: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,318 INFO L273 TraceCheckUtils]: 270: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,318 INFO L273 TraceCheckUtils]: 271: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,318 INFO L273 TraceCheckUtils]: 272: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,318 INFO L273 TraceCheckUtils]: 273: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,318 INFO L273 TraceCheckUtils]: 274: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,318 INFO L273 TraceCheckUtils]: 275: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,318 INFO L273 TraceCheckUtils]: 276: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,318 INFO L273 TraceCheckUtils]: 277: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,319 INFO L273 TraceCheckUtils]: 278: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,319 INFO L273 TraceCheckUtils]: 279: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,319 INFO L273 TraceCheckUtils]: 280: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,319 INFO L273 TraceCheckUtils]: 281: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,319 INFO L273 TraceCheckUtils]: 282: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,319 INFO L273 TraceCheckUtils]: 283: Hoare triple {28606#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28606#true} is VALID [2018-11-23 12:17:17,319 INFO L273 TraceCheckUtils]: 284: Hoare triple {28606#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28606#true} is VALID [2018-11-23 12:17:17,319 INFO L273 TraceCheckUtils]: 285: Hoare triple {28606#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28606#true} is VALID [2018-11-23 12:17:17,319 INFO L273 TraceCheckUtils]: 286: Hoare triple {28606#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28606#true} is VALID [2018-11-23 12:17:17,319 INFO L273 TraceCheckUtils]: 287: Hoare triple {28606#true} assume !(~i~0 < 20); {28606#true} is VALID [2018-11-23 12:17:17,320 INFO L273 TraceCheckUtils]: 288: Hoare triple {28606#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {28606#true} is VALID [2018-11-23 12:17:17,320 INFO L273 TraceCheckUtils]: 289: Hoare triple {28606#true} assume true; {28606#true} is VALID [2018-11-23 12:17:17,320 INFO L268 TraceCheckUtils]: 290: Hoare quadruple {28606#true} {28607#false} #81#return; {28607#false} is VALID [2018-11-23 12:17:17,320 INFO L273 TraceCheckUtils]: 291: Hoare triple {28607#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {28607#false} is VALID [2018-11-23 12:17:17,320 INFO L273 TraceCheckUtils]: 292: Hoare triple {28607#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {28607#false} is VALID [2018-11-23 12:17:17,320 INFO L273 TraceCheckUtils]: 293: Hoare triple {28607#false} assume !false; {28607#false} is VALID [2018-11-23 12:17:17,352 INFO L134 CoverageAnalysis]: Checked inductivity of 5749 backedges. 0 proven. 2949 refuted. 0 times theorem prover too weak. 2800 trivial. 0 not checked. [2018-11-23 12:17:17,352 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:17:17,352 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 33 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 33 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:17:17,361 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:17:17,502 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:17,559 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:17,560 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:17:17,901 INFO L256 TraceCheckUtils]: 0: Hoare triple {28606#true} call ULTIMATE.init(); {28606#true} is VALID [2018-11-23 12:17:17,902 INFO L273 TraceCheckUtils]: 1: Hoare triple {28606#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {28606#true} is VALID [2018-11-23 12:17:17,902 INFO L273 TraceCheckUtils]: 2: Hoare triple {28606#true} assume true; {28606#true} is VALID [2018-11-23 12:17:17,902 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {28606#true} {28606#true} #73#return; {28606#true} is VALID [2018-11-23 12:17:17,902 INFO L256 TraceCheckUtils]: 4: Hoare triple {28606#true} call #t~ret14 := main(); {28606#true} is VALID [2018-11-23 12:17:17,903 INFO L273 TraceCheckUtils]: 5: Hoare triple {28606#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {28606#true} is VALID [2018-11-23 12:17:17,903 INFO L273 TraceCheckUtils]: 6: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,903 INFO L273 TraceCheckUtils]: 7: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,903 INFO L273 TraceCheckUtils]: 8: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,903 INFO L273 TraceCheckUtils]: 9: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,903 INFO L273 TraceCheckUtils]: 10: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,904 INFO L273 TraceCheckUtils]: 11: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,904 INFO L273 TraceCheckUtils]: 12: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,904 INFO L273 TraceCheckUtils]: 13: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,904 INFO L273 TraceCheckUtils]: 14: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,904 INFO L273 TraceCheckUtils]: 15: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,904 INFO L273 TraceCheckUtils]: 16: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,904 INFO L273 TraceCheckUtils]: 17: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,904 INFO L273 TraceCheckUtils]: 18: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,904 INFO L273 TraceCheckUtils]: 19: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,904 INFO L273 TraceCheckUtils]: 20: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,905 INFO L273 TraceCheckUtils]: 21: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,905 INFO L273 TraceCheckUtils]: 22: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,905 INFO L273 TraceCheckUtils]: 23: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,905 INFO L273 TraceCheckUtils]: 24: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,905 INFO L273 TraceCheckUtils]: 25: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,905 INFO L273 TraceCheckUtils]: 26: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,905 INFO L273 TraceCheckUtils]: 27: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,905 INFO L273 TraceCheckUtils]: 28: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,905 INFO L273 TraceCheckUtils]: 29: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,906 INFO L273 TraceCheckUtils]: 30: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,906 INFO L273 TraceCheckUtils]: 31: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,906 INFO L273 TraceCheckUtils]: 32: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,906 INFO L273 TraceCheckUtils]: 33: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,906 INFO L273 TraceCheckUtils]: 34: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,906 INFO L273 TraceCheckUtils]: 35: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,906 INFO L273 TraceCheckUtils]: 36: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,906 INFO L273 TraceCheckUtils]: 37: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,906 INFO L273 TraceCheckUtils]: 38: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,906 INFO L273 TraceCheckUtils]: 39: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,907 INFO L273 TraceCheckUtils]: 40: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,907 INFO L273 TraceCheckUtils]: 41: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,907 INFO L273 TraceCheckUtils]: 42: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,907 INFO L273 TraceCheckUtils]: 43: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,907 INFO L273 TraceCheckUtils]: 44: Hoare triple {28606#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {28606#true} is VALID [2018-11-23 12:17:17,907 INFO L273 TraceCheckUtils]: 45: Hoare triple {28606#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {28606#true} is VALID [2018-11-23 12:17:17,907 INFO L273 TraceCheckUtils]: 46: Hoare triple {28606#true} assume !(~i~1 < 20); {28606#true} is VALID [2018-11-23 12:17:17,907 INFO L256 TraceCheckUtils]: 47: Hoare triple {28606#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {28606#true} is VALID [2018-11-23 12:17:17,908 INFO L273 TraceCheckUtils]: 48: Hoare triple {28606#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {28773#(<= max_~i~0 0)} is VALID [2018-11-23 12:17:17,908 INFO L273 TraceCheckUtils]: 49: Hoare triple {28773#(<= max_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28773#(<= max_~i~0 0)} is VALID [2018-11-23 12:17:17,908 INFO L273 TraceCheckUtils]: 50: Hoare triple {28773#(<= max_~i~0 0)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28773#(<= max_~i~0 0)} is VALID [2018-11-23 12:17:17,909 INFO L273 TraceCheckUtils]: 51: Hoare triple {28773#(<= max_~i~0 0)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28773#(<= max_~i~0 0)} is VALID [2018-11-23 12:17:17,909 INFO L273 TraceCheckUtils]: 52: Hoare triple {28773#(<= max_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28609#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:17,909 INFO L273 TraceCheckUtils]: 53: Hoare triple {28609#(<= max_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28609#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:17,910 INFO L273 TraceCheckUtils]: 54: Hoare triple {28609#(<= max_~i~0 1)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28609#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:17,910 INFO L273 TraceCheckUtils]: 55: Hoare triple {28609#(<= max_~i~0 1)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28609#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:17,910 INFO L273 TraceCheckUtils]: 56: Hoare triple {28609#(<= max_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28610#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:17,911 INFO L273 TraceCheckUtils]: 57: Hoare triple {28610#(<= max_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28610#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:17,911 INFO L273 TraceCheckUtils]: 58: Hoare triple {28610#(<= max_~i~0 2)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28610#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:17,911 INFO L273 TraceCheckUtils]: 59: Hoare triple {28610#(<= max_~i~0 2)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28610#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:17,912 INFO L273 TraceCheckUtils]: 60: Hoare triple {28610#(<= max_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28611#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:17,912 INFO L273 TraceCheckUtils]: 61: Hoare triple {28611#(<= max_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28611#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:17,913 INFO L273 TraceCheckUtils]: 62: Hoare triple {28611#(<= max_~i~0 3)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28611#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:17,913 INFO L273 TraceCheckUtils]: 63: Hoare triple {28611#(<= max_~i~0 3)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28611#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:17,914 INFO L273 TraceCheckUtils]: 64: Hoare triple {28611#(<= max_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28612#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:17,914 INFO L273 TraceCheckUtils]: 65: Hoare triple {28612#(<= max_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28612#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:17,915 INFO L273 TraceCheckUtils]: 66: Hoare triple {28612#(<= max_~i~0 4)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28612#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:17,915 INFO L273 TraceCheckUtils]: 67: Hoare triple {28612#(<= max_~i~0 4)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28612#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:17,916 INFO L273 TraceCheckUtils]: 68: Hoare triple {28612#(<= max_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28613#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:17,916 INFO L273 TraceCheckUtils]: 69: Hoare triple {28613#(<= max_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28613#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:17,917 INFO L273 TraceCheckUtils]: 70: Hoare triple {28613#(<= max_~i~0 5)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28613#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:17,917 INFO L273 TraceCheckUtils]: 71: Hoare triple {28613#(<= max_~i~0 5)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28613#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:17,918 INFO L273 TraceCheckUtils]: 72: Hoare triple {28613#(<= max_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28614#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:17,918 INFO L273 TraceCheckUtils]: 73: Hoare triple {28614#(<= max_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28614#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:17,919 INFO L273 TraceCheckUtils]: 74: Hoare triple {28614#(<= max_~i~0 6)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28614#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:17,919 INFO L273 TraceCheckUtils]: 75: Hoare triple {28614#(<= max_~i~0 6)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28614#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:17,920 INFO L273 TraceCheckUtils]: 76: Hoare triple {28614#(<= max_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28615#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:17,920 INFO L273 TraceCheckUtils]: 77: Hoare triple {28615#(<= max_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28615#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:17,921 INFO L273 TraceCheckUtils]: 78: Hoare triple {28615#(<= max_~i~0 7)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28615#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:17,921 INFO L273 TraceCheckUtils]: 79: Hoare triple {28615#(<= max_~i~0 7)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28615#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:17,922 INFO L273 TraceCheckUtils]: 80: Hoare triple {28615#(<= max_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28616#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:17,922 INFO L273 TraceCheckUtils]: 81: Hoare triple {28616#(<= max_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28616#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:17,923 INFO L273 TraceCheckUtils]: 82: Hoare triple {28616#(<= max_~i~0 8)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28616#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:17,923 INFO L273 TraceCheckUtils]: 83: Hoare triple {28616#(<= max_~i~0 8)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28616#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:17,924 INFO L273 TraceCheckUtils]: 84: Hoare triple {28616#(<= max_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28617#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:17,925 INFO L273 TraceCheckUtils]: 85: Hoare triple {28617#(<= max_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28617#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:17,925 INFO L273 TraceCheckUtils]: 86: Hoare triple {28617#(<= max_~i~0 9)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28617#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:17,925 INFO L273 TraceCheckUtils]: 87: Hoare triple {28617#(<= max_~i~0 9)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28617#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:17,926 INFO L273 TraceCheckUtils]: 88: Hoare triple {28617#(<= max_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28618#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:17,927 INFO L273 TraceCheckUtils]: 89: Hoare triple {28618#(<= max_~i~0 10)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28618#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:17,927 INFO L273 TraceCheckUtils]: 90: Hoare triple {28618#(<= max_~i~0 10)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28618#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:17,927 INFO L273 TraceCheckUtils]: 91: Hoare triple {28618#(<= max_~i~0 10)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28618#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:17,928 INFO L273 TraceCheckUtils]: 92: Hoare triple {28618#(<= max_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28619#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:17,929 INFO L273 TraceCheckUtils]: 93: Hoare triple {28619#(<= max_~i~0 11)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28619#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:17,929 INFO L273 TraceCheckUtils]: 94: Hoare triple {28619#(<= max_~i~0 11)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28619#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:17,930 INFO L273 TraceCheckUtils]: 95: Hoare triple {28619#(<= max_~i~0 11)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28619#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:17,930 INFO L273 TraceCheckUtils]: 96: Hoare triple {28619#(<= max_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28620#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:17,931 INFO L273 TraceCheckUtils]: 97: Hoare triple {28620#(<= max_~i~0 12)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28620#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:17,931 INFO L273 TraceCheckUtils]: 98: Hoare triple {28620#(<= max_~i~0 12)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28620#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:17,932 INFO L273 TraceCheckUtils]: 99: Hoare triple {28620#(<= max_~i~0 12)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28620#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:17,932 INFO L273 TraceCheckUtils]: 100: Hoare triple {28620#(<= max_~i~0 12)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28621#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:17,933 INFO L273 TraceCheckUtils]: 101: Hoare triple {28621#(<= max_~i~0 13)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28621#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:17,933 INFO L273 TraceCheckUtils]: 102: Hoare triple {28621#(<= max_~i~0 13)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28621#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:17,934 INFO L273 TraceCheckUtils]: 103: Hoare triple {28621#(<= max_~i~0 13)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28621#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:17,934 INFO L273 TraceCheckUtils]: 104: Hoare triple {28621#(<= max_~i~0 13)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28622#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:17,935 INFO L273 TraceCheckUtils]: 105: Hoare triple {28622#(<= max_~i~0 14)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28622#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:17,935 INFO L273 TraceCheckUtils]: 106: Hoare triple {28622#(<= max_~i~0 14)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28622#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:17,936 INFO L273 TraceCheckUtils]: 107: Hoare triple {28622#(<= max_~i~0 14)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28622#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:17,936 INFO L273 TraceCheckUtils]: 108: Hoare triple {28622#(<= max_~i~0 14)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28623#(<= max_~i~0 15)} is VALID [2018-11-23 12:17:17,937 INFO L273 TraceCheckUtils]: 109: Hoare triple {28623#(<= max_~i~0 15)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28623#(<= max_~i~0 15)} is VALID [2018-11-23 12:17:17,937 INFO L273 TraceCheckUtils]: 110: Hoare triple {28623#(<= max_~i~0 15)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28623#(<= max_~i~0 15)} is VALID [2018-11-23 12:17:17,938 INFO L273 TraceCheckUtils]: 111: Hoare triple {28623#(<= max_~i~0 15)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28623#(<= max_~i~0 15)} is VALID [2018-11-23 12:17:17,939 INFO L273 TraceCheckUtils]: 112: Hoare triple {28623#(<= max_~i~0 15)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28624#(<= max_~i~0 16)} is VALID [2018-11-23 12:17:17,939 INFO L273 TraceCheckUtils]: 113: Hoare triple {28624#(<= max_~i~0 16)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28624#(<= max_~i~0 16)} is VALID [2018-11-23 12:17:17,939 INFO L273 TraceCheckUtils]: 114: Hoare triple {28624#(<= max_~i~0 16)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28624#(<= max_~i~0 16)} is VALID [2018-11-23 12:17:17,940 INFO L273 TraceCheckUtils]: 115: Hoare triple {28624#(<= max_~i~0 16)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28624#(<= max_~i~0 16)} is VALID [2018-11-23 12:17:17,941 INFO L273 TraceCheckUtils]: 116: Hoare triple {28624#(<= max_~i~0 16)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28625#(<= max_~i~0 17)} is VALID [2018-11-23 12:17:17,941 INFO L273 TraceCheckUtils]: 117: Hoare triple {28625#(<= max_~i~0 17)} assume !(~i~0 < 20); {28607#false} is VALID [2018-11-23 12:17:17,941 INFO L273 TraceCheckUtils]: 118: Hoare triple {28607#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {28607#false} is VALID [2018-11-23 12:17:17,942 INFO L273 TraceCheckUtils]: 119: Hoare triple {28607#false} assume true; {28607#false} is VALID [2018-11-23 12:17:17,942 INFO L268 TraceCheckUtils]: 120: Hoare quadruple {28607#false} {28606#true} #77#return; {28607#false} is VALID [2018-11-23 12:17:17,942 INFO L273 TraceCheckUtils]: 121: Hoare triple {28607#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {28607#false} is VALID [2018-11-23 12:17:17,942 INFO L256 TraceCheckUtils]: 122: Hoare triple {28607#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {28607#false} is VALID [2018-11-23 12:17:17,942 INFO L273 TraceCheckUtils]: 123: Hoare triple {28607#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {28607#false} is VALID [2018-11-23 12:17:17,942 INFO L273 TraceCheckUtils]: 124: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,943 INFO L273 TraceCheckUtils]: 125: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,943 INFO L273 TraceCheckUtils]: 126: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,943 INFO L273 TraceCheckUtils]: 127: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,943 INFO L273 TraceCheckUtils]: 128: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,943 INFO L273 TraceCheckUtils]: 129: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,943 INFO L273 TraceCheckUtils]: 130: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,944 INFO L273 TraceCheckUtils]: 131: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,944 INFO L273 TraceCheckUtils]: 132: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,944 INFO L273 TraceCheckUtils]: 133: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,944 INFO L273 TraceCheckUtils]: 134: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,944 INFO L273 TraceCheckUtils]: 135: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,944 INFO L273 TraceCheckUtils]: 136: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,945 INFO L273 TraceCheckUtils]: 137: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,945 INFO L273 TraceCheckUtils]: 138: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,945 INFO L273 TraceCheckUtils]: 139: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,945 INFO L273 TraceCheckUtils]: 140: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,945 INFO L273 TraceCheckUtils]: 141: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,945 INFO L273 TraceCheckUtils]: 142: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,946 INFO L273 TraceCheckUtils]: 143: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,946 INFO L273 TraceCheckUtils]: 144: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,946 INFO L273 TraceCheckUtils]: 145: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,946 INFO L273 TraceCheckUtils]: 146: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,946 INFO L273 TraceCheckUtils]: 147: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,946 INFO L273 TraceCheckUtils]: 148: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,946 INFO L273 TraceCheckUtils]: 149: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,946 INFO L273 TraceCheckUtils]: 150: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,946 INFO L273 TraceCheckUtils]: 151: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,947 INFO L273 TraceCheckUtils]: 152: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,947 INFO L273 TraceCheckUtils]: 153: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,947 INFO L273 TraceCheckUtils]: 154: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,947 INFO L273 TraceCheckUtils]: 155: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,947 INFO L273 TraceCheckUtils]: 156: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,947 INFO L273 TraceCheckUtils]: 157: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,947 INFO L273 TraceCheckUtils]: 158: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,947 INFO L273 TraceCheckUtils]: 159: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,947 INFO L273 TraceCheckUtils]: 160: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,947 INFO L273 TraceCheckUtils]: 161: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,948 INFO L273 TraceCheckUtils]: 162: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,948 INFO L273 TraceCheckUtils]: 163: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,948 INFO L273 TraceCheckUtils]: 164: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,948 INFO L273 TraceCheckUtils]: 165: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,948 INFO L273 TraceCheckUtils]: 166: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,948 INFO L273 TraceCheckUtils]: 167: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,948 INFO L273 TraceCheckUtils]: 168: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,948 INFO L273 TraceCheckUtils]: 169: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,948 INFO L273 TraceCheckUtils]: 170: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,948 INFO L273 TraceCheckUtils]: 171: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,949 INFO L273 TraceCheckUtils]: 172: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,949 INFO L273 TraceCheckUtils]: 173: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,949 INFO L273 TraceCheckUtils]: 174: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,949 INFO L273 TraceCheckUtils]: 175: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,949 INFO L273 TraceCheckUtils]: 176: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,949 INFO L273 TraceCheckUtils]: 177: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,949 INFO L273 TraceCheckUtils]: 178: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,949 INFO L273 TraceCheckUtils]: 179: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,949 INFO L273 TraceCheckUtils]: 180: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,949 INFO L273 TraceCheckUtils]: 181: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,950 INFO L273 TraceCheckUtils]: 182: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,950 INFO L273 TraceCheckUtils]: 183: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,950 INFO L273 TraceCheckUtils]: 184: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,950 INFO L273 TraceCheckUtils]: 185: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,950 INFO L273 TraceCheckUtils]: 186: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,950 INFO L273 TraceCheckUtils]: 187: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,950 INFO L273 TraceCheckUtils]: 188: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,950 INFO L273 TraceCheckUtils]: 189: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,950 INFO L273 TraceCheckUtils]: 190: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,950 INFO L273 TraceCheckUtils]: 191: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,951 INFO L273 TraceCheckUtils]: 192: Hoare triple {28607#false} assume !(~i~0 < 20); {28607#false} is VALID [2018-11-23 12:17:17,951 INFO L273 TraceCheckUtils]: 193: Hoare triple {28607#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {28607#false} is VALID [2018-11-23 12:17:17,951 INFO L273 TraceCheckUtils]: 194: Hoare triple {28607#false} assume true; {28607#false} is VALID [2018-11-23 12:17:17,951 INFO L268 TraceCheckUtils]: 195: Hoare quadruple {28607#false} {28607#false} #79#return; {28607#false} is VALID [2018-11-23 12:17:17,951 INFO L273 TraceCheckUtils]: 196: Hoare triple {28607#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {28607#false} is VALID [2018-11-23 12:17:17,951 INFO L273 TraceCheckUtils]: 197: Hoare triple {28607#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {28607#false} is VALID [2018-11-23 12:17:17,951 INFO L273 TraceCheckUtils]: 198: Hoare triple {28607#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {28607#false} is VALID [2018-11-23 12:17:17,951 INFO L273 TraceCheckUtils]: 199: Hoare triple {28607#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {28607#false} is VALID [2018-11-23 12:17:17,951 INFO L273 TraceCheckUtils]: 200: Hoare triple {28607#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {28607#false} is VALID [2018-11-23 12:17:17,951 INFO L273 TraceCheckUtils]: 201: Hoare triple {28607#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {28607#false} is VALID [2018-11-23 12:17:17,952 INFO L273 TraceCheckUtils]: 202: Hoare triple {28607#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {28607#false} is VALID [2018-11-23 12:17:17,952 INFO L273 TraceCheckUtils]: 203: Hoare triple {28607#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {28607#false} is VALID [2018-11-23 12:17:17,952 INFO L273 TraceCheckUtils]: 204: Hoare triple {28607#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {28607#false} is VALID [2018-11-23 12:17:17,952 INFO L273 TraceCheckUtils]: 205: Hoare triple {28607#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {28607#false} is VALID [2018-11-23 12:17:17,952 INFO L273 TraceCheckUtils]: 206: Hoare triple {28607#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {28607#false} is VALID [2018-11-23 12:17:17,952 INFO L273 TraceCheckUtils]: 207: Hoare triple {28607#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {28607#false} is VALID [2018-11-23 12:17:17,952 INFO L273 TraceCheckUtils]: 208: Hoare triple {28607#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {28607#false} is VALID [2018-11-23 12:17:17,952 INFO L273 TraceCheckUtils]: 209: Hoare triple {28607#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {28607#false} is VALID [2018-11-23 12:17:17,952 INFO L273 TraceCheckUtils]: 210: Hoare triple {28607#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {28607#false} is VALID [2018-11-23 12:17:17,952 INFO L273 TraceCheckUtils]: 211: Hoare triple {28607#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {28607#false} is VALID [2018-11-23 12:17:17,953 INFO L273 TraceCheckUtils]: 212: Hoare triple {28607#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {28607#false} is VALID [2018-11-23 12:17:17,953 INFO L273 TraceCheckUtils]: 213: Hoare triple {28607#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {28607#false} is VALID [2018-11-23 12:17:17,953 INFO L273 TraceCheckUtils]: 214: Hoare triple {28607#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {28607#false} is VALID [2018-11-23 12:17:17,953 INFO L273 TraceCheckUtils]: 215: Hoare triple {28607#false} assume !(~i~2 < 19); {28607#false} is VALID [2018-11-23 12:17:17,953 INFO L273 TraceCheckUtils]: 216: Hoare triple {28607#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {28607#false} is VALID [2018-11-23 12:17:17,953 INFO L256 TraceCheckUtils]: 217: Hoare triple {28607#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {28607#false} is VALID [2018-11-23 12:17:17,953 INFO L273 TraceCheckUtils]: 218: Hoare triple {28607#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {28607#false} is VALID [2018-11-23 12:17:17,953 INFO L273 TraceCheckUtils]: 219: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,953 INFO L273 TraceCheckUtils]: 220: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,953 INFO L273 TraceCheckUtils]: 221: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,954 INFO L273 TraceCheckUtils]: 222: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,954 INFO L273 TraceCheckUtils]: 223: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,954 INFO L273 TraceCheckUtils]: 224: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,954 INFO L273 TraceCheckUtils]: 225: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,954 INFO L273 TraceCheckUtils]: 226: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,954 INFO L273 TraceCheckUtils]: 227: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,954 INFO L273 TraceCheckUtils]: 228: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,954 INFO L273 TraceCheckUtils]: 229: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,954 INFO L273 TraceCheckUtils]: 230: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,955 INFO L273 TraceCheckUtils]: 231: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,955 INFO L273 TraceCheckUtils]: 232: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,955 INFO L273 TraceCheckUtils]: 233: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,955 INFO L273 TraceCheckUtils]: 234: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,955 INFO L273 TraceCheckUtils]: 235: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,955 INFO L273 TraceCheckUtils]: 236: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,955 INFO L273 TraceCheckUtils]: 237: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,955 INFO L273 TraceCheckUtils]: 238: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,955 INFO L273 TraceCheckUtils]: 239: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,955 INFO L273 TraceCheckUtils]: 240: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,956 INFO L273 TraceCheckUtils]: 241: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,956 INFO L273 TraceCheckUtils]: 242: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,956 INFO L273 TraceCheckUtils]: 243: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,956 INFO L273 TraceCheckUtils]: 244: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,956 INFO L273 TraceCheckUtils]: 245: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,956 INFO L273 TraceCheckUtils]: 246: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,956 INFO L273 TraceCheckUtils]: 247: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,956 INFO L273 TraceCheckUtils]: 248: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,956 INFO L273 TraceCheckUtils]: 249: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,956 INFO L273 TraceCheckUtils]: 250: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,957 INFO L273 TraceCheckUtils]: 251: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,957 INFO L273 TraceCheckUtils]: 252: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,957 INFO L273 TraceCheckUtils]: 253: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,957 INFO L273 TraceCheckUtils]: 254: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,957 INFO L273 TraceCheckUtils]: 255: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,957 INFO L273 TraceCheckUtils]: 256: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,957 INFO L273 TraceCheckUtils]: 257: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,957 INFO L273 TraceCheckUtils]: 258: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,957 INFO L273 TraceCheckUtils]: 259: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,957 INFO L273 TraceCheckUtils]: 260: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,958 INFO L273 TraceCheckUtils]: 261: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,958 INFO L273 TraceCheckUtils]: 262: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,958 INFO L273 TraceCheckUtils]: 263: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,958 INFO L273 TraceCheckUtils]: 264: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,958 INFO L273 TraceCheckUtils]: 265: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,958 INFO L273 TraceCheckUtils]: 266: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,958 INFO L273 TraceCheckUtils]: 267: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,958 INFO L273 TraceCheckUtils]: 268: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,958 INFO L273 TraceCheckUtils]: 269: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,958 INFO L273 TraceCheckUtils]: 270: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,959 INFO L273 TraceCheckUtils]: 271: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,959 INFO L273 TraceCheckUtils]: 272: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,959 INFO L273 TraceCheckUtils]: 273: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,959 INFO L273 TraceCheckUtils]: 274: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,959 INFO L273 TraceCheckUtils]: 275: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,959 INFO L273 TraceCheckUtils]: 276: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,959 INFO L273 TraceCheckUtils]: 277: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,959 INFO L273 TraceCheckUtils]: 278: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,959 INFO L273 TraceCheckUtils]: 279: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,959 INFO L273 TraceCheckUtils]: 280: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,960 INFO L273 TraceCheckUtils]: 281: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,960 INFO L273 TraceCheckUtils]: 282: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,960 INFO L273 TraceCheckUtils]: 283: Hoare triple {28607#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {28607#false} is VALID [2018-11-23 12:17:17,960 INFO L273 TraceCheckUtils]: 284: Hoare triple {28607#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {28607#false} is VALID [2018-11-23 12:17:17,960 INFO L273 TraceCheckUtils]: 285: Hoare triple {28607#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {28607#false} is VALID [2018-11-23 12:17:17,960 INFO L273 TraceCheckUtils]: 286: Hoare triple {28607#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {28607#false} is VALID [2018-11-23 12:17:17,960 INFO L273 TraceCheckUtils]: 287: Hoare triple {28607#false} assume !(~i~0 < 20); {28607#false} is VALID [2018-11-23 12:17:17,960 INFO L273 TraceCheckUtils]: 288: Hoare triple {28607#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {28607#false} is VALID [2018-11-23 12:17:17,960 INFO L273 TraceCheckUtils]: 289: Hoare triple {28607#false} assume true; {28607#false} is VALID [2018-11-23 12:17:17,960 INFO L268 TraceCheckUtils]: 290: Hoare quadruple {28607#false} {28607#false} #81#return; {28607#false} is VALID [2018-11-23 12:17:17,961 INFO L273 TraceCheckUtils]: 291: Hoare triple {28607#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {28607#false} is VALID [2018-11-23 12:17:17,961 INFO L273 TraceCheckUtils]: 292: Hoare triple {28607#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {28607#false} is VALID [2018-11-23 12:17:17,961 INFO L273 TraceCheckUtils]: 293: Hoare triple {28607#false} assume !false; {28607#false} is VALID [2018-11-23 12:17:17,994 INFO L134 CoverageAnalysis]: Checked inductivity of 5749 backedges. 2384 proven. 561 refuted. 0 times theorem prover too weak. 2804 trivial. 0 not checked. [2018-11-23 12:17:18,013 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:17:18,013 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [20, 20] total 21 [2018-11-23 12:17:18,013 INFO L78 Accepts]: Start accepts. Automaton has 21 states. Word has length 294 [2018-11-23 12:17:18,015 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:17:18,015 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 21 states. [2018-11-23 12:17:18,123 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:17:18,123 INFO L459 AbstractCegarLoop]: Interpolant automaton has 21 states [2018-11-23 12:17:18,123 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2018-11-23 12:17:18,123 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=210, Invalid=210, Unknown=0, NotChecked=0, Total=420 [2018-11-23 12:17:18,124 INFO L87 Difference]: Start difference. First operand 149 states and 170 transitions. Second operand 21 states. [2018-11-23 12:17:18,968 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:18,968 INFO L93 Difference]: Finished difference Result 257 states and 303 transitions. [2018-11-23 12:17:18,968 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2018-11-23 12:17:18,968 INFO L78 Accepts]: Start accepts. Automaton has 21 states. Word has length 294 [2018-11-23 12:17:18,968 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:17:18,969 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 21 states. [2018-11-23 12:17:18,970 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 149 transitions. [2018-11-23 12:17:18,970 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 21 states. [2018-11-23 12:17:18,971 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 149 transitions. [2018-11-23 12:17:18,971 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states and 149 transitions. [2018-11-23 12:17:19,099 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 149 edges. 149 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:17:19,102 INFO L225 Difference]: With dead ends: 257 [2018-11-23 12:17:19,103 INFO L226 Difference]: Without dead ends: 156 [2018-11-23 12:17:19,103 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 313 GetRequests, 294 SyntacticMatches, 0 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 32 ImplicationChecksByTransitivity, 1.7s TimeCoverageRelationStatistics Valid=210, Invalid=210, Unknown=0, NotChecked=0, Total=420 [2018-11-23 12:17:19,104 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 156 states. [2018-11-23 12:17:19,411 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 156 to 153. [2018-11-23 12:17:19,412 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:17:19,412 INFO L82 GeneralOperation]: Start isEquivalent. First operand 156 states. Second operand 153 states. [2018-11-23 12:17:19,412 INFO L74 IsIncluded]: Start isIncluded. First operand 156 states. Second operand 153 states. [2018-11-23 12:17:19,412 INFO L87 Difference]: Start difference. First operand 156 states. Second operand 153 states. [2018-11-23 12:17:19,415 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:19,415 INFO L93 Difference]: Finished difference Result 156 states and 179 transitions. [2018-11-23 12:17:19,415 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 179 transitions. [2018-11-23 12:17:19,415 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:19,415 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:19,415 INFO L74 IsIncluded]: Start isIncluded. First operand 153 states. Second operand 156 states. [2018-11-23 12:17:19,416 INFO L87 Difference]: Start difference. First operand 153 states. Second operand 156 states. [2018-11-23 12:17:19,418 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:19,418 INFO L93 Difference]: Finished difference Result 156 states and 179 transitions. [2018-11-23 12:17:19,418 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 179 transitions. [2018-11-23 12:17:19,418 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:19,418 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:19,418 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:17:19,418 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:17:19,419 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 153 states. [2018-11-23 12:17:19,420 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 153 states to 153 states and 175 transitions. [2018-11-23 12:17:19,421 INFO L78 Accepts]: Start accepts. Automaton has 153 states and 175 transitions. Word has length 294 [2018-11-23 12:17:19,421 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:17:19,421 INFO L480 AbstractCegarLoop]: Abstraction has 153 states and 175 transitions. [2018-11-23 12:17:19,421 INFO L481 AbstractCegarLoop]: Interpolant automaton has 21 states. [2018-11-23 12:17:19,421 INFO L276 IsEmpty]: Start isEmpty. Operand 153 states and 175 transitions. [2018-11-23 12:17:19,423 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 307 [2018-11-23 12:17:19,423 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:17:19,423 INFO L402 BasicCegarLoop]: trace histogram [54, 54, 54, 54, 20, 20, 9, 9, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:17:19,423 INFO L423 AbstractCegarLoop]: === Iteration 35 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:17:19,423 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:17:19,424 INFO L82 PathProgramCache]: Analyzing trace with hash -144048921, now seen corresponding path program 32 times [2018-11-23 12:17:19,424 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:17:19,424 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:17:19,424 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:19,425 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:17:19,425 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:19,475 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:20,241 INFO L256 TraceCheckUtils]: 0: Hoare triple {30377#true} call ULTIMATE.init(); {30377#true} is VALID [2018-11-23 12:17:20,241 INFO L273 TraceCheckUtils]: 1: Hoare triple {30377#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {30377#true} is VALID [2018-11-23 12:17:20,241 INFO L273 TraceCheckUtils]: 2: Hoare triple {30377#true} assume true; {30377#true} is VALID [2018-11-23 12:17:20,241 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {30377#true} {30377#true} #73#return; {30377#true} is VALID [2018-11-23 12:17:20,242 INFO L256 TraceCheckUtils]: 4: Hoare triple {30377#true} call #t~ret14 := main(); {30377#true} is VALID [2018-11-23 12:17:20,242 INFO L273 TraceCheckUtils]: 5: Hoare triple {30377#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {30377#true} is VALID [2018-11-23 12:17:20,242 INFO L273 TraceCheckUtils]: 6: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,242 INFO L273 TraceCheckUtils]: 7: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,242 INFO L273 TraceCheckUtils]: 8: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,243 INFO L273 TraceCheckUtils]: 9: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,243 INFO L273 TraceCheckUtils]: 10: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,243 INFO L273 TraceCheckUtils]: 11: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,243 INFO L273 TraceCheckUtils]: 12: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,243 INFO L273 TraceCheckUtils]: 13: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,243 INFO L273 TraceCheckUtils]: 14: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,244 INFO L273 TraceCheckUtils]: 15: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,244 INFO L273 TraceCheckUtils]: 16: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,244 INFO L273 TraceCheckUtils]: 17: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,244 INFO L273 TraceCheckUtils]: 18: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,244 INFO L273 TraceCheckUtils]: 19: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,244 INFO L273 TraceCheckUtils]: 20: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,244 INFO L273 TraceCheckUtils]: 21: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,244 INFO L273 TraceCheckUtils]: 22: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,245 INFO L273 TraceCheckUtils]: 23: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,245 INFO L273 TraceCheckUtils]: 24: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,245 INFO L273 TraceCheckUtils]: 25: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,245 INFO L273 TraceCheckUtils]: 26: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,245 INFO L273 TraceCheckUtils]: 27: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,245 INFO L273 TraceCheckUtils]: 28: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,245 INFO L273 TraceCheckUtils]: 29: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,245 INFO L273 TraceCheckUtils]: 30: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,245 INFO L273 TraceCheckUtils]: 31: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,245 INFO L273 TraceCheckUtils]: 32: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,246 INFO L273 TraceCheckUtils]: 33: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,246 INFO L273 TraceCheckUtils]: 34: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,246 INFO L273 TraceCheckUtils]: 35: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,246 INFO L273 TraceCheckUtils]: 36: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,246 INFO L273 TraceCheckUtils]: 37: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,246 INFO L273 TraceCheckUtils]: 38: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,246 INFO L273 TraceCheckUtils]: 39: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,246 INFO L273 TraceCheckUtils]: 40: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,246 INFO L273 TraceCheckUtils]: 41: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,246 INFO L273 TraceCheckUtils]: 42: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,247 INFO L273 TraceCheckUtils]: 43: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,247 INFO L273 TraceCheckUtils]: 44: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,247 INFO L273 TraceCheckUtils]: 45: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,247 INFO L273 TraceCheckUtils]: 46: Hoare triple {30377#true} assume !(~i~1 < 20); {30377#true} is VALID [2018-11-23 12:17:20,247 INFO L256 TraceCheckUtils]: 47: Hoare triple {30377#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {30377#true} is VALID [2018-11-23 12:17:20,247 INFO L273 TraceCheckUtils]: 48: Hoare triple {30377#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {30379#(= max_~i~0 0)} is VALID [2018-11-23 12:17:20,248 INFO L273 TraceCheckUtils]: 49: Hoare triple {30379#(= max_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30379#(= max_~i~0 0)} is VALID [2018-11-23 12:17:20,248 INFO L273 TraceCheckUtils]: 50: Hoare triple {30379#(= max_~i~0 0)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30379#(= max_~i~0 0)} is VALID [2018-11-23 12:17:20,248 INFO L273 TraceCheckUtils]: 51: Hoare triple {30379#(= max_~i~0 0)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30379#(= max_~i~0 0)} is VALID [2018-11-23 12:17:20,249 INFO L273 TraceCheckUtils]: 52: Hoare triple {30379#(= max_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30380#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:20,249 INFO L273 TraceCheckUtils]: 53: Hoare triple {30380#(<= max_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30380#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:20,249 INFO L273 TraceCheckUtils]: 54: Hoare triple {30380#(<= max_~i~0 1)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30380#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:20,249 INFO L273 TraceCheckUtils]: 55: Hoare triple {30380#(<= max_~i~0 1)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30380#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:20,250 INFO L273 TraceCheckUtils]: 56: Hoare triple {30380#(<= max_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30381#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:20,250 INFO L273 TraceCheckUtils]: 57: Hoare triple {30381#(<= max_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30381#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:20,250 INFO L273 TraceCheckUtils]: 58: Hoare triple {30381#(<= max_~i~0 2)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30381#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:20,251 INFO L273 TraceCheckUtils]: 59: Hoare triple {30381#(<= max_~i~0 2)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30381#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:20,251 INFO L273 TraceCheckUtils]: 60: Hoare triple {30381#(<= max_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30382#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:20,252 INFO L273 TraceCheckUtils]: 61: Hoare triple {30382#(<= max_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30382#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:20,252 INFO L273 TraceCheckUtils]: 62: Hoare triple {30382#(<= max_~i~0 3)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30382#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:20,253 INFO L273 TraceCheckUtils]: 63: Hoare triple {30382#(<= max_~i~0 3)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30382#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:20,253 INFO L273 TraceCheckUtils]: 64: Hoare triple {30382#(<= max_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30383#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:20,254 INFO L273 TraceCheckUtils]: 65: Hoare triple {30383#(<= max_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30383#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:20,254 INFO L273 TraceCheckUtils]: 66: Hoare triple {30383#(<= max_~i~0 4)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30383#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:20,255 INFO L273 TraceCheckUtils]: 67: Hoare triple {30383#(<= max_~i~0 4)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30383#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:20,256 INFO L273 TraceCheckUtils]: 68: Hoare triple {30383#(<= max_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30384#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:20,256 INFO L273 TraceCheckUtils]: 69: Hoare triple {30384#(<= max_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30384#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:20,257 INFO L273 TraceCheckUtils]: 70: Hoare triple {30384#(<= max_~i~0 5)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30384#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:20,257 INFO L273 TraceCheckUtils]: 71: Hoare triple {30384#(<= max_~i~0 5)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30384#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:20,258 INFO L273 TraceCheckUtils]: 72: Hoare triple {30384#(<= max_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30385#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:20,258 INFO L273 TraceCheckUtils]: 73: Hoare triple {30385#(<= max_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30385#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:20,259 INFO L273 TraceCheckUtils]: 74: Hoare triple {30385#(<= max_~i~0 6)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30385#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:20,259 INFO L273 TraceCheckUtils]: 75: Hoare triple {30385#(<= max_~i~0 6)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30385#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:20,260 INFO L273 TraceCheckUtils]: 76: Hoare triple {30385#(<= max_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30386#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:20,260 INFO L273 TraceCheckUtils]: 77: Hoare triple {30386#(<= max_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30386#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:20,261 INFO L273 TraceCheckUtils]: 78: Hoare triple {30386#(<= max_~i~0 7)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30386#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:20,261 INFO L273 TraceCheckUtils]: 79: Hoare triple {30386#(<= max_~i~0 7)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30386#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:20,262 INFO L273 TraceCheckUtils]: 80: Hoare triple {30386#(<= max_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30387#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:20,262 INFO L273 TraceCheckUtils]: 81: Hoare triple {30387#(<= max_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30387#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:20,263 INFO L273 TraceCheckUtils]: 82: Hoare triple {30387#(<= max_~i~0 8)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30387#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:20,263 INFO L273 TraceCheckUtils]: 83: Hoare triple {30387#(<= max_~i~0 8)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30387#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:20,264 INFO L273 TraceCheckUtils]: 84: Hoare triple {30387#(<= max_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30388#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:20,264 INFO L273 TraceCheckUtils]: 85: Hoare triple {30388#(<= max_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30388#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:20,265 INFO L273 TraceCheckUtils]: 86: Hoare triple {30388#(<= max_~i~0 9)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30388#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:20,265 INFO L273 TraceCheckUtils]: 87: Hoare triple {30388#(<= max_~i~0 9)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30388#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:20,266 INFO L273 TraceCheckUtils]: 88: Hoare triple {30388#(<= max_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30389#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:20,266 INFO L273 TraceCheckUtils]: 89: Hoare triple {30389#(<= max_~i~0 10)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30389#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:20,267 INFO L273 TraceCheckUtils]: 90: Hoare triple {30389#(<= max_~i~0 10)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30389#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:20,267 INFO L273 TraceCheckUtils]: 91: Hoare triple {30389#(<= max_~i~0 10)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30389#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:20,268 INFO L273 TraceCheckUtils]: 92: Hoare triple {30389#(<= max_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30390#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:20,268 INFO L273 TraceCheckUtils]: 93: Hoare triple {30390#(<= max_~i~0 11)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30390#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:20,269 INFO L273 TraceCheckUtils]: 94: Hoare triple {30390#(<= max_~i~0 11)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30390#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:20,269 INFO L273 TraceCheckUtils]: 95: Hoare triple {30390#(<= max_~i~0 11)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30390#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:20,270 INFO L273 TraceCheckUtils]: 96: Hoare triple {30390#(<= max_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30391#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:20,271 INFO L273 TraceCheckUtils]: 97: Hoare triple {30391#(<= max_~i~0 12)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30391#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:20,271 INFO L273 TraceCheckUtils]: 98: Hoare triple {30391#(<= max_~i~0 12)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30391#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:20,271 INFO L273 TraceCheckUtils]: 99: Hoare triple {30391#(<= max_~i~0 12)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30391#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:20,272 INFO L273 TraceCheckUtils]: 100: Hoare triple {30391#(<= max_~i~0 12)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30392#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:20,273 INFO L273 TraceCheckUtils]: 101: Hoare triple {30392#(<= max_~i~0 13)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30392#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:20,273 INFO L273 TraceCheckUtils]: 102: Hoare triple {30392#(<= max_~i~0 13)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30392#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:20,274 INFO L273 TraceCheckUtils]: 103: Hoare triple {30392#(<= max_~i~0 13)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30392#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:20,274 INFO L273 TraceCheckUtils]: 104: Hoare triple {30392#(<= max_~i~0 13)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30393#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:20,275 INFO L273 TraceCheckUtils]: 105: Hoare triple {30393#(<= max_~i~0 14)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30393#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:20,275 INFO L273 TraceCheckUtils]: 106: Hoare triple {30393#(<= max_~i~0 14)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30393#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:20,276 INFO L273 TraceCheckUtils]: 107: Hoare triple {30393#(<= max_~i~0 14)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30393#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:20,276 INFO L273 TraceCheckUtils]: 108: Hoare triple {30393#(<= max_~i~0 14)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30394#(<= max_~i~0 15)} is VALID [2018-11-23 12:17:20,277 INFO L273 TraceCheckUtils]: 109: Hoare triple {30394#(<= max_~i~0 15)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30394#(<= max_~i~0 15)} is VALID [2018-11-23 12:17:20,277 INFO L273 TraceCheckUtils]: 110: Hoare triple {30394#(<= max_~i~0 15)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30394#(<= max_~i~0 15)} is VALID [2018-11-23 12:17:20,278 INFO L273 TraceCheckUtils]: 111: Hoare triple {30394#(<= max_~i~0 15)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30394#(<= max_~i~0 15)} is VALID [2018-11-23 12:17:20,279 INFO L273 TraceCheckUtils]: 112: Hoare triple {30394#(<= max_~i~0 15)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30395#(<= max_~i~0 16)} is VALID [2018-11-23 12:17:20,279 INFO L273 TraceCheckUtils]: 113: Hoare triple {30395#(<= max_~i~0 16)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30395#(<= max_~i~0 16)} is VALID [2018-11-23 12:17:20,280 INFO L273 TraceCheckUtils]: 114: Hoare triple {30395#(<= max_~i~0 16)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30395#(<= max_~i~0 16)} is VALID [2018-11-23 12:17:20,280 INFO L273 TraceCheckUtils]: 115: Hoare triple {30395#(<= max_~i~0 16)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30395#(<= max_~i~0 16)} is VALID [2018-11-23 12:17:20,281 INFO L273 TraceCheckUtils]: 116: Hoare triple {30395#(<= max_~i~0 16)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30396#(<= max_~i~0 17)} is VALID [2018-11-23 12:17:20,281 INFO L273 TraceCheckUtils]: 117: Hoare triple {30396#(<= max_~i~0 17)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30396#(<= max_~i~0 17)} is VALID [2018-11-23 12:17:20,282 INFO L273 TraceCheckUtils]: 118: Hoare triple {30396#(<= max_~i~0 17)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30396#(<= max_~i~0 17)} is VALID [2018-11-23 12:17:20,282 INFO L273 TraceCheckUtils]: 119: Hoare triple {30396#(<= max_~i~0 17)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30396#(<= max_~i~0 17)} is VALID [2018-11-23 12:17:20,283 INFO L273 TraceCheckUtils]: 120: Hoare triple {30396#(<= max_~i~0 17)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30397#(<= max_~i~0 18)} is VALID [2018-11-23 12:17:20,284 INFO L273 TraceCheckUtils]: 121: Hoare triple {30397#(<= max_~i~0 18)} assume !(~i~0 < 20); {30378#false} is VALID [2018-11-23 12:17:20,284 INFO L273 TraceCheckUtils]: 122: Hoare triple {30378#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {30378#false} is VALID [2018-11-23 12:17:20,284 INFO L273 TraceCheckUtils]: 123: Hoare triple {30378#false} assume true; {30378#false} is VALID [2018-11-23 12:17:20,284 INFO L268 TraceCheckUtils]: 124: Hoare quadruple {30378#false} {30377#true} #77#return; {30378#false} is VALID [2018-11-23 12:17:20,284 INFO L273 TraceCheckUtils]: 125: Hoare triple {30378#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {30378#false} is VALID [2018-11-23 12:17:20,285 INFO L256 TraceCheckUtils]: 126: Hoare triple {30378#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {30377#true} is VALID [2018-11-23 12:17:20,285 INFO L273 TraceCheckUtils]: 127: Hoare triple {30377#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {30377#true} is VALID [2018-11-23 12:17:20,285 INFO L273 TraceCheckUtils]: 128: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,285 INFO L273 TraceCheckUtils]: 129: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,285 INFO L273 TraceCheckUtils]: 130: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,285 INFO L273 TraceCheckUtils]: 131: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,286 INFO L273 TraceCheckUtils]: 132: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,286 INFO L273 TraceCheckUtils]: 133: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,286 INFO L273 TraceCheckUtils]: 134: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,286 INFO L273 TraceCheckUtils]: 135: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,286 INFO L273 TraceCheckUtils]: 136: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,287 INFO L273 TraceCheckUtils]: 137: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,287 INFO L273 TraceCheckUtils]: 138: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,287 INFO L273 TraceCheckUtils]: 139: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,287 INFO L273 TraceCheckUtils]: 140: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,287 INFO L273 TraceCheckUtils]: 141: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,287 INFO L273 TraceCheckUtils]: 142: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,287 INFO L273 TraceCheckUtils]: 143: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,287 INFO L273 TraceCheckUtils]: 144: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,288 INFO L273 TraceCheckUtils]: 145: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,288 INFO L273 TraceCheckUtils]: 146: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,288 INFO L273 TraceCheckUtils]: 147: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,288 INFO L273 TraceCheckUtils]: 148: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,288 INFO L273 TraceCheckUtils]: 149: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,288 INFO L273 TraceCheckUtils]: 150: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,288 INFO L273 TraceCheckUtils]: 151: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,288 INFO L273 TraceCheckUtils]: 152: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,288 INFO L273 TraceCheckUtils]: 153: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,288 INFO L273 TraceCheckUtils]: 154: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,289 INFO L273 TraceCheckUtils]: 155: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,289 INFO L273 TraceCheckUtils]: 156: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,289 INFO L273 TraceCheckUtils]: 157: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,289 INFO L273 TraceCheckUtils]: 158: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,289 INFO L273 TraceCheckUtils]: 159: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,289 INFO L273 TraceCheckUtils]: 160: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,289 INFO L273 TraceCheckUtils]: 161: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,289 INFO L273 TraceCheckUtils]: 162: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,289 INFO L273 TraceCheckUtils]: 163: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,289 INFO L273 TraceCheckUtils]: 164: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,290 INFO L273 TraceCheckUtils]: 165: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,290 INFO L273 TraceCheckUtils]: 166: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,290 INFO L273 TraceCheckUtils]: 167: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,290 INFO L273 TraceCheckUtils]: 168: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,290 INFO L273 TraceCheckUtils]: 169: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,290 INFO L273 TraceCheckUtils]: 170: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,290 INFO L273 TraceCheckUtils]: 171: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,290 INFO L273 TraceCheckUtils]: 172: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,290 INFO L273 TraceCheckUtils]: 173: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,290 INFO L273 TraceCheckUtils]: 174: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,291 INFO L273 TraceCheckUtils]: 175: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,291 INFO L273 TraceCheckUtils]: 176: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,291 INFO L273 TraceCheckUtils]: 177: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,291 INFO L273 TraceCheckUtils]: 178: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,291 INFO L273 TraceCheckUtils]: 179: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,291 INFO L273 TraceCheckUtils]: 180: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,291 INFO L273 TraceCheckUtils]: 181: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,291 INFO L273 TraceCheckUtils]: 182: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,291 INFO L273 TraceCheckUtils]: 183: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,291 INFO L273 TraceCheckUtils]: 184: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,292 INFO L273 TraceCheckUtils]: 185: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,292 INFO L273 TraceCheckUtils]: 186: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,292 INFO L273 TraceCheckUtils]: 187: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,292 INFO L273 TraceCheckUtils]: 188: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,292 INFO L273 TraceCheckUtils]: 189: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,292 INFO L273 TraceCheckUtils]: 190: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,292 INFO L273 TraceCheckUtils]: 191: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,292 INFO L273 TraceCheckUtils]: 192: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,292 INFO L273 TraceCheckUtils]: 193: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,292 INFO L273 TraceCheckUtils]: 194: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,293 INFO L273 TraceCheckUtils]: 195: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,293 INFO L273 TraceCheckUtils]: 196: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,293 INFO L273 TraceCheckUtils]: 197: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,293 INFO L273 TraceCheckUtils]: 198: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,293 INFO L273 TraceCheckUtils]: 199: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,293 INFO L273 TraceCheckUtils]: 200: Hoare triple {30377#true} assume !(~i~0 < 20); {30377#true} is VALID [2018-11-23 12:17:20,293 INFO L273 TraceCheckUtils]: 201: Hoare triple {30377#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {30377#true} is VALID [2018-11-23 12:17:20,293 INFO L273 TraceCheckUtils]: 202: Hoare triple {30377#true} assume true; {30377#true} is VALID [2018-11-23 12:17:20,293 INFO L268 TraceCheckUtils]: 203: Hoare quadruple {30377#true} {30378#false} #79#return; {30378#false} is VALID [2018-11-23 12:17:20,293 INFO L273 TraceCheckUtils]: 204: Hoare triple {30378#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {30378#false} is VALID [2018-11-23 12:17:20,294 INFO L273 TraceCheckUtils]: 205: Hoare triple {30378#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {30378#false} is VALID [2018-11-23 12:17:20,294 INFO L273 TraceCheckUtils]: 206: Hoare triple {30378#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {30378#false} is VALID [2018-11-23 12:17:20,294 INFO L273 TraceCheckUtils]: 207: Hoare triple {30378#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {30378#false} is VALID [2018-11-23 12:17:20,294 INFO L273 TraceCheckUtils]: 208: Hoare triple {30378#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {30378#false} is VALID [2018-11-23 12:17:20,294 INFO L273 TraceCheckUtils]: 209: Hoare triple {30378#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {30378#false} is VALID [2018-11-23 12:17:20,294 INFO L273 TraceCheckUtils]: 210: Hoare triple {30378#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {30378#false} is VALID [2018-11-23 12:17:20,294 INFO L273 TraceCheckUtils]: 211: Hoare triple {30378#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {30378#false} is VALID [2018-11-23 12:17:20,294 INFO L273 TraceCheckUtils]: 212: Hoare triple {30378#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {30378#false} is VALID [2018-11-23 12:17:20,294 INFO L273 TraceCheckUtils]: 213: Hoare triple {30378#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {30378#false} is VALID [2018-11-23 12:17:20,295 INFO L273 TraceCheckUtils]: 214: Hoare triple {30378#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {30378#false} is VALID [2018-11-23 12:17:20,295 INFO L273 TraceCheckUtils]: 215: Hoare triple {30378#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {30378#false} is VALID [2018-11-23 12:17:20,295 INFO L273 TraceCheckUtils]: 216: Hoare triple {30378#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {30378#false} is VALID [2018-11-23 12:17:20,295 INFO L273 TraceCheckUtils]: 217: Hoare triple {30378#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {30378#false} is VALID [2018-11-23 12:17:20,295 INFO L273 TraceCheckUtils]: 218: Hoare triple {30378#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {30378#false} is VALID [2018-11-23 12:17:20,295 INFO L273 TraceCheckUtils]: 219: Hoare triple {30378#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {30378#false} is VALID [2018-11-23 12:17:20,295 INFO L273 TraceCheckUtils]: 220: Hoare triple {30378#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {30378#false} is VALID [2018-11-23 12:17:20,295 INFO L273 TraceCheckUtils]: 221: Hoare triple {30378#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {30378#false} is VALID [2018-11-23 12:17:20,295 INFO L273 TraceCheckUtils]: 222: Hoare triple {30378#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {30378#false} is VALID [2018-11-23 12:17:20,295 INFO L273 TraceCheckUtils]: 223: Hoare triple {30378#false} assume !(~i~2 < 19); {30378#false} is VALID [2018-11-23 12:17:20,296 INFO L273 TraceCheckUtils]: 224: Hoare triple {30378#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {30378#false} is VALID [2018-11-23 12:17:20,296 INFO L256 TraceCheckUtils]: 225: Hoare triple {30378#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {30377#true} is VALID [2018-11-23 12:17:20,296 INFO L273 TraceCheckUtils]: 226: Hoare triple {30377#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {30377#true} is VALID [2018-11-23 12:17:20,296 INFO L273 TraceCheckUtils]: 227: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,296 INFO L273 TraceCheckUtils]: 228: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,296 INFO L273 TraceCheckUtils]: 229: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,296 INFO L273 TraceCheckUtils]: 230: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,296 INFO L273 TraceCheckUtils]: 231: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,296 INFO L273 TraceCheckUtils]: 232: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,296 INFO L273 TraceCheckUtils]: 233: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,297 INFO L273 TraceCheckUtils]: 234: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,297 INFO L273 TraceCheckUtils]: 235: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,297 INFO L273 TraceCheckUtils]: 236: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,297 INFO L273 TraceCheckUtils]: 237: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,297 INFO L273 TraceCheckUtils]: 238: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,297 INFO L273 TraceCheckUtils]: 239: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,297 INFO L273 TraceCheckUtils]: 240: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,297 INFO L273 TraceCheckUtils]: 241: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,297 INFO L273 TraceCheckUtils]: 242: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,297 INFO L273 TraceCheckUtils]: 243: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,298 INFO L273 TraceCheckUtils]: 244: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,298 INFO L273 TraceCheckUtils]: 245: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,298 INFO L273 TraceCheckUtils]: 246: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,298 INFO L273 TraceCheckUtils]: 247: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,298 INFO L273 TraceCheckUtils]: 248: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,298 INFO L273 TraceCheckUtils]: 249: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,298 INFO L273 TraceCheckUtils]: 250: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,298 INFO L273 TraceCheckUtils]: 251: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,298 INFO L273 TraceCheckUtils]: 252: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,299 INFO L273 TraceCheckUtils]: 253: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,299 INFO L273 TraceCheckUtils]: 254: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,299 INFO L273 TraceCheckUtils]: 255: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,299 INFO L273 TraceCheckUtils]: 256: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,299 INFO L273 TraceCheckUtils]: 257: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,299 INFO L273 TraceCheckUtils]: 258: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,299 INFO L273 TraceCheckUtils]: 259: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,299 INFO L273 TraceCheckUtils]: 260: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,299 INFO L273 TraceCheckUtils]: 261: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,299 INFO L273 TraceCheckUtils]: 262: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,300 INFO L273 TraceCheckUtils]: 263: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,300 INFO L273 TraceCheckUtils]: 264: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,300 INFO L273 TraceCheckUtils]: 265: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,300 INFO L273 TraceCheckUtils]: 266: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,300 INFO L273 TraceCheckUtils]: 267: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,300 INFO L273 TraceCheckUtils]: 268: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,300 INFO L273 TraceCheckUtils]: 269: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,300 INFO L273 TraceCheckUtils]: 270: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,300 INFO L273 TraceCheckUtils]: 271: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,300 INFO L273 TraceCheckUtils]: 272: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,301 INFO L273 TraceCheckUtils]: 273: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,301 INFO L273 TraceCheckUtils]: 274: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,301 INFO L273 TraceCheckUtils]: 275: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,301 INFO L273 TraceCheckUtils]: 276: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,301 INFO L273 TraceCheckUtils]: 277: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,301 INFO L273 TraceCheckUtils]: 278: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,301 INFO L273 TraceCheckUtils]: 279: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,301 INFO L273 TraceCheckUtils]: 280: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,301 INFO L273 TraceCheckUtils]: 281: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,301 INFO L273 TraceCheckUtils]: 282: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,302 INFO L273 TraceCheckUtils]: 283: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,302 INFO L273 TraceCheckUtils]: 284: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,302 INFO L273 TraceCheckUtils]: 285: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,302 INFO L273 TraceCheckUtils]: 286: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,302 INFO L273 TraceCheckUtils]: 287: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,302 INFO L273 TraceCheckUtils]: 288: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,302 INFO L273 TraceCheckUtils]: 289: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,302 INFO L273 TraceCheckUtils]: 290: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,302 INFO L273 TraceCheckUtils]: 291: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,302 INFO L273 TraceCheckUtils]: 292: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,303 INFO L273 TraceCheckUtils]: 293: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,303 INFO L273 TraceCheckUtils]: 294: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,303 INFO L273 TraceCheckUtils]: 295: Hoare triple {30377#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30377#true} is VALID [2018-11-23 12:17:20,303 INFO L273 TraceCheckUtils]: 296: Hoare triple {30377#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30377#true} is VALID [2018-11-23 12:17:20,303 INFO L273 TraceCheckUtils]: 297: Hoare triple {30377#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30377#true} is VALID [2018-11-23 12:17:20,303 INFO L273 TraceCheckUtils]: 298: Hoare triple {30377#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30377#true} is VALID [2018-11-23 12:17:20,303 INFO L273 TraceCheckUtils]: 299: Hoare triple {30377#true} assume !(~i~0 < 20); {30377#true} is VALID [2018-11-23 12:17:20,303 INFO L273 TraceCheckUtils]: 300: Hoare triple {30377#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {30377#true} is VALID [2018-11-23 12:17:20,303 INFO L273 TraceCheckUtils]: 301: Hoare triple {30377#true} assume true; {30377#true} is VALID [2018-11-23 12:17:20,303 INFO L268 TraceCheckUtils]: 302: Hoare quadruple {30377#true} {30378#false} #81#return; {30378#false} is VALID [2018-11-23 12:17:20,304 INFO L273 TraceCheckUtils]: 303: Hoare triple {30378#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {30378#false} is VALID [2018-11-23 12:17:20,304 INFO L273 TraceCheckUtils]: 304: Hoare triple {30378#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {30378#false} is VALID [2018-11-23 12:17:20,304 INFO L273 TraceCheckUtils]: 305: Hoare triple {30378#false} assume !false; {30378#false} is VALID [2018-11-23 12:17:20,339 INFO L134 CoverageAnalysis]: Checked inductivity of 6382 backedges. 0 proven. 3302 refuted. 0 times theorem prover too weak. 3080 trivial. 0 not checked. [2018-11-23 12:17:20,340 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:17:20,340 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 -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 34 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:17:20,352 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:17:20,497 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:17:20,497 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:17:20,555 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:20,557 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:17:20,834 INFO L256 TraceCheckUtils]: 0: Hoare triple {30377#true} call ULTIMATE.init(); {30377#true} is VALID [2018-11-23 12:17:20,835 INFO L273 TraceCheckUtils]: 1: Hoare triple {30377#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {30377#true} is VALID [2018-11-23 12:17:20,835 INFO L273 TraceCheckUtils]: 2: Hoare triple {30377#true} assume true; {30377#true} is VALID [2018-11-23 12:17:20,835 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {30377#true} {30377#true} #73#return; {30377#true} is VALID [2018-11-23 12:17:20,835 INFO L256 TraceCheckUtils]: 4: Hoare triple {30377#true} call #t~ret14 := main(); {30377#true} is VALID [2018-11-23 12:17:20,835 INFO L273 TraceCheckUtils]: 5: Hoare triple {30377#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {30377#true} is VALID [2018-11-23 12:17:20,835 INFO L273 TraceCheckUtils]: 6: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,836 INFO L273 TraceCheckUtils]: 7: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,836 INFO L273 TraceCheckUtils]: 8: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,836 INFO L273 TraceCheckUtils]: 9: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,836 INFO L273 TraceCheckUtils]: 10: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,836 INFO L273 TraceCheckUtils]: 11: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,837 INFO L273 TraceCheckUtils]: 12: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,837 INFO L273 TraceCheckUtils]: 13: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,837 INFO L273 TraceCheckUtils]: 14: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,837 INFO L273 TraceCheckUtils]: 15: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,837 INFO L273 TraceCheckUtils]: 16: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,837 INFO L273 TraceCheckUtils]: 17: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,837 INFO L273 TraceCheckUtils]: 18: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,837 INFO L273 TraceCheckUtils]: 19: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,838 INFO L273 TraceCheckUtils]: 20: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,838 INFO L273 TraceCheckUtils]: 21: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,838 INFO L273 TraceCheckUtils]: 22: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,838 INFO L273 TraceCheckUtils]: 23: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,838 INFO L273 TraceCheckUtils]: 24: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,838 INFO L273 TraceCheckUtils]: 25: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,838 INFO L273 TraceCheckUtils]: 26: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,838 INFO L273 TraceCheckUtils]: 27: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,838 INFO L273 TraceCheckUtils]: 28: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,838 INFO L273 TraceCheckUtils]: 29: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,839 INFO L273 TraceCheckUtils]: 30: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,839 INFO L273 TraceCheckUtils]: 31: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,839 INFO L273 TraceCheckUtils]: 32: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,839 INFO L273 TraceCheckUtils]: 33: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,839 INFO L273 TraceCheckUtils]: 34: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,839 INFO L273 TraceCheckUtils]: 35: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,839 INFO L273 TraceCheckUtils]: 36: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,839 INFO L273 TraceCheckUtils]: 37: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,839 INFO L273 TraceCheckUtils]: 38: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,840 INFO L273 TraceCheckUtils]: 39: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,840 INFO L273 TraceCheckUtils]: 40: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,840 INFO L273 TraceCheckUtils]: 41: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,840 INFO L273 TraceCheckUtils]: 42: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,840 INFO L273 TraceCheckUtils]: 43: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,840 INFO L273 TraceCheckUtils]: 44: Hoare triple {30377#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {30377#true} is VALID [2018-11-23 12:17:20,840 INFO L273 TraceCheckUtils]: 45: Hoare triple {30377#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {30377#true} is VALID [2018-11-23 12:17:20,840 INFO L273 TraceCheckUtils]: 46: Hoare triple {30377#true} assume !(~i~1 < 20); {30377#true} is VALID [2018-11-23 12:17:20,840 INFO L256 TraceCheckUtils]: 47: Hoare triple {30377#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {30377#true} is VALID [2018-11-23 12:17:20,841 INFO L273 TraceCheckUtils]: 48: Hoare triple {30377#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {30545#(<= max_~i~0 0)} is VALID [2018-11-23 12:17:20,841 INFO L273 TraceCheckUtils]: 49: Hoare triple {30545#(<= max_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30545#(<= max_~i~0 0)} is VALID [2018-11-23 12:17:20,841 INFO L273 TraceCheckUtils]: 50: Hoare triple {30545#(<= max_~i~0 0)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30545#(<= max_~i~0 0)} is VALID [2018-11-23 12:17:20,842 INFO L273 TraceCheckUtils]: 51: Hoare triple {30545#(<= max_~i~0 0)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30545#(<= max_~i~0 0)} is VALID [2018-11-23 12:17:20,842 INFO L273 TraceCheckUtils]: 52: Hoare triple {30545#(<= max_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30380#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:20,842 INFO L273 TraceCheckUtils]: 53: Hoare triple {30380#(<= max_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30380#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:20,843 INFO L273 TraceCheckUtils]: 54: Hoare triple {30380#(<= max_~i~0 1)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30380#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:20,843 INFO L273 TraceCheckUtils]: 55: Hoare triple {30380#(<= max_~i~0 1)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30380#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:20,843 INFO L273 TraceCheckUtils]: 56: Hoare triple {30380#(<= max_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30381#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:20,844 INFO L273 TraceCheckUtils]: 57: Hoare triple {30381#(<= max_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30381#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:20,844 INFO L273 TraceCheckUtils]: 58: Hoare triple {30381#(<= max_~i~0 2)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30381#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:20,845 INFO L273 TraceCheckUtils]: 59: Hoare triple {30381#(<= max_~i~0 2)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30381#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:20,845 INFO L273 TraceCheckUtils]: 60: Hoare triple {30381#(<= max_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30382#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:20,846 INFO L273 TraceCheckUtils]: 61: Hoare triple {30382#(<= max_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30382#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:20,846 INFO L273 TraceCheckUtils]: 62: Hoare triple {30382#(<= max_~i~0 3)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30382#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:20,847 INFO L273 TraceCheckUtils]: 63: Hoare triple {30382#(<= max_~i~0 3)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30382#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:20,848 INFO L273 TraceCheckUtils]: 64: Hoare triple {30382#(<= max_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30383#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:20,848 INFO L273 TraceCheckUtils]: 65: Hoare triple {30383#(<= max_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30383#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:20,849 INFO L273 TraceCheckUtils]: 66: Hoare triple {30383#(<= max_~i~0 4)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30383#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:20,849 INFO L273 TraceCheckUtils]: 67: Hoare triple {30383#(<= max_~i~0 4)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30383#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:20,850 INFO L273 TraceCheckUtils]: 68: Hoare triple {30383#(<= max_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30384#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:20,850 INFO L273 TraceCheckUtils]: 69: Hoare triple {30384#(<= max_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30384#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:20,851 INFO L273 TraceCheckUtils]: 70: Hoare triple {30384#(<= max_~i~0 5)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30384#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:20,851 INFO L273 TraceCheckUtils]: 71: Hoare triple {30384#(<= max_~i~0 5)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30384#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:20,852 INFO L273 TraceCheckUtils]: 72: Hoare triple {30384#(<= max_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30385#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:20,852 INFO L273 TraceCheckUtils]: 73: Hoare triple {30385#(<= max_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30385#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:20,853 INFO L273 TraceCheckUtils]: 74: Hoare triple {30385#(<= max_~i~0 6)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30385#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:20,853 INFO L273 TraceCheckUtils]: 75: Hoare triple {30385#(<= max_~i~0 6)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30385#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:20,854 INFO L273 TraceCheckUtils]: 76: Hoare triple {30385#(<= max_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30386#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:20,855 INFO L273 TraceCheckUtils]: 77: Hoare triple {30386#(<= max_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30386#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:20,855 INFO L273 TraceCheckUtils]: 78: Hoare triple {30386#(<= max_~i~0 7)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30386#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:20,856 INFO L273 TraceCheckUtils]: 79: Hoare triple {30386#(<= max_~i~0 7)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30386#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:20,856 INFO L273 TraceCheckUtils]: 80: Hoare triple {30386#(<= max_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30387#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:20,857 INFO L273 TraceCheckUtils]: 81: Hoare triple {30387#(<= max_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30387#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:20,857 INFO L273 TraceCheckUtils]: 82: Hoare triple {30387#(<= max_~i~0 8)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30387#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:20,858 INFO L273 TraceCheckUtils]: 83: Hoare triple {30387#(<= max_~i~0 8)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30387#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:20,858 INFO L273 TraceCheckUtils]: 84: Hoare triple {30387#(<= max_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30388#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:20,859 INFO L273 TraceCheckUtils]: 85: Hoare triple {30388#(<= max_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30388#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:20,860 INFO L273 TraceCheckUtils]: 86: Hoare triple {30388#(<= max_~i~0 9)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30388#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:20,860 INFO L273 TraceCheckUtils]: 87: Hoare triple {30388#(<= max_~i~0 9)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30388#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:20,861 INFO L273 TraceCheckUtils]: 88: Hoare triple {30388#(<= max_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30389#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:20,861 INFO L273 TraceCheckUtils]: 89: Hoare triple {30389#(<= max_~i~0 10)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30389#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:20,862 INFO L273 TraceCheckUtils]: 90: Hoare triple {30389#(<= max_~i~0 10)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30389#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:20,862 INFO L273 TraceCheckUtils]: 91: Hoare triple {30389#(<= max_~i~0 10)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30389#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:20,863 INFO L273 TraceCheckUtils]: 92: Hoare triple {30389#(<= max_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30390#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:20,863 INFO L273 TraceCheckUtils]: 93: Hoare triple {30390#(<= max_~i~0 11)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30390#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:20,864 INFO L273 TraceCheckUtils]: 94: Hoare triple {30390#(<= max_~i~0 11)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30390#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:20,864 INFO L273 TraceCheckUtils]: 95: Hoare triple {30390#(<= max_~i~0 11)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30390#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:20,865 INFO L273 TraceCheckUtils]: 96: Hoare triple {30390#(<= max_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30391#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:20,866 INFO L273 TraceCheckUtils]: 97: Hoare triple {30391#(<= max_~i~0 12)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30391#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:20,866 INFO L273 TraceCheckUtils]: 98: Hoare triple {30391#(<= max_~i~0 12)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30391#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:20,867 INFO L273 TraceCheckUtils]: 99: Hoare triple {30391#(<= max_~i~0 12)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30391#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:20,867 INFO L273 TraceCheckUtils]: 100: Hoare triple {30391#(<= max_~i~0 12)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30392#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:20,868 INFO L273 TraceCheckUtils]: 101: Hoare triple {30392#(<= max_~i~0 13)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30392#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:20,868 INFO L273 TraceCheckUtils]: 102: Hoare triple {30392#(<= max_~i~0 13)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30392#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:20,869 INFO L273 TraceCheckUtils]: 103: Hoare triple {30392#(<= max_~i~0 13)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30392#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:20,870 INFO L273 TraceCheckUtils]: 104: Hoare triple {30392#(<= max_~i~0 13)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30393#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:20,870 INFO L273 TraceCheckUtils]: 105: Hoare triple {30393#(<= max_~i~0 14)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30393#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:20,871 INFO L273 TraceCheckUtils]: 106: Hoare triple {30393#(<= max_~i~0 14)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30393#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:20,871 INFO L273 TraceCheckUtils]: 107: Hoare triple {30393#(<= max_~i~0 14)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30393#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:20,872 INFO L273 TraceCheckUtils]: 108: Hoare triple {30393#(<= max_~i~0 14)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30394#(<= max_~i~0 15)} is VALID [2018-11-23 12:17:20,872 INFO L273 TraceCheckUtils]: 109: Hoare triple {30394#(<= max_~i~0 15)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30394#(<= max_~i~0 15)} is VALID [2018-11-23 12:17:20,873 INFO L273 TraceCheckUtils]: 110: Hoare triple {30394#(<= max_~i~0 15)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30394#(<= max_~i~0 15)} is VALID [2018-11-23 12:17:20,873 INFO L273 TraceCheckUtils]: 111: Hoare triple {30394#(<= max_~i~0 15)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30394#(<= max_~i~0 15)} is VALID [2018-11-23 12:17:20,874 INFO L273 TraceCheckUtils]: 112: Hoare triple {30394#(<= max_~i~0 15)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30395#(<= max_~i~0 16)} is VALID [2018-11-23 12:17:20,875 INFO L273 TraceCheckUtils]: 113: Hoare triple {30395#(<= max_~i~0 16)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30395#(<= max_~i~0 16)} is VALID [2018-11-23 12:17:20,875 INFO L273 TraceCheckUtils]: 114: Hoare triple {30395#(<= max_~i~0 16)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30395#(<= max_~i~0 16)} is VALID [2018-11-23 12:17:20,879 INFO L273 TraceCheckUtils]: 115: Hoare triple {30395#(<= max_~i~0 16)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30395#(<= max_~i~0 16)} is VALID [2018-11-23 12:17:20,879 INFO L273 TraceCheckUtils]: 116: Hoare triple {30395#(<= max_~i~0 16)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30396#(<= max_~i~0 17)} is VALID [2018-11-23 12:17:20,880 INFO L273 TraceCheckUtils]: 117: Hoare triple {30396#(<= max_~i~0 17)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30396#(<= max_~i~0 17)} is VALID [2018-11-23 12:17:20,880 INFO L273 TraceCheckUtils]: 118: Hoare triple {30396#(<= max_~i~0 17)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30396#(<= max_~i~0 17)} is VALID [2018-11-23 12:17:20,881 INFO L273 TraceCheckUtils]: 119: Hoare triple {30396#(<= max_~i~0 17)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30396#(<= max_~i~0 17)} is VALID [2018-11-23 12:17:20,881 INFO L273 TraceCheckUtils]: 120: Hoare triple {30396#(<= max_~i~0 17)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30397#(<= max_~i~0 18)} is VALID [2018-11-23 12:17:20,881 INFO L273 TraceCheckUtils]: 121: Hoare triple {30397#(<= max_~i~0 18)} assume !(~i~0 < 20); {30378#false} is VALID [2018-11-23 12:17:20,882 INFO L273 TraceCheckUtils]: 122: Hoare triple {30378#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {30378#false} is VALID [2018-11-23 12:17:20,882 INFO L273 TraceCheckUtils]: 123: Hoare triple {30378#false} assume true; {30378#false} is VALID [2018-11-23 12:17:20,882 INFO L268 TraceCheckUtils]: 124: Hoare quadruple {30378#false} {30377#true} #77#return; {30378#false} is VALID [2018-11-23 12:17:20,882 INFO L273 TraceCheckUtils]: 125: Hoare triple {30378#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {30378#false} is VALID [2018-11-23 12:17:20,882 INFO L256 TraceCheckUtils]: 126: Hoare triple {30378#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {30378#false} is VALID [2018-11-23 12:17:20,882 INFO L273 TraceCheckUtils]: 127: Hoare triple {30378#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {30378#false} is VALID [2018-11-23 12:17:20,882 INFO L273 TraceCheckUtils]: 128: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,882 INFO L273 TraceCheckUtils]: 129: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,883 INFO L273 TraceCheckUtils]: 130: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,883 INFO L273 TraceCheckUtils]: 131: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,883 INFO L273 TraceCheckUtils]: 132: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,883 INFO L273 TraceCheckUtils]: 133: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,883 INFO L273 TraceCheckUtils]: 134: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,883 INFO L273 TraceCheckUtils]: 135: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,884 INFO L273 TraceCheckUtils]: 136: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,884 INFO L273 TraceCheckUtils]: 137: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,884 INFO L273 TraceCheckUtils]: 138: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,884 INFO L273 TraceCheckUtils]: 139: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,884 INFO L273 TraceCheckUtils]: 140: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,884 INFO L273 TraceCheckUtils]: 141: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,885 INFO L273 TraceCheckUtils]: 142: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,885 INFO L273 TraceCheckUtils]: 143: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,885 INFO L273 TraceCheckUtils]: 144: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,885 INFO L273 TraceCheckUtils]: 145: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,885 INFO L273 TraceCheckUtils]: 146: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,886 INFO L273 TraceCheckUtils]: 147: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,886 INFO L273 TraceCheckUtils]: 148: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,886 INFO L273 TraceCheckUtils]: 149: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,886 INFO L273 TraceCheckUtils]: 150: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,886 INFO L273 TraceCheckUtils]: 151: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,886 INFO L273 TraceCheckUtils]: 152: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,886 INFO L273 TraceCheckUtils]: 153: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,887 INFO L273 TraceCheckUtils]: 154: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,887 INFO L273 TraceCheckUtils]: 155: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,887 INFO L273 TraceCheckUtils]: 156: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,887 INFO L273 TraceCheckUtils]: 157: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,887 INFO L273 TraceCheckUtils]: 158: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,887 INFO L273 TraceCheckUtils]: 159: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,887 INFO L273 TraceCheckUtils]: 160: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,887 INFO L273 TraceCheckUtils]: 161: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,887 INFO L273 TraceCheckUtils]: 162: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,887 INFO L273 TraceCheckUtils]: 163: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,888 INFO L273 TraceCheckUtils]: 164: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,888 INFO L273 TraceCheckUtils]: 165: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,888 INFO L273 TraceCheckUtils]: 166: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,888 INFO L273 TraceCheckUtils]: 167: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,888 INFO L273 TraceCheckUtils]: 168: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,888 INFO L273 TraceCheckUtils]: 169: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,888 INFO L273 TraceCheckUtils]: 170: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,888 INFO L273 TraceCheckUtils]: 171: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,888 INFO L273 TraceCheckUtils]: 172: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,888 INFO L273 TraceCheckUtils]: 173: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,889 INFO L273 TraceCheckUtils]: 174: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,889 INFO L273 TraceCheckUtils]: 175: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,889 INFO L273 TraceCheckUtils]: 176: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,889 INFO L273 TraceCheckUtils]: 177: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,889 INFO L273 TraceCheckUtils]: 178: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,889 INFO L273 TraceCheckUtils]: 179: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,889 INFO L273 TraceCheckUtils]: 180: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,889 INFO L273 TraceCheckUtils]: 181: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,889 INFO L273 TraceCheckUtils]: 182: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,889 INFO L273 TraceCheckUtils]: 183: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,890 INFO L273 TraceCheckUtils]: 184: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,890 INFO L273 TraceCheckUtils]: 185: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,890 INFO L273 TraceCheckUtils]: 186: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,890 INFO L273 TraceCheckUtils]: 187: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,890 INFO L273 TraceCheckUtils]: 188: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,890 INFO L273 TraceCheckUtils]: 189: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,890 INFO L273 TraceCheckUtils]: 190: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,890 INFO L273 TraceCheckUtils]: 191: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,890 INFO L273 TraceCheckUtils]: 192: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,890 INFO L273 TraceCheckUtils]: 193: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,891 INFO L273 TraceCheckUtils]: 194: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,891 INFO L273 TraceCheckUtils]: 195: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,891 INFO L273 TraceCheckUtils]: 196: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,891 INFO L273 TraceCheckUtils]: 197: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,891 INFO L273 TraceCheckUtils]: 198: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,891 INFO L273 TraceCheckUtils]: 199: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,891 INFO L273 TraceCheckUtils]: 200: Hoare triple {30378#false} assume !(~i~0 < 20); {30378#false} is VALID [2018-11-23 12:17:20,891 INFO L273 TraceCheckUtils]: 201: Hoare triple {30378#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {30378#false} is VALID [2018-11-23 12:17:20,891 INFO L273 TraceCheckUtils]: 202: Hoare triple {30378#false} assume true; {30378#false} is VALID [2018-11-23 12:17:20,891 INFO L268 TraceCheckUtils]: 203: Hoare quadruple {30378#false} {30378#false} #79#return; {30378#false} is VALID [2018-11-23 12:17:20,892 INFO L273 TraceCheckUtils]: 204: Hoare triple {30378#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {30378#false} is VALID [2018-11-23 12:17:20,892 INFO L273 TraceCheckUtils]: 205: Hoare triple {30378#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {30378#false} is VALID [2018-11-23 12:17:20,892 INFO L273 TraceCheckUtils]: 206: Hoare triple {30378#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {30378#false} is VALID [2018-11-23 12:17:20,892 INFO L273 TraceCheckUtils]: 207: Hoare triple {30378#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {30378#false} is VALID [2018-11-23 12:17:20,892 INFO L273 TraceCheckUtils]: 208: Hoare triple {30378#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {30378#false} is VALID [2018-11-23 12:17:20,892 INFO L273 TraceCheckUtils]: 209: Hoare triple {30378#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {30378#false} is VALID [2018-11-23 12:17:20,892 INFO L273 TraceCheckUtils]: 210: Hoare triple {30378#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {30378#false} is VALID [2018-11-23 12:17:20,892 INFO L273 TraceCheckUtils]: 211: Hoare triple {30378#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {30378#false} is VALID [2018-11-23 12:17:20,892 INFO L273 TraceCheckUtils]: 212: Hoare triple {30378#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {30378#false} is VALID [2018-11-23 12:17:20,892 INFO L273 TraceCheckUtils]: 213: Hoare triple {30378#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {30378#false} is VALID [2018-11-23 12:17:20,893 INFO L273 TraceCheckUtils]: 214: Hoare triple {30378#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {30378#false} is VALID [2018-11-23 12:17:20,893 INFO L273 TraceCheckUtils]: 215: Hoare triple {30378#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {30378#false} is VALID [2018-11-23 12:17:20,893 INFO L273 TraceCheckUtils]: 216: Hoare triple {30378#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {30378#false} is VALID [2018-11-23 12:17:20,893 INFO L273 TraceCheckUtils]: 217: Hoare triple {30378#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {30378#false} is VALID [2018-11-23 12:17:20,893 INFO L273 TraceCheckUtils]: 218: Hoare triple {30378#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {30378#false} is VALID [2018-11-23 12:17:20,893 INFO L273 TraceCheckUtils]: 219: Hoare triple {30378#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {30378#false} is VALID [2018-11-23 12:17:20,893 INFO L273 TraceCheckUtils]: 220: Hoare triple {30378#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {30378#false} is VALID [2018-11-23 12:17:20,893 INFO L273 TraceCheckUtils]: 221: Hoare triple {30378#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {30378#false} is VALID [2018-11-23 12:17:20,893 INFO L273 TraceCheckUtils]: 222: Hoare triple {30378#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {30378#false} is VALID [2018-11-23 12:17:20,893 INFO L273 TraceCheckUtils]: 223: Hoare triple {30378#false} assume !(~i~2 < 19); {30378#false} is VALID [2018-11-23 12:17:20,894 INFO L273 TraceCheckUtils]: 224: Hoare triple {30378#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {30378#false} is VALID [2018-11-23 12:17:20,894 INFO L256 TraceCheckUtils]: 225: Hoare triple {30378#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {30378#false} is VALID [2018-11-23 12:17:20,894 INFO L273 TraceCheckUtils]: 226: Hoare triple {30378#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {30378#false} is VALID [2018-11-23 12:17:20,894 INFO L273 TraceCheckUtils]: 227: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,894 INFO L273 TraceCheckUtils]: 228: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,894 INFO L273 TraceCheckUtils]: 229: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,894 INFO L273 TraceCheckUtils]: 230: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,894 INFO L273 TraceCheckUtils]: 231: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,894 INFO L273 TraceCheckUtils]: 232: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,894 INFO L273 TraceCheckUtils]: 233: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,895 INFO L273 TraceCheckUtils]: 234: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,895 INFO L273 TraceCheckUtils]: 235: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,895 INFO L273 TraceCheckUtils]: 236: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,895 INFO L273 TraceCheckUtils]: 237: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,895 INFO L273 TraceCheckUtils]: 238: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,895 INFO L273 TraceCheckUtils]: 239: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,895 INFO L273 TraceCheckUtils]: 240: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,895 INFO L273 TraceCheckUtils]: 241: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,895 INFO L273 TraceCheckUtils]: 242: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,896 INFO L273 TraceCheckUtils]: 243: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,896 INFO L273 TraceCheckUtils]: 244: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,896 INFO L273 TraceCheckUtils]: 245: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,896 INFO L273 TraceCheckUtils]: 246: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,896 INFO L273 TraceCheckUtils]: 247: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,896 INFO L273 TraceCheckUtils]: 248: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,896 INFO L273 TraceCheckUtils]: 249: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,896 INFO L273 TraceCheckUtils]: 250: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,896 INFO L273 TraceCheckUtils]: 251: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,896 INFO L273 TraceCheckUtils]: 252: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,897 INFO L273 TraceCheckUtils]: 253: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,897 INFO L273 TraceCheckUtils]: 254: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,897 INFO L273 TraceCheckUtils]: 255: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,897 INFO L273 TraceCheckUtils]: 256: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,897 INFO L273 TraceCheckUtils]: 257: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,897 INFO L273 TraceCheckUtils]: 258: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,897 INFO L273 TraceCheckUtils]: 259: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,897 INFO L273 TraceCheckUtils]: 260: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,897 INFO L273 TraceCheckUtils]: 261: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,897 INFO L273 TraceCheckUtils]: 262: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,898 INFO L273 TraceCheckUtils]: 263: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,898 INFO L273 TraceCheckUtils]: 264: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,898 INFO L273 TraceCheckUtils]: 265: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,898 INFO L273 TraceCheckUtils]: 266: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,898 INFO L273 TraceCheckUtils]: 267: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,898 INFO L273 TraceCheckUtils]: 268: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,898 INFO L273 TraceCheckUtils]: 269: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,898 INFO L273 TraceCheckUtils]: 270: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,898 INFO L273 TraceCheckUtils]: 271: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,898 INFO L273 TraceCheckUtils]: 272: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,899 INFO L273 TraceCheckUtils]: 273: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,899 INFO L273 TraceCheckUtils]: 274: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,899 INFO L273 TraceCheckUtils]: 275: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,899 INFO L273 TraceCheckUtils]: 276: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,899 INFO L273 TraceCheckUtils]: 277: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,899 INFO L273 TraceCheckUtils]: 278: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,899 INFO L273 TraceCheckUtils]: 279: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,899 INFO L273 TraceCheckUtils]: 280: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,899 INFO L273 TraceCheckUtils]: 281: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,899 INFO L273 TraceCheckUtils]: 282: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,900 INFO L273 TraceCheckUtils]: 283: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,900 INFO L273 TraceCheckUtils]: 284: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,900 INFO L273 TraceCheckUtils]: 285: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,900 INFO L273 TraceCheckUtils]: 286: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,900 INFO L273 TraceCheckUtils]: 287: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,900 INFO L273 TraceCheckUtils]: 288: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,900 INFO L273 TraceCheckUtils]: 289: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,900 INFO L273 TraceCheckUtils]: 290: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,900 INFO L273 TraceCheckUtils]: 291: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,900 INFO L273 TraceCheckUtils]: 292: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,901 INFO L273 TraceCheckUtils]: 293: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,901 INFO L273 TraceCheckUtils]: 294: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,901 INFO L273 TraceCheckUtils]: 295: Hoare triple {30378#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {30378#false} is VALID [2018-11-23 12:17:20,901 INFO L273 TraceCheckUtils]: 296: Hoare triple {30378#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {30378#false} is VALID [2018-11-23 12:17:20,901 INFO L273 TraceCheckUtils]: 297: Hoare triple {30378#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {30378#false} is VALID [2018-11-23 12:17:20,901 INFO L273 TraceCheckUtils]: 298: Hoare triple {30378#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {30378#false} is VALID [2018-11-23 12:17:20,901 INFO L273 TraceCheckUtils]: 299: Hoare triple {30378#false} assume !(~i~0 < 20); {30378#false} is VALID [2018-11-23 12:17:20,901 INFO L273 TraceCheckUtils]: 300: Hoare triple {30378#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {30378#false} is VALID [2018-11-23 12:17:20,901 INFO L273 TraceCheckUtils]: 301: Hoare triple {30378#false} assume true; {30378#false} is VALID [2018-11-23 12:17:20,901 INFO L268 TraceCheckUtils]: 302: Hoare quadruple {30378#false} {30378#false} #81#return; {30378#false} is VALID [2018-11-23 12:17:20,902 INFO L273 TraceCheckUtils]: 303: Hoare triple {30378#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {30378#false} is VALID [2018-11-23 12:17:20,902 INFO L273 TraceCheckUtils]: 304: Hoare triple {30378#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {30378#false} is VALID [2018-11-23 12:17:20,902 INFO L273 TraceCheckUtils]: 305: Hoare triple {30378#false} assume !false; {30378#false} is VALID [2018-11-23 12:17:20,938 INFO L134 CoverageAnalysis]: Checked inductivity of 6382 backedges. 2668 proven. 630 refuted. 0 times theorem prover too weak. 3084 trivial. 0 not checked. [2018-11-23 12:17:20,969 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:17:20,969 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 21] total 22 [2018-11-23 12:17:20,970 INFO L78 Accepts]: Start accepts. Automaton has 22 states. Word has length 306 [2018-11-23 12:17:20,972 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:17:20,972 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 22 states. [2018-11-23 12:17:21,193 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:17:21,193 INFO L459 AbstractCegarLoop]: Interpolant automaton has 22 states [2018-11-23 12:17:21,193 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2018-11-23 12:17:21,194 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=231, Invalid=231, Unknown=0, NotChecked=0, Total=462 [2018-11-23 12:17:21,194 INFO L87 Difference]: Start difference. First operand 153 states and 175 transitions. Second operand 22 states. [2018-11-23 12:17:21,815 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:21,815 INFO L93 Difference]: Finished difference Result 265 states and 313 transitions. [2018-11-23 12:17:21,815 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2018-11-23 12:17:21,816 INFO L78 Accepts]: Start accepts. Automaton has 22 states. Word has length 306 [2018-11-23 12:17:21,816 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:17:21,816 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 22 states. [2018-11-23 12:17:21,817 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 154 transitions. [2018-11-23 12:17:21,817 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 22 states. [2018-11-23 12:17:21,818 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 154 transitions. [2018-11-23 12:17:21,818 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 21 states and 154 transitions. [2018-11-23 12:17:21,954 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 154 edges. 154 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:17:21,958 INFO L225 Difference]: With dead ends: 265 [2018-11-23 12:17:21,958 INFO L226 Difference]: Without dead ends: 160 [2018-11-23 12:17:21,959 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 326 GetRequests, 306 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 34 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=231, Invalid=231, Unknown=0, NotChecked=0, Total=462 [2018-11-23 12:17:21,959 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 160 states. [2018-11-23 12:17:22,000 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 160 to 157. [2018-11-23 12:17:22,000 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:17:22,000 INFO L82 GeneralOperation]: Start isEquivalent. First operand 160 states. Second operand 157 states. [2018-11-23 12:17:22,000 INFO L74 IsIncluded]: Start isIncluded. First operand 160 states. Second operand 157 states. [2018-11-23 12:17:22,001 INFO L87 Difference]: Start difference. First operand 160 states. Second operand 157 states. [2018-11-23 12:17:22,004 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:22,004 INFO L93 Difference]: Finished difference Result 160 states and 184 transitions. [2018-11-23 12:17:22,004 INFO L276 IsEmpty]: Start isEmpty. Operand 160 states and 184 transitions. [2018-11-23 12:17:22,004 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:22,005 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:22,005 INFO L74 IsIncluded]: Start isIncluded. First operand 157 states. Second operand 160 states. [2018-11-23 12:17:22,005 INFO L87 Difference]: Start difference. First operand 157 states. Second operand 160 states. [2018-11-23 12:17:22,008 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:22,008 INFO L93 Difference]: Finished difference Result 160 states and 184 transitions. [2018-11-23 12:17:22,008 INFO L276 IsEmpty]: Start isEmpty. Operand 160 states and 184 transitions. [2018-11-23 12:17:22,009 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:22,009 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:22,009 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:17:22,009 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:17:22,009 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 157 states. [2018-11-23 12:17:22,012 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 157 states to 157 states and 180 transitions. [2018-11-23 12:17:22,012 INFO L78 Accepts]: Start accepts. Automaton has 157 states and 180 transitions. Word has length 306 [2018-11-23 12:17:22,012 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:17:22,012 INFO L480 AbstractCegarLoop]: Abstraction has 157 states and 180 transitions. [2018-11-23 12:17:22,013 INFO L481 AbstractCegarLoop]: Interpolant automaton has 22 states. [2018-11-23 12:17:22,013 INFO L276 IsEmpty]: Start isEmpty. Operand 157 states and 180 transitions. [2018-11-23 12:17:22,014 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 319 [2018-11-23 12:17:22,015 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:17:22,015 INFO L402 BasicCegarLoop]: trace histogram [57, 57, 57, 57, 20, 20, 9, 9, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:17:22,015 INFO L423 AbstractCegarLoop]: === Iteration 36 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:17:22,015 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:17:22,015 INFO L82 PathProgramCache]: Analyzing trace with hash 1891498626, now seen corresponding path program 33 times [2018-11-23 12:17:22,016 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:17:22,016 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:17:22,016 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:22,016 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:17:22,016 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:22,071 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:23,745 INFO L256 TraceCheckUtils]: 0: Hoare triple {32208#true} call ULTIMATE.init(); {32208#true} is VALID [2018-11-23 12:17:23,745 INFO L273 TraceCheckUtils]: 1: Hoare triple {32208#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {32208#true} is VALID [2018-11-23 12:17:23,745 INFO L273 TraceCheckUtils]: 2: Hoare triple {32208#true} assume true; {32208#true} is VALID [2018-11-23 12:17:23,745 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {32208#true} {32208#true} #73#return; {32208#true} is VALID [2018-11-23 12:17:23,746 INFO L256 TraceCheckUtils]: 4: Hoare triple {32208#true} call #t~ret14 := main(); {32208#true} is VALID [2018-11-23 12:17:23,746 INFO L273 TraceCheckUtils]: 5: Hoare triple {32208#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {32208#true} is VALID [2018-11-23 12:17:23,746 INFO L273 TraceCheckUtils]: 6: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:23,746 INFO L273 TraceCheckUtils]: 7: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:23,746 INFO L273 TraceCheckUtils]: 8: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:23,746 INFO L273 TraceCheckUtils]: 9: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:23,746 INFO L273 TraceCheckUtils]: 10: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:23,746 INFO L273 TraceCheckUtils]: 11: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:23,746 INFO L273 TraceCheckUtils]: 12: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:23,746 INFO L273 TraceCheckUtils]: 13: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:23,747 INFO L273 TraceCheckUtils]: 14: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:23,747 INFO L273 TraceCheckUtils]: 15: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:23,747 INFO L273 TraceCheckUtils]: 16: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:23,747 INFO L273 TraceCheckUtils]: 17: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:23,747 INFO L273 TraceCheckUtils]: 18: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:23,747 INFO L273 TraceCheckUtils]: 19: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:23,747 INFO L273 TraceCheckUtils]: 20: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:23,747 INFO L273 TraceCheckUtils]: 21: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:23,747 INFO L273 TraceCheckUtils]: 22: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:23,747 INFO L273 TraceCheckUtils]: 23: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:23,748 INFO L273 TraceCheckUtils]: 24: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:23,748 INFO L273 TraceCheckUtils]: 25: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:23,748 INFO L273 TraceCheckUtils]: 26: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:23,748 INFO L273 TraceCheckUtils]: 27: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:23,748 INFO L273 TraceCheckUtils]: 28: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:23,748 INFO L273 TraceCheckUtils]: 29: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:23,748 INFO L273 TraceCheckUtils]: 30: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:23,748 INFO L273 TraceCheckUtils]: 31: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:23,748 INFO L273 TraceCheckUtils]: 32: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:23,748 INFO L273 TraceCheckUtils]: 33: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:23,749 INFO L273 TraceCheckUtils]: 34: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:23,749 INFO L273 TraceCheckUtils]: 35: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:23,749 INFO L273 TraceCheckUtils]: 36: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:23,749 INFO L273 TraceCheckUtils]: 37: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:23,749 INFO L273 TraceCheckUtils]: 38: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:23,749 INFO L273 TraceCheckUtils]: 39: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:23,749 INFO L273 TraceCheckUtils]: 40: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:23,749 INFO L273 TraceCheckUtils]: 41: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:23,749 INFO L273 TraceCheckUtils]: 42: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:23,749 INFO L273 TraceCheckUtils]: 43: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:23,750 INFO L273 TraceCheckUtils]: 44: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:23,750 INFO L273 TraceCheckUtils]: 45: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:23,750 INFO L273 TraceCheckUtils]: 46: Hoare triple {32208#true} assume !(~i~1 < 20); {32208#true} is VALID [2018-11-23 12:17:23,750 INFO L256 TraceCheckUtils]: 47: Hoare triple {32208#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {32208#true} is VALID [2018-11-23 12:17:23,750 INFO L273 TraceCheckUtils]: 48: Hoare triple {32208#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {32210#(= max_~i~0 0)} is VALID [2018-11-23 12:17:23,750 INFO L273 TraceCheckUtils]: 49: Hoare triple {32210#(= max_~i~0 0)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32210#(= max_~i~0 0)} is VALID [2018-11-23 12:17:23,752 INFO L273 TraceCheckUtils]: 50: Hoare triple {32210#(= max_~i~0 0)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32210#(= max_~i~0 0)} is VALID [2018-11-23 12:17:23,752 INFO L273 TraceCheckUtils]: 51: Hoare triple {32210#(= max_~i~0 0)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32210#(= max_~i~0 0)} is VALID [2018-11-23 12:17:23,755 INFO L273 TraceCheckUtils]: 52: Hoare triple {32210#(= max_~i~0 0)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32211#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:23,755 INFO L273 TraceCheckUtils]: 53: Hoare triple {32211#(<= max_~i~0 1)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32211#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:23,757 INFO L273 TraceCheckUtils]: 54: Hoare triple {32211#(<= max_~i~0 1)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32211#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:23,757 INFO L273 TraceCheckUtils]: 55: Hoare triple {32211#(<= max_~i~0 1)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32211#(<= max_~i~0 1)} is VALID [2018-11-23 12:17:23,760 INFO L273 TraceCheckUtils]: 56: Hoare triple {32211#(<= max_~i~0 1)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32212#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:23,760 INFO L273 TraceCheckUtils]: 57: Hoare triple {32212#(<= max_~i~0 2)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32212#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:23,762 INFO L273 TraceCheckUtils]: 58: Hoare triple {32212#(<= max_~i~0 2)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32212#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:23,762 INFO L273 TraceCheckUtils]: 59: Hoare triple {32212#(<= max_~i~0 2)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32212#(<= max_~i~0 2)} is VALID [2018-11-23 12:17:23,764 INFO L273 TraceCheckUtils]: 60: Hoare triple {32212#(<= max_~i~0 2)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32213#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:23,764 INFO L273 TraceCheckUtils]: 61: Hoare triple {32213#(<= max_~i~0 3)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32213#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:23,766 INFO L273 TraceCheckUtils]: 62: Hoare triple {32213#(<= max_~i~0 3)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32213#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:23,766 INFO L273 TraceCheckUtils]: 63: Hoare triple {32213#(<= max_~i~0 3)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32213#(<= max_~i~0 3)} is VALID [2018-11-23 12:17:23,766 INFO L273 TraceCheckUtils]: 64: Hoare triple {32213#(<= max_~i~0 3)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32214#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:23,767 INFO L273 TraceCheckUtils]: 65: Hoare triple {32214#(<= max_~i~0 4)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32214#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:23,768 INFO L273 TraceCheckUtils]: 66: Hoare triple {32214#(<= max_~i~0 4)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32214#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:23,768 INFO L273 TraceCheckUtils]: 67: Hoare triple {32214#(<= max_~i~0 4)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32214#(<= max_~i~0 4)} is VALID [2018-11-23 12:17:23,770 INFO L273 TraceCheckUtils]: 68: Hoare triple {32214#(<= max_~i~0 4)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32215#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:23,770 INFO L273 TraceCheckUtils]: 69: Hoare triple {32215#(<= max_~i~0 5)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32215#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:23,772 INFO L273 TraceCheckUtils]: 70: Hoare triple {32215#(<= max_~i~0 5)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32215#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:23,772 INFO L273 TraceCheckUtils]: 71: Hoare triple {32215#(<= max_~i~0 5)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32215#(<= max_~i~0 5)} is VALID [2018-11-23 12:17:23,774 INFO L273 TraceCheckUtils]: 72: Hoare triple {32215#(<= max_~i~0 5)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32216#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:23,774 INFO L273 TraceCheckUtils]: 73: Hoare triple {32216#(<= max_~i~0 6)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32216#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:23,777 INFO L273 TraceCheckUtils]: 74: Hoare triple {32216#(<= max_~i~0 6)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32216#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:23,777 INFO L273 TraceCheckUtils]: 75: Hoare triple {32216#(<= max_~i~0 6)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32216#(<= max_~i~0 6)} is VALID [2018-11-23 12:17:23,779 INFO L273 TraceCheckUtils]: 76: Hoare triple {32216#(<= max_~i~0 6)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32217#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:23,779 INFO L273 TraceCheckUtils]: 77: Hoare triple {32217#(<= max_~i~0 7)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32217#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:23,781 INFO L273 TraceCheckUtils]: 78: Hoare triple {32217#(<= max_~i~0 7)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32217#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:23,781 INFO L273 TraceCheckUtils]: 79: Hoare triple {32217#(<= max_~i~0 7)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32217#(<= max_~i~0 7)} is VALID [2018-11-23 12:17:23,783 INFO L273 TraceCheckUtils]: 80: Hoare triple {32217#(<= max_~i~0 7)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32218#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:23,783 INFO L273 TraceCheckUtils]: 81: Hoare triple {32218#(<= max_~i~0 8)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32218#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:23,786 INFO L273 TraceCheckUtils]: 82: Hoare triple {32218#(<= max_~i~0 8)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32218#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:23,786 INFO L273 TraceCheckUtils]: 83: Hoare triple {32218#(<= max_~i~0 8)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32218#(<= max_~i~0 8)} is VALID [2018-11-23 12:17:23,788 INFO L273 TraceCheckUtils]: 84: Hoare triple {32218#(<= max_~i~0 8)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32219#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:23,788 INFO L273 TraceCheckUtils]: 85: Hoare triple {32219#(<= max_~i~0 9)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32219#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:23,790 INFO L273 TraceCheckUtils]: 86: Hoare triple {32219#(<= max_~i~0 9)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32219#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:23,790 INFO L273 TraceCheckUtils]: 87: Hoare triple {32219#(<= max_~i~0 9)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32219#(<= max_~i~0 9)} is VALID [2018-11-23 12:17:23,792 INFO L273 TraceCheckUtils]: 88: Hoare triple {32219#(<= max_~i~0 9)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32220#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:23,792 INFO L273 TraceCheckUtils]: 89: Hoare triple {32220#(<= max_~i~0 10)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32220#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:23,794 INFO L273 TraceCheckUtils]: 90: Hoare triple {32220#(<= max_~i~0 10)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32220#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:23,794 INFO L273 TraceCheckUtils]: 91: Hoare triple {32220#(<= max_~i~0 10)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32220#(<= max_~i~0 10)} is VALID [2018-11-23 12:17:23,796 INFO L273 TraceCheckUtils]: 92: Hoare triple {32220#(<= max_~i~0 10)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32221#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:23,796 INFO L273 TraceCheckUtils]: 93: Hoare triple {32221#(<= max_~i~0 11)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32221#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:23,798 INFO L273 TraceCheckUtils]: 94: Hoare triple {32221#(<= max_~i~0 11)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32221#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:23,798 INFO L273 TraceCheckUtils]: 95: Hoare triple {32221#(<= max_~i~0 11)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32221#(<= max_~i~0 11)} is VALID [2018-11-23 12:17:23,800 INFO L273 TraceCheckUtils]: 96: Hoare triple {32221#(<= max_~i~0 11)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32222#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:23,800 INFO L273 TraceCheckUtils]: 97: Hoare triple {32222#(<= max_~i~0 12)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32222#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:23,803 INFO L273 TraceCheckUtils]: 98: Hoare triple {32222#(<= max_~i~0 12)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32222#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:23,803 INFO L273 TraceCheckUtils]: 99: Hoare triple {32222#(<= max_~i~0 12)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32222#(<= max_~i~0 12)} is VALID [2018-11-23 12:17:23,805 INFO L273 TraceCheckUtils]: 100: Hoare triple {32222#(<= max_~i~0 12)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32223#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:23,805 INFO L273 TraceCheckUtils]: 101: Hoare triple {32223#(<= max_~i~0 13)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32223#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:23,808 INFO L273 TraceCheckUtils]: 102: Hoare triple {32223#(<= max_~i~0 13)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32223#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:23,808 INFO L273 TraceCheckUtils]: 103: Hoare triple {32223#(<= max_~i~0 13)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32223#(<= max_~i~0 13)} is VALID [2018-11-23 12:17:23,810 INFO L273 TraceCheckUtils]: 104: Hoare triple {32223#(<= max_~i~0 13)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32224#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:23,810 INFO L273 TraceCheckUtils]: 105: Hoare triple {32224#(<= max_~i~0 14)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32224#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:23,812 INFO L273 TraceCheckUtils]: 106: Hoare triple {32224#(<= max_~i~0 14)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32224#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:23,812 INFO L273 TraceCheckUtils]: 107: Hoare triple {32224#(<= max_~i~0 14)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32224#(<= max_~i~0 14)} is VALID [2018-11-23 12:17:23,814 INFO L273 TraceCheckUtils]: 108: Hoare triple {32224#(<= max_~i~0 14)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32225#(<= max_~i~0 15)} is VALID [2018-11-23 12:17:23,814 INFO L273 TraceCheckUtils]: 109: Hoare triple {32225#(<= max_~i~0 15)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32225#(<= max_~i~0 15)} is VALID [2018-11-23 12:17:23,817 INFO L273 TraceCheckUtils]: 110: Hoare triple {32225#(<= max_~i~0 15)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32225#(<= max_~i~0 15)} is VALID [2018-11-23 12:17:23,817 INFO L273 TraceCheckUtils]: 111: Hoare triple {32225#(<= max_~i~0 15)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32225#(<= max_~i~0 15)} is VALID [2018-11-23 12:17:23,819 INFO L273 TraceCheckUtils]: 112: Hoare triple {32225#(<= max_~i~0 15)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32226#(<= max_~i~0 16)} is VALID [2018-11-23 12:17:23,819 INFO L273 TraceCheckUtils]: 113: Hoare triple {32226#(<= max_~i~0 16)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32226#(<= max_~i~0 16)} is VALID [2018-11-23 12:17:23,821 INFO L273 TraceCheckUtils]: 114: Hoare triple {32226#(<= max_~i~0 16)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32226#(<= max_~i~0 16)} is VALID [2018-11-23 12:17:23,821 INFO L273 TraceCheckUtils]: 115: Hoare triple {32226#(<= max_~i~0 16)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32226#(<= max_~i~0 16)} is VALID [2018-11-23 12:17:23,823 INFO L273 TraceCheckUtils]: 116: Hoare triple {32226#(<= max_~i~0 16)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32227#(<= max_~i~0 17)} is VALID [2018-11-23 12:17:23,823 INFO L273 TraceCheckUtils]: 117: Hoare triple {32227#(<= max_~i~0 17)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32227#(<= max_~i~0 17)} is VALID [2018-11-23 12:17:23,826 INFO L273 TraceCheckUtils]: 118: Hoare triple {32227#(<= max_~i~0 17)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32227#(<= max_~i~0 17)} is VALID [2018-11-23 12:17:23,826 INFO L273 TraceCheckUtils]: 119: Hoare triple {32227#(<= max_~i~0 17)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32227#(<= max_~i~0 17)} is VALID [2018-11-23 12:17:23,828 INFO L273 TraceCheckUtils]: 120: Hoare triple {32227#(<= max_~i~0 17)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32228#(<= max_~i~0 18)} is VALID [2018-11-23 12:17:23,828 INFO L273 TraceCheckUtils]: 121: Hoare triple {32228#(<= max_~i~0 18)} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32228#(<= max_~i~0 18)} is VALID [2018-11-23 12:17:23,830 INFO L273 TraceCheckUtils]: 122: Hoare triple {32228#(<= max_~i~0 18)} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32228#(<= max_~i~0 18)} is VALID [2018-11-23 12:17:23,830 INFO L273 TraceCheckUtils]: 123: Hoare triple {32228#(<= max_~i~0 18)} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32228#(<= max_~i~0 18)} is VALID [2018-11-23 12:17:23,833 INFO L273 TraceCheckUtils]: 124: Hoare triple {32228#(<= max_~i~0 18)} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32229#(<= max_~i~0 19)} is VALID [2018-11-23 12:17:23,833 INFO L273 TraceCheckUtils]: 125: Hoare triple {32229#(<= max_~i~0 19)} assume !(~i~0 < 20); {32209#false} is VALID [2018-11-23 12:17:23,833 INFO L273 TraceCheckUtils]: 126: Hoare triple {32209#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {32209#false} is VALID [2018-11-23 12:17:23,833 INFO L273 TraceCheckUtils]: 127: Hoare triple {32209#false} assume true; {32209#false} is VALID [2018-11-23 12:17:23,833 INFO L268 TraceCheckUtils]: 128: Hoare quadruple {32209#false} {32208#true} #77#return; {32209#false} is VALID [2018-11-23 12:17:23,834 INFO L273 TraceCheckUtils]: 129: Hoare triple {32209#false} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {32209#false} is VALID [2018-11-23 12:17:23,834 INFO L256 TraceCheckUtils]: 130: Hoare triple {32209#false} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {32208#true} is VALID [2018-11-23 12:17:23,834 INFO L273 TraceCheckUtils]: 131: Hoare triple {32208#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {32208#true} is VALID [2018-11-23 12:17:23,834 INFO L273 TraceCheckUtils]: 132: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,834 INFO L273 TraceCheckUtils]: 133: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,834 INFO L273 TraceCheckUtils]: 134: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,834 INFO L273 TraceCheckUtils]: 135: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,834 INFO L273 TraceCheckUtils]: 136: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,834 INFO L273 TraceCheckUtils]: 137: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,834 INFO L273 TraceCheckUtils]: 138: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,835 INFO L273 TraceCheckUtils]: 139: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,835 INFO L273 TraceCheckUtils]: 140: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,835 INFO L273 TraceCheckUtils]: 141: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,835 INFO L273 TraceCheckUtils]: 142: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,835 INFO L273 TraceCheckUtils]: 143: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,835 INFO L273 TraceCheckUtils]: 144: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,835 INFO L273 TraceCheckUtils]: 145: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,835 INFO L273 TraceCheckUtils]: 146: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,835 INFO L273 TraceCheckUtils]: 147: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,835 INFO L273 TraceCheckUtils]: 148: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,836 INFO L273 TraceCheckUtils]: 149: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,836 INFO L273 TraceCheckUtils]: 150: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,836 INFO L273 TraceCheckUtils]: 151: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,836 INFO L273 TraceCheckUtils]: 152: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,836 INFO L273 TraceCheckUtils]: 153: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,836 INFO L273 TraceCheckUtils]: 154: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,836 INFO L273 TraceCheckUtils]: 155: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,836 INFO L273 TraceCheckUtils]: 156: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,836 INFO L273 TraceCheckUtils]: 157: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,836 INFO L273 TraceCheckUtils]: 158: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,837 INFO L273 TraceCheckUtils]: 159: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,837 INFO L273 TraceCheckUtils]: 160: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,837 INFO L273 TraceCheckUtils]: 161: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,837 INFO L273 TraceCheckUtils]: 162: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,837 INFO L273 TraceCheckUtils]: 163: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,837 INFO L273 TraceCheckUtils]: 164: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,837 INFO L273 TraceCheckUtils]: 165: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,837 INFO L273 TraceCheckUtils]: 166: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,837 INFO L273 TraceCheckUtils]: 167: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,837 INFO L273 TraceCheckUtils]: 168: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,838 INFO L273 TraceCheckUtils]: 169: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,838 INFO L273 TraceCheckUtils]: 170: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,838 INFO L273 TraceCheckUtils]: 171: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,838 INFO L273 TraceCheckUtils]: 172: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,838 INFO L273 TraceCheckUtils]: 173: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,838 INFO L273 TraceCheckUtils]: 174: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,838 INFO L273 TraceCheckUtils]: 175: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,838 INFO L273 TraceCheckUtils]: 176: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,838 INFO L273 TraceCheckUtils]: 177: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,838 INFO L273 TraceCheckUtils]: 178: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,839 INFO L273 TraceCheckUtils]: 179: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,839 INFO L273 TraceCheckUtils]: 180: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,839 INFO L273 TraceCheckUtils]: 181: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,839 INFO L273 TraceCheckUtils]: 182: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,839 INFO L273 TraceCheckUtils]: 183: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,839 INFO L273 TraceCheckUtils]: 184: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,839 INFO L273 TraceCheckUtils]: 185: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,839 INFO L273 TraceCheckUtils]: 186: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,839 INFO L273 TraceCheckUtils]: 187: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,839 INFO L273 TraceCheckUtils]: 188: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,840 INFO L273 TraceCheckUtils]: 189: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,840 INFO L273 TraceCheckUtils]: 190: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,840 INFO L273 TraceCheckUtils]: 191: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,840 INFO L273 TraceCheckUtils]: 192: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,840 INFO L273 TraceCheckUtils]: 193: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,840 INFO L273 TraceCheckUtils]: 194: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,840 INFO L273 TraceCheckUtils]: 195: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,840 INFO L273 TraceCheckUtils]: 196: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,840 INFO L273 TraceCheckUtils]: 197: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,840 INFO L273 TraceCheckUtils]: 198: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,841 INFO L273 TraceCheckUtils]: 199: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,841 INFO L273 TraceCheckUtils]: 200: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,841 INFO L273 TraceCheckUtils]: 201: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,841 INFO L273 TraceCheckUtils]: 202: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,841 INFO L273 TraceCheckUtils]: 203: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,841 INFO L273 TraceCheckUtils]: 204: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,841 INFO L273 TraceCheckUtils]: 205: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,841 INFO L273 TraceCheckUtils]: 206: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,841 INFO L273 TraceCheckUtils]: 207: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,841 INFO L273 TraceCheckUtils]: 208: Hoare triple {32208#true} assume !(~i~0 < 20); {32208#true} is VALID [2018-11-23 12:17:23,842 INFO L273 TraceCheckUtils]: 209: Hoare triple {32208#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {32208#true} is VALID [2018-11-23 12:17:23,842 INFO L273 TraceCheckUtils]: 210: Hoare triple {32208#true} assume true; {32208#true} is VALID [2018-11-23 12:17:23,842 INFO L268 TraceCheckUtils]: 211: Hoare quadruple {32208#true} {32209#false} #79#return; {32209#false} is VALID [2018-11-23 12:17:23,842 INFO L273 TraceCheckUtils]: 212: Hoare triple {32209#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {32209#false} is VALID [2018-11-23 12:17:23,842 INFO L273 TraceCheckUtils]: 213: Hoare triple {32209#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {32209#false} is VALID [2018-11-23 12:17:23,842 INFO L273 TraceCheckUtils]: 214: Hoare triple {32209#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {32209#false} is VALID [2018-11-23 12:17:23,842 INFO L273 TraceCheckUtils]: 215: Hoare triple {32209#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {32209#false} is VALID [2018-11-23 12:17:23,842 INFO L273 TraceCheckUtils]: 216: Hoare triple {32209#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {32209#false} is VALID [2018-11-23 12:17:23,842 INFO L273 TraceCheckUtils]: 217: Hoare triple {32209#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {32209#false} is VALID [2018-11-23 12:17:23,843 INFO L273 TraceCheckUtils]: 218: Hoare triple {32209#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {32209#false} is VALID [2018-11-23 12:17:23,843 INFO L273 TraceCheckUtils]: 219: Hoare triple {32209#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {32209#false} is VALID [2018-11-23 12:17:23,843 INFO L273 TraceCheckUtils]: 220: Hoare triple {32209#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {32209#false} is VALID [2018-11-23 12:17:23,843 INFO L273 TraceCheckUtils]: 221: Hoare triple {32209#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {32209#false} is VALID [2018-11-23 12:17:23,843 INFO L273 TraceCheckUtils]: 222: Hoare triple {32209#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {32209#false} is VALID [2018-11-23 12:17:23,843 INFO L273 TraceCheckUtils]: 223: Hoare triple {32209#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {32209#false} is VALID [2018-11-23 12:17:23,843 INFO L273 TraceCheckUtils]: 224: Hoare triple {32209#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {32209#false} is VALID [2018-11-23 12:17:23,843 INFO L273 TraceCheckUtils]: 225: Hoare triple {32209#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {32209#false} is VALID [2018-11-23 12:17:23,843 INFO L273 TraceCheckUtils]: 226: Hoare triple {32209#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {32209#false} is VALID [2018-11-23 12:17:23,843 INFO L273 TraceCheckUtils]: 227: Hoare triple {32209#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {32209#false} is VALID [2018-11-23 12:17:23,844 INFO L273 TraceCheckUtils]: 228: Hoare triple {32209#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {32209#false} is VALID [2018-11-23 12:17:23,844 INFO L273 TraceCheckUtils]: 229: Hoare triple {32209#false} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {32209#false} is VALID [2018-11-23 12:17:23,844 INFO L273 TraceCheckUtils]: 230: Hoare triple {32209#false} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {32209#false} is VALID [2018-11-23 12:17:23,844 INFO L273 TraceCheckUtils]: 231: Hoare triple {32209#false} assume !(~i~2 < 19); {32209#false} is VALID [2018-11-23 12:17:23,844 INFO L273 TraceCheckUtils]: 232: Hoare triple {32209#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {32209#false} is VALID [2018-11-23 12:17:23,844 INFO L256 TraceCheckUtils]: 233: Hoare triple {32209#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {32208#true} is VALID [2018-11-23 12:17:23,844 INFO L273 TraceCheckUtils]: 234: Hoare triple {32208#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {32208#true} is VALID [2018-11-23 12:17:23,844 INFO L273 TraceCheckUtils]: 235: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,844 INFO L273 TraceCheckUtils]: 236: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,844 INFO L273 TraceCheckUtils]: 237: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,845 INFO L273 TraceCheckUtils]: 238: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,845 INFO L273 TraceCheckUtils]: 239: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,845 INFO L273 TraceCheckUtils]: 240: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,845 INFO L273 TraceCheckUtils]: 241: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,845 INFO L273 TraceCheckUtils]: 242: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,845 INFO L273 TraceCheckUtils]: 243: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,845 INFO L273 TraceCheckUtils]: 244: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,845 INFO L273 TraceCheckUtils]: 245: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,845 INFO L273 TraceCheckUtils]: 246: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,845 INFO L273 TraceCheckUtils]: 247: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,846 INFO L273 TraceCheckUtils]: 248: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,846 INFO L273 TraceCheckUtils]: 249: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,846 INFO L273 TraceCheckUtils]: 250: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,846 INFO L273 TraceCheckUtils]: 251: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,846 INFO L273 TraceCheckUtils]: 252: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,846 INFO L273 TraceCheckUtils]: 253: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,846 INFO L273 TraceCheckUtils]: 254: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,846 INFO L273 TraceCheckUtils]: 255: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,846 INFO L273 TraceCheckUtils]: 256: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,846 INFO L273 TraceCheckUtils]: 257: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,847 INFO L273 TraceCheckUtils]: 258: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,847 INFO L273 TraceCheckUtils]: 259: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,847 INFO L273 TraceCheckUtils]: 260: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,847 INFO L273 TraceCheckUtils]: 261: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,847 INFO L273 TraceCheckUtils]: 262: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,847 INFO L273 TraceCheckUtils]: 263: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,847 INFO L273 TraceCheckUtils]: 264: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,847 INFO L273 TraceCheckUtils]: 265: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,847 INFO L273 TraceCheckUtils]: 266: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,847 INFO L273 TraceCheckUtils]: 267: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,848 INFO L273 TraceCheckUtils]: 268: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,848 INFO L273 TraceCheckUtils]: 269: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,848 INFO L273 TraceCheckUtils]: 270: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,848 INFO L273 TraceCheckUtils]: 271: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,848 INFO L273 TraceCheckUtils]: 272: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,848 INFO L273 TraceCheckUtils]: 273: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,848 INFO L273 TraceCheckUtils]: 274: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,848 INFO L273 TraceCheckUtils]: 275: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,848 INFO L273 TraceCheckUtils]: 276: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,848 INFO L273 TraceCheckUtils]: 277: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,849 INFO L273 TraceCheckUtils]: 278: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,849 INFO L273 TraceCheckUtils]: 279: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,849 INFO L273 TraceCheckUtils]: 280: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,849 INFO L273 TraceCheckUtils]: 281: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,849 INFO L273 TraceCheckUtils]: 282: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,849 INFO L273 TraceCheckUtils]: 283: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,849 INFO L273 TraceCheckUtils]: 284: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,849 INFO L273 TraceCheckUtils]: 285: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,849 INFO L273 TraceCheckUtils]: 286: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,849 INFO L273 TraceCheckUtils]: 287: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,850 INFO L273 TraceCheckUtils]: 288: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,850 INFO L273 TraceCheckUtils]: 289: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,850 INFO L273 TraceCheckUtils]: 290: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,850 INFO L273 TraceCheckUtils]: 291: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,850 INFO L273 TraceCheckUtils]: 292: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,850 INFO L273 TraceCheckUtils]: 293: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,850 INFO L273 TraceCheckUtils]: 294: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,850 INFO L273 TraceCheckUtils]: 295: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,850 INFO L273 TraceCheckUtils]: 296: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,850 INFO L273 TraceCheckUtils]: 297: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,851 INFO L273 TraceCheckUtils]: 298: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,851 INFO L273 TraceCheckUtils]: 299: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,851 INFO L273 TraceCheckUtils]: 300: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,851 INFO L273 TraceCheckUtils]: 301: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,851 INFO L273 TraceCheckUtils]: 302: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,851 INFO L273 TraceCheckUtils]: 303: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,851 INFO L273 TraceCheckUtils]: 304: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,851 INFO L273 TraceCheckUtils]: 305: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,851 INFO L273 TraceCheckUtils]: 306: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,851 INFO L273 TraceCheckUtils]: 307: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:23,852 INFO L273 TraceCheckUtils]: 308: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:23,852 INFO L273 TraceCheckUtils]: 309: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:23,852 INFO L273 TraceCheckUtils]: 310: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:23,852 INFO L273 TraceCheckUtils]: 311: Hoare triple {32208#true} assume !(~i~0 < 20); {32208#true} is VALID [2018-11-23 12:17:23,852 INFO L273 TraceCheckUtils]: 312: Hoare triple {32208#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {32208#true} is VALID [2018-11-23 12:17:23,852 INFO L273 TraceCheckUtils]: 313: Hoare triple {32208#true} assume true; {32208#true} is VALID [2018-11-23 12:17:23,852 INFO L268 TraceCheckUtils]: 314: Hoare quadruple {32208#true} {32209#false} #81#return; {32209#false} is VALID [2018-11-23 12:17:23,852 INFO L273 TraceCheckUtils]: 315: Hoare triple {32209#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {32209#false} is VALID [2018-11-23 12:17:23,852 INFO L273 TraceCheckUtils]: 316: Hoare triple {32209#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {32209#false} is VALID [2018-11-23 12:17:23,852 INFO L273 TraceCheckUtils]: 317: Hoare triple {32209#false} assume !false; {32209#false} is VALID [2018-11-23 12:17:23,890 INFO L134 CoverageAnalysis]: Checked inductivity of 7051 backedges. 0 proven. 3675 refuted. 0 times theorem prover too weak. 3376 trivial. 0 not checked. [2018-11-23 12:17:23,890 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:17:23,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 35 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 35 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:17:23,900 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:17:24,471 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 11 check-sat command(s) [2018-11-23 12:17:24,471 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:17:24,553 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:24,555 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:17:26,021 INFO L256 TraceCheckUtils]: 0: Hoare triple {32208#true} call ULTIMATE.init(); {32208#true} is VALID [2018-11-23 12:17:26,021 INFO L273 TraceCheckUtils]: 1: Hoare triple {32208#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {32208#true} is VALID [2018-11-23 12:17:26,021 INFO L273 TraceCheckUtils]: 2: Hoare triple {32208#true} assume true; {32208#true} is VALID [2018-11-23 12:17:26,021 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {32208#true} {32208#true} #73#return; {32208#true} is VALID [2018-11-23 12:17:26,022 INFO L256 TraceCheckUtils]: 4: Hoare triple {32208#true} call #t~ret14 := main(); {32208#true} is VALID [2018-11-23 12:17:26,022 INFO L273 TraceCheckUtils]: 5: Hoare triple {32208#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {32208#true} is VALID [2018-11-23 12:17:26,022 INFO L273 TraceCheckUtils]: 6: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:26,022 INFO L273 TraceCheckUtils]: 7: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:26,022 INFO L273 TraceCheckUtils]: 8: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:26,023 INFO L273 TraceCheckUtils]: 9: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:26,023 INFO L273 TraceCheckUtils]: 10: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:26,023 INFO L273 TraceCheckUtils]: 11: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:26,023 INFO L273 TraceCheckUtils]: 12: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:26,023 INFO L273 TraceCheckUtils]: 13: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:26,023 INFO L273 TraceCheckUtils]: 14: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:26,024 INFO L273 TraceCheckUtils]: 15: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:26,024 INFO L273 TraceCheckUtils]: 16: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:26,024 INFO L273 TraceCheckUtils]: 17: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:26,024 INFO L273 TraceCheckUtils]: 18: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:26,024 INFO L273 TraceCheckUtils]: 19: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:26,024 INFO L273 TraceCheckUtils]: 20: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:26,024 INFO L273 TraceCheckUtils]: 21: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:26,025 INFO L273 TraceCheckUtils]: 22: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:26,025 INFO L273 TraceCheckUtils]: 23: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:26,025 INFO L273 TraceCheckUtils]: 24: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:26,025 INFO L273 TraceCheckUtils]: 25: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:26,025 INFO L273 TraceCheckUtils]: 26: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:26,025 INFO L273 TraceCheckUtils]: 27: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:26,025 INFO L273 TraceCheckUtils]: 28: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:26,025 INFO L273 TraceCheckUtils]: 29: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:26,025 INFO L273 TraceCheckUtils]: 30: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:26,025 INFO L273 TraceCheckUtils]: 31: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:26,026 INFO L273 TraceCheckUtils]: 32: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:26,026 INFO L273 TraceCheckUtils]: 33: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:26,026 INFO L273 TraceCheckUtils]: 34: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:26,026 INFO L273 TraceCheckUtils]: 35: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:26,026 INFO L273 TraceCheckUtils]: 36: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:26,026 INFO L273 TraceCheckUtils]: 37: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:26,026 INFO L273 TraceCheckUtils]: 38: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:26,026 INFO L273 TraceCheckUtils]: 39: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:26,026 INFO L273 TraceCheckUtils]: 40: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:26,026 INFO L273 TraceCheckUtils]: 41: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:26,027 INFO L273 TraceCheckUtils]: 42: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:26,027 INFO L273 TraceCheckUtils]: 43: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:26,027 INFO L273 TraceCheckUtils]: 44: Hoare triple {32208#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {32208#true} is VALID [2018-11-23 12:17:26,027 INFO L273 TraceCheckUtils]: 45: Hoare triple {32208#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {32208#true} is VALID [2018-11-23 12:17:26,027 INFO L273 TraceCheckUtils]: 46: Hoare triple {32208#true} assume !(~i~1 < 20); {32208#true} is VALID [2018-11-23 12:17:26,027 INFO L256 TraceCheckUtils]: 47: Hoare triple {32208#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {32208#true} is VALID [2018-11-23 12:17:26,027 INFO L273 TraceCheckUtils]: 48: Hoare triple {32208#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {32208#true} is VALID [2018-11-23 12:17:26,027 INFO L273 TraceCheckUtils]: 49: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,027 INFO L273 TraceCheckUtils]: 50: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,028 INFO L273 TraceCheckUtils]: 51: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,028 INFO L273 TraceCheckUtils]: 52: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,028 INFO L273 TraceCheckUtils]: 53: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,028 INFO L273 TraceCheckUtils]: 54: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,028 INFO L273 TraceCheckUtils]: 55: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,028 INFO L273 TraceCheckUtils]: 56: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,028 INFO L273 TraceCheckUtils]: 57: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,028 INFO L273 TraceCheckUtils]: 58: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,028 INFO L273 TraceCheckUtils]: 59: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,028 INFO L273 TraceCheckUtils]: 60: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,029 INFO L273 TraceCheckUtils]: 61: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,029 INFO L273 TraceCheckUtils]: 62: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,029 INFO L273 TraceCheckUtils]: 63: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,029 INFO L273 TraceCheckUtils]: 64: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,029 INFO L273 TraceCheckUtils]: 65: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,029 INFO L273 TraceCheckUtils]: 66: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,029 INFO L273 TraceCheckUtils]: 67: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,029 INFO L273 TraceCheckUtils]: 68: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,029 INFO L273 TraceCheckUtils]: 69: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,029 INFO L273 TraceCheckUtils]: 70: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,030 INFO L273 TraceCheckUtils]: 71: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,030 INFO L273 TraceCheckUtils]: 72: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,030 INFO L273 TraceCheckUtils]: 73: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,030 INFO L273 TraceCheckUtils]: 74: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,030 INFO L273 TraceCheckUtils]: 75: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,030 INFO L273 TraceCheckUtils]: 76: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,030 INFO L273 TraceCheckUtils]: 77: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,030 INFO L273 TraceCheckUtils]: 78: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,030 INFO L273 TraceCheckUtils]: 79: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,030 INFO L273 TraceCheckUtils]: 80: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,031 INFO L273 TraceCheckUtils]: 81: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,031 INFO L273 TraceCheckUtils]: 82: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,031 INFO L273 TraceCheckUtils]: 83: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,031 INFO L273 TraceCheckUtils]: 84: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,031 INFO L273 TraceCheckUtils]: 85: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,031 INFO L273 TraceCheckUtils]: 86: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,031 INFO L273 TraceCheckUtils]: 87: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,031 INFO L273 TraceCheckUtils]: 88: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,031 INFO L273 TraceCheckUtils]: 89: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,031 INFO L273 TraceCheckUtils]: 90: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,032 INFO L273 TraceCheckUtils]: 91: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,032 INFO L273 TraceCheckUtils]: 92: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,032 INFO L273 TraceCheckUtils]: 93: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,032 INFO L273 TraceCheckUtils]: 94: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,032 INFO L273 TraceCheckUtils]: 95: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,032 INFO L273 TraceCheckUtils]: 96: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,032 INFO L273 TraceCheckUtils]: 97: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,032 INFO L273 TraceCheckUtils]: 98: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,032 INFO L273 TraceCheckUtils]: 99: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,032 INFO L273 TraceCheckUtils]: 100: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,033 INFO L273 TraceCheckUtils]: 101: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,033 INFO L273 TraceCheckUtils]: 102: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,033 INFO L273 TraceCheckUtils]: 103: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,033 INFO L273 TraceCheckUtils]: 104: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,033 INFO L273 TraceCheckUtils]: 105: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,033 INFO L273 TraceCheckUtils]: 106: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,033 INFO L273 TraceCheckUtils]: 107: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,033 INFO L273 TraceCheckUtils]: 108: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,033 INFO L273 TraceCheckUtils]: 109: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,034 INFO L273 TraceCheckUtils]: 110: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,034 INFO L273 TraceCheckUtils]: 111: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,034 INFO L273 TraceCheckUtils]: 112: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,034 INFO L273 TraceCheckUtils]: 113: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,034 INFO L273 TraceCheckUtils]: 114: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,034 INFO L273 TraceCheckUtils]: 115: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,034 INFO L273 TraceCheckUtils]: 116: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,034 INFO L273 TraceCheckUtils]: 117: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,034 INFO L273 TraceCheckUtils]: 118: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,034 INFO L273 TraceCheckUtils]: 119: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,035 INFO L273 TraceCheckUtils]: 120: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,035 INFO L273 TraceCheckUtils]: 121: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,035 INFO L273 TraceCheckUtils]: 122: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,035 INFO L273 TraceCheckUtils]: 123: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,035 INFO L273 TraceCheckUtils]: 124: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,035 INFO L273 TraceCheckUtils]: 125: Hoare triple {32208#true} assume !(~i~0 < 20); {32208#true} is VALID [2018-11-23 12:17:26,035 INFO L273 TraceCheckUtils]: 126: Hoare triple {32208#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {32208#true} is VALID [2018-11-23 12:17:26,035 INFO L273 TraceCheckUtils]: 127: Hoare triple {32208#true} assume true; {32208#true} is VALID [2018-11-23 12:17:26,035 INFO L268 TraceCheckUtils]: 128: Hoare quadruple {32208#true} {32208#true} #77#return; {32208#true} is VALID [2018-11-23 12:17:26,035 INFO L273 TraceCheckUtils]: 129: Hoare triple {32208#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {32208#true} is VALID [2018-11-23 12:17:26,036 INFO L256 TraceCheckUtils]: 130: Hoare triple {32208#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {32208#true} is VALID [2018-11-23 12:17:26,036 INFO L273 TraceCheckUtils]: 131: Hoare triple {32208#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {32208#true} is VALID [2018-11-23 12:17:26,036 INFO L273 TraceCheckUtils]: 132: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,036 INFO L273 TraceCheckUtils]: 133: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,036 INFO L273 TraceCheckUtils]: 134: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,036 INFO L273 TraceCheckUtils]: 135: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,036 INFO L273 TraceCheckUtils]: 136: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,036 INFO L273 TraceCheckUtils]: 137: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,036 INFO L273 TraceCheckUtils]: 138: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,037 INFO L273 TraceCheckUtils]: 139: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,037 INFO L273 TraceCheckUtils]: 140: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,037 INFO L273 TraceCheckUtils]: 141: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,037 INFO L273 TraceCheckUtils]: 142: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,037 INFO L273 TraceCheckUtils]: 143: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,037 INFO L273 TraceCheckUtils]: 144: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,037 INFO L273 TraceCheckUtils]: 145: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,037 INFO L273 TraceCheckUtils]: 146: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,037 INFO L273 TraceCheckUtils]: 147: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,037 INFO L273 TraceCheckUtils]: 148: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,038 INFO L273 TraceCheckUtils]: 149: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,038 INFO L273 TraceCheckUtils]: 150: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,038 INFO L273 TraceCheckUtils]: 151: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,038 INFO L273 TraceCheckUtils]: 152: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,038 INFO L273 TraceCheckUtils]: 153: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,038 INFO L273 TraceCheckUtils]: 154: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,038 INFO L273 TraceCheckUtils]: 155: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,038 INFO L273 TraceCheckUtils]: 156: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,038 INFO L273 TraceCheckUtils]: 157: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,038 INFO L273 TraceCheckUtils]: 158: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,039 INFO L273 TraceCheckUtils]: 159: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,039 INFO L273 TraceCheckUtils]: 160: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,039 INFO L273 TraceCheckUtils]: 161: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,039 INFO L273 TraceCheckUtils]: 162: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,039 INFO L273 TraceCheckUtils]: 163: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,039 INFO L273 TraceCheckUtils]: 164: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,039 INFO L273 TraceCheckUtils]: 165: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,039 INFO L273 TraceCheckUtils]: 166: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,039 INFO L273 TraceCheckUtils]: 167: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,039 INFO L273 TraceCheckUtils]: 168: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,040 INFO L273 TraceCheckUtils]: 169: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,040 INFO L273 TraceCheckUtils]: 170: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,040 INFO L273 TraceCheckUtils]: 171: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,040 INFO L273 TraceCheckUtils]: 172: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,040 INFO L273 TraceCheckUtils]: 173: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,040 INFO L273 TraceCheckUtils]: 174: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,040 INFO L273 TraceCheckUtils]: 175: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,040 INFO L273 TraceCheckUtils]: 176: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,040 INFO L273 TraceCheckUtils]: 177: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,040 INFO L273 TraceCheckUtils]: 178: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,041 INFO L273 TraceCheckUtils]: 179: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,041 INFO L273 TraceCheckUtils]: 180: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,041 INFO L273 TraceCheckUtils]: 181: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,041 INFO L273 TraceCheckUtils]: 182: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,041 INFO L273 TraceCheckUtils]: 183: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,041 INFO L273 TraceCheckUtils]: 184: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,041 INFO L273 TraceCheckUtils]: 185: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,041 INFO L273 TraceCheckUtils]: 186: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,041 INFO L273 TraceCheckUtils]: 187: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,042 INFO L273 TraceCheckUtils]: 188: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,042 INFO L273 TraceCheckUtils]: 189: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,042 INFO L273 TraceCheckUtils]: 190: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,042 INFO L273 TraceCheckUtils]: 191: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,042 INFO L273 TraceCheckUtils]: 192: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,042 INFO L273 TraceCheckUtils]: 193: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,042 INFO L273 TraceCheckUtils]: 194: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,042 INFO L273 TraceCheckUtils]: 195: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,042 INFO L273 TraceCheckUtils]: 196: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,042 INFO L273 TraceCheckUtils]: 197: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,043 INFO L273 TraceCheckUtils]: 198: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,043 INFO L273 TraceCheckUtils]: 199: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,043 INFO L273 TraceCheckUtils]: 200: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,043 INFO L273 TraceCheckUtils]: 201: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,043 INFO L273 TraceCheckUtils]: 202: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,043 INFO L273 TraceCheckUtils]: 203: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,043 INFO L273 TraceCheckUtils]: 204: Hoare triple {32208#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32208#true} is VALID [2018-11-23 12:17:26,043 INFO L273 TraceCheckUtils]: 205: Hoare triple {32208#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32208#true} is VALID [2018-11-23 12:17:26,043 INFO L273 TraceCheckUtils]: 206: Hoare triple {32208#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32208#true} is VALID [2018-11-23 12:17:26,043 INFO L273 TraceCheckUtils]: 207: Hoare triple {32208#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32208#true} is VALID [2018-11-23 12:17:26,044 INFO L273 TraceCheckUtils]: 208: Hoare triple {32208#true} assume !(~i~0 < 20); {32208#true} is VALID [2018-11-23 12:17:26,044 INFO L273 TraceCheckUtils]: 209: Hoare triple {32208#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {32208#true} is VALID [2018-11-23 12:17:26,044 INFO L273 TraceCheckUtils]: 210: Hoare triple {32208#true} assume true; {32208#true} is VALID [2018-11-23 12:17:26,044 INFO L268 TraceCheckUtils]: 211: Hoare quadruple {32208#true} {32208#true} #79#return; {32208#true} is VALID [2018-11-23 12:17:26,044 INFO L273 TraceCheckUtils]: 212: Hoare triple {32208#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {32869#(<= main_~i~2 0)} is VALID [2018-11-23 12:17:26,045 INFO L273 TraceCheckUtils]: 213: Hoare triple {32869#(<= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {32869#(<= main_~i~2 0)} is VALID [2018-11-23 12:17:26,045 INFO L273 TraceCheckUtils]: 214: Hoare triple {32869#(<= main_~i~2 0)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {32876#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:26,046 INFO L273 TraceCheckUtils]: 215: Hoare triple {32876#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {32876#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:26,046 INFO L273 TraceCheckUtils]: 216: Hoare triple {32876#(<= main_~i~2 1)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {32883#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:26,046 INFO L273 TraceCheckUtils]: 217: Hoare triple {32883#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {32883#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:26,047 INFO L273 TraceCheckUtils]: 218: Hoare triple {32883#(<= main_~i~2 2)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {32890#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:26,047 INFO L273 TraceCheckUtils]: 219: Hoare triple {32890#(<= main_~i~2 3)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {32890#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:26,048 INFO L273 TraceCheckUtils]: 220: Hoare triple {32890#(<= main_~i~2 3)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {32897#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:26,048 INFO L273 TraceCheckUtils]: 221: Hoare triple {32897#(<= main_~i~2 4)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {32897#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:26,049 INFO L273 TraceCheckUtils]: 222: Hoare triple {32897#(<= main_~i~2 4)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {32904#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:26,050 INFO L273 TraceCheckUtils]: 223: Hoare triple {32904#(<= main_~i~2 5)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {32904#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:26,050 INFO L273 TraceCheckUtils]: 224: Hoare triple {32904#(<= main_~i~2 5)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {32911#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:26,051 INFO L273 TraceCheckUtils]: 225: Hoare triple {32911#(<= main_~i~2 6)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {32911#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:26,052 INFO L273 TraceCheckUtils]: 226: Hoare triple {32911#(<= main_~i~2 6)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {32918#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:26,052 INFO L273 TraceCheckUtils]: 227: Hoare triple {32918#(<= main_~i~2 7)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {32918#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:26,053 INFO L273 TraceCheckUtils]: 228: Hoare triple {32918#(<= main_~i~2 7)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {32925#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:26,053 INFO L273 TraceCheckUtils]: 229: Hoare triple {32925#(<= main_~i~2 8)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {32925#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:26,055 INFO L273 TraceCheckUtils]: 230: Hoare triple {32925#(<= main_~i~2 8)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {32932#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:26,056 INFO L273 TraceCheckUtils]: 231: Hoare triple {32932#(<= main_~i~2 9)} assume !(~i~2 < 19); {32209#false} is VALID [2018-11-23 12:17:26,056 INFO L273 TraceCheckUtils]: 232: Hoare triple {32209#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {32209#false} is VALID [2018-11-23 12:17:26,056 INFO L256 TraceCheckUtils]: 233: Hoare triple {32209#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {32209#false} is VALID [2018-11-23 12:17:26,056 INFO L273 TraceCheckUtils]: 234: Hoare triple {32209#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {32209#false} is VALID [2018-11-23 12:17:26,057 INFO L273 TraceCheckUtils]: 235: Hoare triple {32209#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32209#false} is VALID [2018-11-23 12:17:26,057 INFO L273 TraceCheckUtils]: 236: Hoare triple {32209#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32209#false} is VALID [2018-11-23 12:17:26,057 INFO L273 TraceCheckUtils]: 237: Hoare triple {32209#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32209#false} is VALID [2018-11-23 12:17:26,057 INFO L273 TraceCheckUtils]: 238: Hoare triple {32209#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32209#false} is VALID [2018-11-23 12:17:26,057 INFO L273 TraceCheckUtils]: 239: Hoare triple {32209#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32209#false} is VALID [2018-11-23 12:17:26,058 INFO L273 TraceCheckUtils]: 240: Hoare triple {32209#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32209#false} is VALID [2018-11-23 12:17:26,058 INFO L273 TraceCheckUtils]: 241: Hoare triple {32209#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32209#false} is VALID [2018-11-23 12:17:26,058 INFO L273 TraceCheckUtils]: 242: Hoare triple {32209#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32209#false} is VALID [2018-11-23 12:17:26,058 INFO L273 TraceCheckUtils]: 243: Hoare triple {32209#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32209#false} is VALID [2018-11-23 12:17:26,058 INFO L273 TraceCheckUtils]: 244: Hoare triple {32209#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32209#false} is VALID [2018-11-23 12:17:26,058 INFO L273 TraceCheckUtils]: 245: Hoare triple {32209#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32209#false} is VALID [2018-11-23 12:17:26,059 INFO L273 TraceCheckUtils]: 246: Hoare triple {32209#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32209#false} is VALID [2018-11-23 12:17:26,059 INFO L273 TraceCheckUtils]: 247: Hoare triple {32209#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32209#false} is VALID [2018-11-23 12:17:26,059 INFO L273 TraceCheckUtils]: 248: Hoare triple {32209#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32209#false} is VALID [2018-11-23 12:17:26,059 INFO L273 TraceCheckUtils]: 249: Hoare triple {32209#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32209#false} is VALID [2018-11-23 12:17:26,059 INFO L273 TraceCheckUtils]: 250: Hoare triple {32209#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32209#false} is VALID [2018-11-23 12:17:26,059 INFO L273 TraceCheckUtils]: 251: Hoare triple {32209#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32209#false} is VALID [2018-11-23 12:17:26,059 INFO L273 TraceCheckUtils]: 252: Hoare triple {32209#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32209#false} is VALID [2018-11-23 12:17:26,059 INFO L273 TraceCheckUtils]: 253: Hoare triple {32209#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32209#false} is VALID [2018-11-23 12:17:26,060 INFO L273 TraceCheckUtils]: 254: Hoare triple {32209#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32209#false} is VALID [2018-11-23 12:17:26,060 INFO L273 TraceCheckUtils]: 255: Hoare triple {32209#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32209#false} is VALID [2018-11-23 12:17:26,060 INFO L273 TraceCheckUtils]: 256: Hoare triple {32209#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32209#false} is VALID [2018-11-23 12:17:26,060 INFO L273 TraceCheckUtils]: 257: Hoare triple {32209#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32209#false} is VALID [2018-11-23 12:17:26,060 INFO L273 TraceCheckUtils]: 258: Hoare triple {32209#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32209#false} is VALID [2018-11-23 12:17:26,060 INFO L273 TraceCheckUtils]: 259: Hoare triple {32209#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32209#false} is VALID [2018-11-23 12:17:26,060 INFO L273 TraceCheckUtils]: 260: Hoare triple {32209#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32209#false} is VALID [2018-11-23 12:17:26,060 INFO L273 TraceCheckUtils]: 261: Hoare triple {32209#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32209#false} is VALID [2018-11-23 12:17:26,060 INFO L273 TraceCheckUtils]: 262: Hoare triple {32209#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32209#false} is VALID [2018-11-23 12:17:26,060 INFO L273 TraceCheckUtils]: 263: Hoare triple {32209#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32209#false} is VALID [2018-11-23 12:17:26,061 INFO L273 TraceCheckUtils]: 264: Hoare triple {32209#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32209#false} is VALID [2018-11-23 12:17:26,061 INFO L273 TraceCheckUtils]: 265: Hoare triple {32209#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32209#false} is VALID [2018-11-23 12:17:26,061 INFO L273 TraceCheckUtils]: 266: Hoare triple {32209#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32209#false} is VALID [2018-11-23 12:17:26,061 INFO L273 TraceCheckUtils]: 267: Hoare triple {32209#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32209#false} is VALID [2018-11-23 12:17:26,061 INFO L273 TraceCheckUtils]: 268: Hoare triple {32209#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32209#false} is VALID [2018-11-23 12:17:26,061 INFO L273 TraceCheckUtils]: 269: Hoare triple {32209#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32209#false} is VALID [2018-11-23 12:17:26,061 INFO L273 TraceCheckUtils]: 270: Hoare triple {32209#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32209#false} is VALID [2018-11-23 12:17:26,061 INFO L273 TraceCheckUtils]: 271: Hoare triple {32209#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32209#false} is VALID [2018-11-23 12:17:26,061 INFO L273 TraceCheckUtils]: 272: Hoare triple {32209#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32209#false} is VALID [2018-11-23 12:17:26,062 INFO L273 TraceCheckUtils]: 273: Hoare triple {32209#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32209#false} is VALID [2018-11-23 12:17:26,062 INFO L273 TraceCheckUtils]: 274: Hoare triple {32209#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32209#false} is VALID [2018-11-23 12:17:26,062 INFO L273 TraceCheckUtils]: 275: Hoare triple {32209#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32209#false} is VALID [2018-11-23 12:17:26,062 INFO L273 TraceCheckUtils]: 276: Hoare triple {32209#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32209#false} is VALID [2018-11-23 12:17:26,062 INFO L273 TraceCheckUtils]: 277: Hoare triple {32209#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32209#false} is VALID [2018-11-23 12:17:26,062 INFO L273 TraceCheckUtils]: 278: Hoare triple {32209#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32209#false} is VALID [2018-11-23 12:17:26,062 INFO L273 TraceCheckUtils]: 279: Hoare triple {32209#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32209#false} is VALID [2018-11-23 12:17:26,062 INFO L273 TraceCheckUtils]: 280: Hoare triple {32209#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32209#false} is VALID [2018-11-23 12:17:26,062 INFO L273 TraceCheckUtils]: 281: Hoare triple {32209#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32209#false} is VALID [2018-11-23 12:17:26,062 INFO L273 TraceCheckUtils]: 282: Hoare triple {32209#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32209#false} is VALID [2018-11-23 12:17:26,063 INFO L273 TraceCheckUtils]: 283: Hoare triple {32209#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32209#false} is VALID [2018-11-23 12:17:26,063 INFO L273 TraceCheckUtils]: 284: Hoare triple {32209#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32209#false} is VALID [2018-11-23 12:17:26,063 INFO L273 TraceCheckUtils]: 285: Hoare triple {32209#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32209#false} is VALID [2018-11-23 12:17:26,063 INFO L273 TraceCheckUtils]: 286: Hoare triple {32209#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32209#false} is VALID [2018-11-23 12:17:26,063 INFO L273 TraceCheckUtils]: 287: Hoare triple {32209#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32209#false} is VALID [2018-11-23 12:17:26,063 INFO L273 TraceCheckUtils]: 288: Hoare triple {32209#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32209#false} is VALID [2018-11-23 12:17:26,063 INFO L273 TraceCheckUtils]: 289: Hoare triple {32209#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32209#false} is VALID [2018-11-23 12:17:26,063 INFO L273 TraceCheckUtils]: 290: Hoare triple {32209#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32209#false} is VALID [2018-11-23 12:17:26,063 INFO L273 TraceCheckUtils]: 291: Hoare triple {32209#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32209#false} is VALID [2018-11-23 12:17:26,064 INFO L273 TraceCheckUtils]: 292: Hoare triple {32209#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32209#false} is VALID [2018-11-23 12:17:26,064 INFO L273 TraceCheckUtils]: 293: Hoare triple {32209#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32209#false} is VALID [2018-11-23 12:17:26,064 INFO L273 TraceCheckUtils]: 294: Hoare triple {32209#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32209#false} is VALID [2018-11-23 12:17:26,064 INFO L273 TraceCheckUtils]: 295: Hoare triple {32209#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32209#false} is VALID [2018-11-23 12:17:26,064 INFO L273 TraceCheckUtils]: 296: Hoare triple {32209#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32209#false} is VALID [2018-11-23 12:17:26,064 INFO L273 TraceCheckUtils]: 297: Hoare triple {32209#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32209#false} is VALID [2018-11-23 12:17:26,064 INFO L273 TraceCheckUtils]: 298: Hoare triple {32209#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32209#false} is VALID [2018-11-23 12:17:26,064 INFO L273 TraceCheckUtils]: 299: Hoare triple {32209#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32209#false} is VALID [2018-11-23 12:17:26,064 INFO L273 TraceCheckUtils]: 300: Hoare triple {32209#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32209#false} is VALID [2018-11-23 12:17:26,064 INFO L273 TraceCheckUtils]: 301: Hoare triple {32209#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32209#false} is VALID [2018-11-23 12:17:26,065 INFO L273 TraceCheckUtils]: 302: Hoare triple {32209#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32209#false} is VALID [2018-11-23 12:17:26,065 INFO L273 TraceCheckUtils]: 303: Hoare triple {32209#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32209#false} is VALID [2018-11-23 12:17:26,065 INFO L273 TraceCheckUtils]: 304: Hoare triple {32209#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32209#false} is VALID [2018-11-23 12:17:26,065 INFO L273 TraceCheckUtils]: 305: Hoare triple {32209#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32209#false} is VALID [2018-11-23 12:17:26,065 INFO L273 TraceCheckUtils]: 306: Hoare triple {32209#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32209#false} is VALID [2018-11-23 12:17:26,065 INFO L273 TraceCheckUtils]: 307: Hoare triple {32209#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {32209#false} is VALID [2018-11-23 12:17:26,065 INFO L273 TraceCheckUtils]: 308: Hoare triple {32209#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {32209#false} is VALID [2018-11-23 12:17:26,065 INFO L273 TraceCheckUtils]: 309: Hoare triple {32209#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {32209#false} is VALID [2018-11-23 12:17:26,065 INFO L273 TraceCheckUtils]: 310: Hoare triple {32209#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {32209#false} is VALID [2018-11-23 12:17:26,065 INFO L273 TraceCheckUtils]: 311: Hoare triple {32209#false} assume !(~i~0 < 20); {32209#false} is VALID [2018-11-23 12:17:26,066 INFO L273 TraceCheckUtils]: 312: Hoare triple {32209#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {32209#false} is VALID [2018-11-23 12:17:26,066 INFO L273 TraceCheckUtils]: 313: Hoare triple {32209#false} assume true; {32209#false} is VALID [2018-11-23 12:17:26,066 INFO L268 TraceCheckUtils]: 314: Hoare quadruple {32209#false} {32209#false} #81#return; {32209#false} is VALID [2018-11-23 12:17:26,066 INFO L273 TraceCheckUtils]: 315: Hoare triple {32209#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {32209#false} is VALID [2018-11-23 12:17:26,066 INFO L273 TraceCheckUtils]: 316: Hoare triple {32209#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {32209#false} is VALID [2018-11-23 12:17:26,066 INFO L273 TraceCheckUtils]: 317: Hoare triple {32209#false} assume !false; {32209#false} is VALID [2018-11-23 12:17:26,099 INFO L134 CoverageAnalysis]: Checked inductivity of 7051 backedges. 2974 proven. 81 refuted. 0 times theorem prover too weak. 3996 trivial. 0 not checked. [2018-11-23 12:17:26,119 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:17:26,120 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [22, 12] total 32 [2018-11-23 12:17:26,120 INFO L78 Accepts]: Start accepts. Automaton has 32 states. Word has length 318 [2018-11-23 12:17:26,120 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:17:26,121 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 32 states. [2018-11-23 12:17:26,259 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 144 edges. 144 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:17:26,259 INFO L459 AbstractCegarLoop]: Interpolant automaton has 32 states [2018-11-23 12:17:26,259 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 32 interpolants. [2018-11-23 12:17:26,260 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=296, Invalid=696, Unknown=0, NotChecked=0, Total=992 [2018-11-23 12:17:26,260 INFO L87 Difference]: Start difference. First operand 157 states and 180 transitions. Second operand 32 states. [2018-11-23 12:17:27,269 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:27,269 INFO L93 Difference]: Finished difference Result 273 states and 323 transitions. [2018-11-23 12:17:27,269 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 32 states. [2018-11-23 12:17:27,269 INFO L78 Accepts]: Start accepts. Automaton has 32 states. Word has length 318 [2018-11-23 12:17:27,269 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:17:27,269 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 32 states. [2018-11-23 12:17:27,271 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 176 transitions. [2018-11-23 12:17:27,271 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 32 states. [2018-11-23 12:17:27,272 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 176 transitions. [2018-11-23 12:17:27,272 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 32 states and 176 transitions. [2018-11-23 12:17:27,631 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:17:27,635 INFO L225 Difference]: With dead ends: 273 [2018-11-23 12:17:27,635 INFO L226 Difference]: Without dead ends: 164 [2018-11-23 12:17:27,636 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 339 GetRequests, 309 SyntacticMatches, 0 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 190 ImplicationChecksByTransitivity, 1.4s TimeCoverageRelationStatistics Valid=296, Invalid=696, Unknown=0, NotChecked=0, Total=992 [2018-11-23 12:17:27,636 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 164 states. [2018-11-23 12:17:27,679 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 164 to 163. [2018-11-23 12:17:27,679 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:17:27,679 INFO L82 GeneralOperation]: Start isEquivalent. First operand 164 states. Second operand 163 states. [2018-11-23 12:17:27,679 INFO L74 IsIncluded]: Start isIncluded. First operand 164 states. Second operand 163 states. [2018-11-23 12:17:27,680 INFO L87 Difference]: Start difference. First operand 164 states. Second operand 163 states. [2018-11-23 12:17:27,682 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:27,683 INFO L93 Difference]: Finished difference Result 164 states and 188 transitions. [2018-11-23 12:17:27,683 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 188 transitions. [2018-11-23 12:17:27,683 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:27,683 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:27,683 INFO L74 IsIncluded]: Start isIncluded. First operand 163 states. Second operand 164 states. [2018-11-23 12:17:27,683 INFO L87 Difference]: Start difference. First operand 163 states. Second operand 164 states. [2018-11-23 12:17:27,686 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:27,686 INFO L93 Difference]: Finished difference Result 164 states and 188 transitions. [2018-11-23 12:17:27,686 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 188 transitions. [2018-11-23 12:17:27,687 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:27,687 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:27,687 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:17:27,687 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:17:27,687 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 163 states. [2018-11-23 12:17:27,689 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 163 states to 163 states and 187 transitions. [2018-11-23 12:17:27,689 INFO L78 Accepts]: Start accepts. Automaton has 163 states and 187 transitions. Word has length 318 [2018-11-23 12:17:27,689 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:17:27,689 INFO L480 AbstractCegarLoop]: Abstraction has 163 states and 187 transitions. [2018-11-23 12:17:27,689 INFO L481 AbstractCegarLoop]: Interpolant automaton has 32 states. [2018-11-23 12:17:27,689 INFO L276 IsEmpty]: Start isEmpty. Operand 163 states and 187 transitions. [2018-11-23 12:17:27,691 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 333 [2018-11-23 12:17:27,691 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:17:27,691 INFO L402 BasicCegarLoop]: trace histogram [60, 60, 60, 60, 20, 20, 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] [2018-11-23 12:17:27,692 INFO L423 AbstractCegarLoop]: === Iteration 37 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:17:27,692 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:17:27,692 INFO L82 PathProgramCache]: Analyzing trace with hash 571684475, now seen corresponding path program 34 times [2018-11-23 12:17:27,692 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:17:27,692 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:17:27,693 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:27,693 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:17:27,693 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:27,750 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:28,114 INFO L256 TraceCheckUtils]: 0: Hoare triple {34112#true} call ULTIMATE.init(); {34112#true} is VALID [2018-11-23 12:17:28,115 INFO L273 TraceCheckUtils]: 1: Hoare triple {34112#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {34112#true} is VALID [2018-11-23 12:17:28,115 INFO L273 TraceCheckUtils]: 2: Hoare triple {34112#true} assume true; {34112#true} is VALID [2018-11-23 12:17:28,115 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {34112#true} {34112#true} #73#return; {34112#true} is VALID [2018-11-23 12:17:28,115 INFO L256 TraceCheckUtils]: 4: Hoare triple {34112#true} call #t~ret14 := main(); {34112#true} is VALID [2018-11-23 12:17:28,115 INFO L273 TraceCheckUtils]: 5: Hoare triple {34112#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {34112#true} is VALID [2018-11-23 12:17:28,115 INFO L273 TraceCheckUtils]: 6: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,115 INFO L273 TraceCheckUtils]: 7: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,115 INFO L273 TraceCheckUtils]: 8: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,116 INFO L273 TraceCheckUtils]: 9: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,116 INFO L273 TraceCheckUtils]: 10: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,116 INFO L273 TraceCheckUtils]: 11: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,116 INFO L273 TraceCheckUtils]: 12: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,116 INFO L273 TraceCheckUtils]: 13: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,116 INFO L273 TraceCheckUtils]: 14: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,116 INFO L273 TraceCheckUtils]: 15: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,116 INFO L273 TraceCheckUtils]: 16: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,116 INFO L273 TraceCheckUtils]: 17: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,116 INFO L273 TraceCheckUtils]: 18: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,117 INFO L273 TraceCheckUtils]: 19: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,117 INFO L273 TraceCheckUtils]: 20: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,117 INFO L273 TraceCheckUtils]: 21: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,117 INFO L273 TraceCheckUtils]: 22: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,117 INFO L273 TraceCheckUtils]: 23: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,117 INFO L273 TraceCheckUtils]: 24: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,117 INFO L273 TraceCheckUtils]: 25: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,117 INFO L273 TraceCheckUtils]: 26: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,117 INFO L273 TraceCheckUtils]: 27: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,117 INFO L273 TraceCheckUtils]: 28: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,118 INFO L273 TraceCheckUtils]: 29: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,118 INFO L273 TraceCheckUtils]: 30: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,118 INFO L273 TraceCheckUtils]: 31: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,118 INFO L273 TraceCheckUtils]: 32: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,118 INFO L273 TraceCheckUtils]: 33: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,118 INFO L273 TraceCheckUtils]: 34: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,118 INFO L273 TraceCheckUtils]: 35: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,118 INFO L273 TraceCheckUtils]: 36: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,118 INFO L273 TraceCheckUtils]: 37: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,119 INFO L273 TraceCheckUtils]: 38: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,119 INFO L273 TraceCheckUtils]: 39: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,119 INFO L273 TraceCheckUtils]: 40: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,119 INFO L273 TraceCheckUtils]: 41: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,119 INFO L273 TraceCheckUtils]: 42: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,119 INFO L273 TraceCheckUtils]: 43: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,119 INFO L273 TraceCheckUtils]: 44: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,119 INFO L273 TraceCheckUtils]: 45: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,119 INFO L273 TraceCheckUtils]: 46: Hoare triple {34112#true} assume !(~i~1 < 20); {34112#true} is VALID [2018-11-23 12:17:28,119 INFO L256 TraceCheckUtils]: 47: Hoare triple {34112#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {34112#true} is VALID [2018-11-23 12:17:28,120 INFO L273 TraceCheckUtils]: 48: Hoare triple {34112#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {34112#true} is VALID [2018-11-23 12:17:28,120 INFO L273 TraceCheckUtils]: 49: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,120 INFO L273 TraceCheckUtils]: 50: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,120 INFO L273 TraceCheckUtils]: 51: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,120 INFO L273 TraceCheckUtils]: 52: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,120 INFO L273 TraceCheckUtils]: 53: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,120 INFO L273 TraceCheckUtils]: 54: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,120 INFO L273 TraceCheckUtils]: 55: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,120 INFO L273 TraceCheckUtils]: 56: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,121 INFO L273 TraceCheckUtils]: 57: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,121 INFO L273 TraceCheckUtils]: 58: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,121 INFO L273 TraceCheckUtils]: 59: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,121 INFO L273 TraceCheckUtils]: 60: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,121 INFO L273 TraceCheckUtils]: 61: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,121 INFO L273 TraceCheckUtils]: 62: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,121 INFO L273 TraceCheckUtils]: 63: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,121 INFO L273 TraceCheckUtils]: 64: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,121 INFO L273 TraceCheckUtils]: 65: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,121 INFO L273 TraceCheckUtils]: 66: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,122 INFO L273 TraceCheckUtils]: 67: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,122 INFO L273 TraceCheckUtils]: 68: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,122 INFO L273 TraceCheckUtils]: 69: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,122 INFO L273 TraceCheckUtils]: 70: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,122 INFO L273 TraceCheckUtils]: 71: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,122 INFO L273 TraceCheckUtils]: 72: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,122 INFO L273 TraceCheckUtils]: 73: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,122 INFO L273 TraceCheckUtils]: 74: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,122 INFO L273 TraceCheckUtils]: 75: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,122 INFO L273 TraceCheckUtils]: 76: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,123 INFO L273 TraceCheckUtils]: 77: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,123 INFO L273 TraceCheckUtils]: 78: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,123 INFO L273 TraceCheckUtils]: 79: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,123 INFO L273 TraceCheckUtils]: 80: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,123 INFO L273 TraceCheckUtils]: 81: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,123 INFO L273 TraceCheckUtils]: 82: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,123 INFO L273 TraceCheckUtils]: 83: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,123 INFO L273 TraceCheckUtils]: 84: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,123 INFO L273 TraceCheckUtils]: 85: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,123 INFO L273 TraceCheckUtils]: 86: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,124 INFO L273 TraceCheckUtils]: 87: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,124 INFO L273 TraceCheckUtils]: 88: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,124 INFO L273 TraceCheckUtils]: 89: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,124 INFO L273 TraceCheckUtils]: 90: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,124 INFO L273 TraceCheckUtils]: 91: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,124 INFO L273 TraceCheckUtils]: 92: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,124 INFO L273 TraceCheckUtils]: 93: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,124 INFO L273 TraceCheckUtils]: 94: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,124 INFO L273 TraceCheckUtils]: 95: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,125 INFO L273 TraceCheckUtils]: 96: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,125 INFO L273 TraceCheckUtils]: 97: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,125 INFO L273 TraceCheckUtils]: 98: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,125 INFO L273 TraceCheckUtils]: 99: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,125 INFO L273 TraceCheckUtils]: 100: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,125 INFO L273 TraceCheckUtils]: 101: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,125 INFO L273 TraceCheckUtils]: 102: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,125 INFO L273 TraceCheckUtils]: 103: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,125 INFO L273 TraceCheckUtils]: 104: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,125 INFO L273 TraceCheckUtils]: 105: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,126 INFO L273 TraceCheckUtils]: 106: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,126 INFO L273 TraceCheckUtils]: 107: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,126 INFO L273 TraceCheckUtils]: 108: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,126 INFO L273 TraceCheckUtils]: 109: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,126 INFO L273 TraceCheckUtils]: 110: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,126 INFO L273 TraceCheckUtils]: 111: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,126 INFO L273 TraceCheckUtils]: 112: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,126 INFO L273 TraceCheckUtils]: 113: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,126 INFO L273 TraceCheckUtils]: 114: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,126 INFO L273 TraceCheckUtils]: 115: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,127 INFO L273 TraceCheckUtils]: 116: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,127 INFO L273 TraceCheckUtils]: 117: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,127 INFO L273 TraceCheckUtils]: 118: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,127 INFO L273 TraceCheckUtils]: 119: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,127 INFO L273 TraceCheckUtils]: 120: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,127 INFO L273 TraceCheckUtils]: 121: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,127 INFO L273 TraceCheckUtils]: 122: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,127 INFO L273 TraceCheckUtils]: 123: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,127 INFO L273 TraceCheckUtils]: 124: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,128 INFO L273 TraceCheckUtils]: 125: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,128 INFO L273 TraceCheckUtils]: 126: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,128 INFO L273 TraceCheckUtils]: 127: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,128 INFO L273 TraceCheckUtils]: 128: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,128 INFO L273 TraceCheckUtils]: 129: Hoare triple {34112#true} assume !(~i~0 < 20); {34112#true} is VALID [2018-11-23 12:17:28,128 INFO L273 TraceCheckUtils]: 130: Hoare triple {34112#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {34112#true} is VALID [2018-11-23 12:17:28,128 INFO L273 TraceCheckUtils]: 131: Hoare triple {34112#true} assume true; {34112#true} is VALID [2018-11-23 12:17:28,128 INFO L268 TraceCheckUtils]: 132: Hoare quadruple {34112#true} {34112#true} #77#return; {34112#true} is VALID [2018-11-23 12:17:28,128 INFO L273 TraceCheckUtils]: 133: Hoare triple {34112#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {34112#true} is VALID [2018-11-23 12:17:28,128 INFO L256 TraceCheckUtils]: 134: Hoare triple {34112#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {34112#true} is VALID [2018-11-23 12:17:28,129 INFO L273 TraceCheckUtils]: 135: Hoare triple {34112#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {34112#true} is VALID [2018-11-23 12:17:28,129 INFO L273 TraceCheckUtils]: 136: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,129 INFO L273 TraceCheckUtils]: 137: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,129 INFO L273 TraceCheckUtils]: 138: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,129 INFO L273 TraceCheckUtils]: 139: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,129 INFO L273 TraceCheckUtils]: 140: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,129 INFO L273 TraceCheckUtils]: 141: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,129 INFO L273 TraceCheckUtils]: 142: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,129 INFO L273 TraceCheckUtils]: 143: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,129 INFO L273 TraceCheckUtils]: 144: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,130 INFO L273 TraceCheckUtils]: 145: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,130 INFO L273 TraceCheckUtils]: 146: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,130 INFO L273 TraceCheckUtils]: 147: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,130 INFO L273 TraceCheckUtils]: 148: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,130 INFO L273 TraceCheckUtils]: 149: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,130 INFO L273 TraceCheckUtils]: 150: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,130 INFO L273 TraceCheckUtils]: 151: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,130 INFO L273 TraceCheckUtils]: 152: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,130 INFO L273 TraceCheckUtils]: 153: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,130 INFO L273 TraceCheckUtils]: 154: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,131 INFO L273 TraceCheckUtils]: 155: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,131 INFO L273 TraceCheckUtils]: 156: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,131 INFO L273 TraceCheckUtils]: 157: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,131 INFO L273 TraceCheckUtils]: 158: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,131 INFO L273 TraceCheckUtils]: 159: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,131 INFO L273 TraceCheckUtils]: 160: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,131 INFO L273 TraceCheckUtils]: 161: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,131 INFO L273 TraceCheckUtils]: 162: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,131 INFO L273 TraceCheckUtils]: 163: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,132 INFO L273 TraceCheckUtils]: 164: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,132 INFO L273 TraceCheckUtils]: 165: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,132 INFO L273 TraceCheckUtils]: 166: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,132 INFO L273 TraceCheckUtils]: 167: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,132 INFO L273 TraceCheckUtils]: 168: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,132 INFO L273 TraceCheckUtils]: 169: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,132 INFO L273 TraceCheckUtils]: 170: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,132 INFO L273 TraceCheckUtils]: 171: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,132 INFO L273 TraceCheckUtils]: 172: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,132 INFO L273 TraceCheckUtils]: 173: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,133 INFO L273 TraceCheckUtils]: 174: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,133 INFO L273 TraceCheckUtils]: 175: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,133 INFO L273 TraceCheckUtils]: 176: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,133 INFO L273 TraceCheckUtils]: 177: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,133 INFO L273 TraceCheckUtils]: 178: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,133 INFO L273 TraceCheckUtils]: 179: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,133 INFO L273 TraceCheckUtils]: 180: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,133 INFO L273 TraceCheckUtils]: 181: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,133 INFO L273 TraceCheckUtils]: 182: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,134 INFO L273 TraceCheckUtils]: 183: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,134 INFO L273 TraceCheckUtils]: 184: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,134 INFO L273 TraceCheckUtils]: 185: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,134 INFO L273 TraceCheckUtils]: 186: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,134 INFO L273 TraceCheckUtils]: 187: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,134 INFO L273 TraceCheckUtils]: 188: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,134 INFO L273 TraceCheckUtils]: 189: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,134 INFO L273 TraceCheckUtils]: 190: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,134 INFO L273 TraceCheckUtils]: 191: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,134 INFO L273 TraceCheckUtils]: 192: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,135 INFO L273 TraceCheckUtils]: 193: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,135 INFO L273 TraceCheckUtils]: 194: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,135 INFO L273 TraceCheckUtils]: 195: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,135 INFO L273 TraceCheckUtils]: 196: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,135 INFO L273 TraceCheckUtils]: 197: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,135 INFO L273 TraceCheckUtils]: 198: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,135 INFO L273 TraceCheckUtils]: 199: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,135 INFO L273 TraceCheckUtils]: 200: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,135 INFO L273 TraceCheckUtils]: 201: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,135 INFO L273 TraceCheckUtils]: 202: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,136 INFO L273 TraceCheckUtils]: 203: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,136 INFO L273 TraceCheckUtils]: 204: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,136 INFO L273 TraceCheckUtils]: 205: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,136 INFO L273 TraceCheckUtils]: 206: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,136 INFO L273 TraceCheckUtils]: 207: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,136 INFO L273 TraceCheckUtils]: 208: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,136 INFO L273 TraceCheckUtils]: 209: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,136 INFO L273 TraceCheckUtils]: 210: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,136 INFO L273 TraceCheckUtils]: 211: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,136 INFO L273 TraceCheckUtils]: 212: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,137 INFO L273 TraceCheckUtils]: 213: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,137 INFO L273 TraceCheckUtils]: 214: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,137 INFO L273 TraceCheckUtils]: 215: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,137 INFO L273 TraceCheckUtils]: 216: Hoare triple {34112#true} assume !(~i~0 < 20); {34112#true} is VALID [2018-11-23 12:17:28,137 INFO L273 TraceCheckUtils]: 217: Hoare triple {34112#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {34112#true} is VALID [2018-11-23 12:17:28,137 INFO L273 TraceCheckUtils]: 218: Hoare triple {34112#true} assume true; {34112#true} is VALID [2018-11-23 12:17:28,137 INFO L268 TraceCheckUtils]: 219: Hoare quadruple {34112#true} {34112#true} #79#return; {34112#true} is VALID [2018-11-23 12:17:28,138 INFO L273 TraceCheckUtils]: 220: Hoare triple {34112#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {34114#(= main_~i~2 0)} is VALID [2018-11-23 12:17:28,138 INFO L273 TraceCheckUtils]: 221: Hoare triple {34114#(= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {34114#(= main_~i~2 0)} is VALID [2018-11-23 12:17:28,138 INFO L273 TraceCheckUtils]: 222: Hoare triple {34114#(= main_~i~2 0)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {34115#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:28,139 INFO L273 TraceCheckUtils]: 223: Hoare triple {34115#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {34115#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:28,139 INFO L273 TraceCheckUtils]: 224: Hoare triple {34115#(<= main_~i~2 1)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {34116#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:28,139 INFO L273 TraceCheckUtils]: 225: Hoare triple {34116#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {34116#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:28,140 INFO L273 TraceCheckUtils]: 226: Hoare triple {34116#(<= main_~i~2 2)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {34117#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:28,140 INFO L273 TraceCheckUtils]: 227: Hoare triple {34117#(<= main_~i~2 3)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {34117#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:28,141 INFO L273 TraceCheckUtils]: 228: Hoare triple {34117#(<= main_~i~2 3)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {34118#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:28,141 INFO L273 TraceCheckUtils]: 229: Hoare triple {34118#(<= main_~i~2 4)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {34118#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:28,142 INFO L273 TraceCheckUtils]: 230: Hoare triple {34118#(<= main_~i~2 4)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {34119#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:28,142 INFO L273 TraceCheckUtils]: 231: Hoare triple {34119#(<= main_~i~2 5)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {34119#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:28,143 INFO L273 TraceCheckUtils]: 232: Hoare triple {34119#(<= main_~i~2 5)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {34120#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:28,143 INFO L273 TraceCheckUtils]: 233: Hoare triple {34120#(<= main_~i~2 6)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {34120#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:28,144 INFO L273 TraceCheckUtils]: 234: Hoare triple {34120#(<= main_~i~2 6)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {34121#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:28,145 INFO L273 TraceCheckUtils]: 235: Hoare triple {34121#(<= main_~i~2 7)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {34121#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:28,145 INFO L273 TraceCheckUtils]: 236: Hoare triple {34121#(<= main_~i~2 7)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {34122#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:28,146 INFO L273 TraceCheckUtils]: 237: Hoare triple {34122#(<= main_~i~2 8)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {34122#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:28,146 INFO L273 TraceCheckUtils]: 238: Hoare triple {34122#(<= main_~i~2 8)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {34123#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:28,147 INFO L273 TraceCheckUtils]: 239: Hoare triple {34123#(<= main_~i~2 9)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {34123#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:28,148 INFO L273 TraceCheckUtils]: 240: Hoare triple {34123#(<= main_~i~2 9)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {34124#(<= main_~i~2 10)} is VALID [2018-11-23 12:17:28,148 INFO L273 TraceCheckUtils]: 241: Hoare triple {34124#(<= main_~i~2 10)} assume !(~i~2 < 19); {34113#false} is VALID [2018-11-23 12:17:28,149 INFO L273 TraceCheckUtils]: 242: Hoare triple {34113#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {34113#false} is VALID [2018-11-23 12:17:28,149 INFO L256 TraceCheckUtils]: 243: Hoare triple {34113#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {34112#true} is VALID [2018-11-23 12:17:28,149 INFO L273 TraceCheckUtils]: 244: Hoare triple {34112#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {34112#true} is VALID [2018-11-23 12:17:28,149 INFO L273 TraceCheckUtils]: 245: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,149 INFO L273 TraceCheckUtils]: 246: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,149 INFO L273 TraceCheckUtils]: 247: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,150 INFO L273 TraceCheckUtils]: 248: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,150 INFO L273 TraceCheckUtils]: 249: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,150 INFO L273 TraceCheckUtils]: 250: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,150 INFO L273 TraceCheckUtils]: 251: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,150 INFO L273 TraceCheckUtils]: 252: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,151 INFO L273 TraceCheckUtils]: 253: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,151 INFO L273 TraceCheckUtils]: 254: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,151 INFO L273 TraceCheckUtils]: 255: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,151 INFO L273 TraceCheckUtils]: 256: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,151 INFO L273 TraceCheckUtils]: 257: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,151 INFO L273 TraceCheckUtils]: 258: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,152 INFO L273 TraceCheckUtils]: 259: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,152 INFO L273 TraceCheckUtils]: 260: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,152 INFO L273 TraceCheckUtils]: 261: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,152 INFO L273 TraceCheckUtils]: 262: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,152 INFO L273 TraceCheckUtils]: 263: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,152 INFO L273 TraceCheckUtils]: 264: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,153 INFO L273 TraceCheckUtils]: 265: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,153 INFO L273 TraceCheckUtils]: 266: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,153 INFO L273 TraceCheckUtils]: 267: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,153 INFO L273 TraceCheckUtils]: 268: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,153 INFO L273 TraceCheckUtils]: 269: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,153 INFO L273 TraceCheckUtils]: 270: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,153 INFO L273 TraceCheckUtils]: 271: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,153 INFO L273 TraceCheckUtils]: 272: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,154 INFO L273 TraceCheckUtils]: 273: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,154 INFO L273 TraceCheckUtils]: 274: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,154 INFO L273 TraceCheckUtils]: 275: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,154 INFO L273 TraceCheckUtils]: 276: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,154 INFO L273 TraceCheckUtils]: 277: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,154 INFO L273 TraceCheckUtils]: 278: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,154 INFO L273 TraceCheckUtils]: 279: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,154 INFO L273 TraceCheckUtils]: 280: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,154 INFO L273 TraceCheckUtils]: 281: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,154 INFO L273 TraceCheckUtils]: 282: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,155 INFO L273 TraceCheckUtils]: 283: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,155 INFO L273 TraceCheckUtils]: 284: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,155 INFO L273 TraceCheckUtils]: 285: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,155 INFO L273 TraceCheckUtils]: 286: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,155 INFO L273 TraceCheckUtils]: 287: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,155 INFO L273 TraceCheckUtils]: 288: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,155 INFO L273 TraceCheckUtils]: 289: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,155 INFO L273 TraceCheckUtils]: 290: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,155 INFO L273 TraceCheckUtils]: 291: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,156 INFO L273 TraceCheckUtils]: 292: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,156 INFO L273 TraceCheckUtils]: 293: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,156 INFO L273 TraceCheckUtils]: 294: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,156 INFO L273 TraceCheckUtils]: 295: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,156 INFO L273 TraceCheckUtils]: 296: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,156 INFO L273 TraceCheckUtils]: 297: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,156 INFO L273 TraceCheckUtils]: 298: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,156 INFO L273 TraceCheckUtils]: 299: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,156 INFO L273 TraceCheckUtils]: 300: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,156 INFO L273 TraceCheckUtils]: 301: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,157 INFO L273 TraceCheckUtils]: 302: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,157 INFO L273 TraceCheckUtils]: 303: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,157 INFO L273 TraceCheckUtils]: 304: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,157 INFO L273 TraceCheckUtils]: 305: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,157 INFO L273 TraceCheckUtils]: 306: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,157 INFO L273 TraceCheckUtils]: 307: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,157 INFO L273 TraceCheckUtils]: 308: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,157 INFO L273 TraceCheckUtils]: 309: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,157 INFO L273 TraceCheckUtils]: 310: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,157 INFO L273 TraceCheckUtils]: 311: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,158 INFO L273 TraceCheckUtils]: 312: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,158 INFO L273 TraceCheckUtils]: 313: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,158 INFO L273 TraceCheckUtils]: 314: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,158 INFO L273 TraceCheckUtils]: 315: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,158 INFO L273 TraceCheckUtils]: 316: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,158 INFO L273 TraceCheckUtils]: 317: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,158 INFO L273 TraceCheckUtils]: 318: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,158 INFO L273 TraceCheckUtils]: 319: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,158 INFO L273 TraceCheckUtils]: 320: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,158 INFO L273 TraceCheckUtils]: 321: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,159 INFO L273 TraceCheckUtils]: 322: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,159 INFO L273 TraceCheckUtils]: 323: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,159 INFO L273 TraceCheckUtils]: 324: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,159 INFO L273 TraceCheckUtils]: 325: Hoare triple {34112#true} assume !(~i~0 < 20); {34112#true} is VALID [2018-11-23 12:17:28,159 INFO L273 TraceCheckUtils]: 326: Hoare triple {34112#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {34112#true} is VALID [2018-11-23 12:17:28,159 INFO L273 TraceCheckUtils]: 327: Hoare triple {34112#true} assume true; {34112#true} is VALID [2018-11-23 12:17:28,159 INFO L268 TraceCheckUtils]: 328: Hoare quadruple {34112#true} {34113#false} #81#return; {34113#false} is VALID [2018-11-23 12:17:28,159 INFO L273 TraceCheckUtils]: 329: Hoare triple {34113#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {34113#false} is VALID [2018-11-23 12:17:28,159 INFO L273 TraceCheckUtils]: 330: Hoare triple {34113#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {34113#false} is VALID [2018-11-23 12:17:28,160 INFO L273 TraceCheckUtils]: 331: Hoare triple {34113#false} assume !false; {34113#false} is VALID [2018-11-23 12:17:28,195 INFO L134 CoverageAnalysis]: Checked inductivity of 7775 backedges. 0 proven. 100 refuted. 0 times theorem prover too weak. 7675 trivial. 0 not checked. [2018-11-23 12:17:28,195 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:17:28,195 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 -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 36 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:17:28,203 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 12:17:28,369 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 12:17:28,369 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:17:28,430 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:28,433 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:17:28,932 INFO L256 TraceCheckUtils]: 0: Hoare triple {34112#true} call ULTIMATE.init(); {34112#true} is VALID [2018-11-23 12:17:28,932 INFO L273 TraceCheckUtils]: 1: Hoare triple {34112#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {34112#true} is VALID [2018-11-23 12:17:28,932 INFO L273 TraceCheckUtils]: 2: Hoare triple {34112#true} assume true; {34112#true} is VALID [2018-11-23 12:17:28,932 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {34112#true} {34112#true} #73#return; {34112#true} is VALID [2018-11-23 12:17:28,932 INFO L256 TraceCheckUtils]: 4: Hoare triple {34112#true} call #t~ret14 := main(); {34112#true} is VALID [2018-11-23 12:17:28,933 INFO L273 TraceCheckUtils]: 5: Hoare triple {34112#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {34112#true} is VALID [2018-11-23 12:17:28,933 INFO L273 TraceCheckUtils]: 6: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,933 INFO L273 TraceCheckUtils]: 7: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,933 INFO L273 TraceCheckUtils]: 8: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,933 INFO L273 TraceCheckUtils]: 9: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,933 INFO L273 TraceCheckUtils]: 10: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,933 INFO L273 TraceCheckUtils]: 11: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,933 INFO L273 TraceCheckUtils]: 12: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,933 INFO L273 TraceCheckUtils]: 13: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,933 INFO L273 TraceCheckUtils]: 14: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,934 INFO L273 TraceCheckUtils]: 15: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,934 INFO L273 TraceCheckUtils]: 16: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,934 INFO L273 TraceCheckUtils]: 17: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,934 INFO L273 TraceCheckUtils]: 18: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,934 INFO L273 TraceCheckUtils]: 19: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,934 INFO L273 TraceCheckUtils]: 20: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,934 INFO L273 TraceCheckUtils]: 21: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,934 INFO L273 TraceCheckUtils]: 22: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,934 INFO L273 TraceCheckUtils]: 23: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,935 INFO L273 TraceCheckUtils]: 24: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,935 INFO L273 TraceCheckUtils]: 25: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,935 INFO L273 TraceCheckUtils]: 26: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,935 INFO L273 TraceCheckUtils]: 27: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,935 INFO L273 TraceCheckUtils]: 28: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,935 INFO L273 TraceCheckUtils]: 29: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,935 INFO L273 TraceCheckUtils]: 30: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,935 INFO L273 TraceCheckUtils]: 31: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,935 INFO L273 TraceCheckUtils]: 32: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,935 INFO L273 TraceCheckUtils]: 33: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,936 INFO L273 TraceCheckUtils]: 34: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,936 INFO L273 TraceCheckUtils]: 35: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,936 INFO L273 TraceCheckUtils]: 36: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,936 INFO L273 TraceCheckUtils]: 37: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,936 INFO L273 TraceCheckUtils]: 38: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,936 INFO L273 TraceCheckUtils]: 39: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,936 INFO L273 TraceCheckUtils]: 40: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,936 INFO L273 TraceCheckUtils]: 41: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,936 INFO L273 TraceCheckUtils]: 42: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,936 INFO L273 TraceCheckUtils]: 43: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,937 INFO L273 TraceCheckUtils]: 44: Hoare triple {34112#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {34112#true} is VALID [2018-11-23 12:17:28,937 INFO L273 TraceCheckUtils]: 45: Hoare triple {34112#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {34112#true} is VALID [2018-11-23 12:17:28,937 INFO L273 TraceCheckUtils]: 46: Hoare triple {34112#true} assume !(~i~1 < 20); {34112#true} is VALID [2018-11-23 12:17:28,937 INFO L256 TraceCheckUtils]: 47: Hoare triple {34112#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {34112#true} is VALID [2018-11-23 12:17:28,937 INFO L273 TraceCheckUtils]: 48: Hoare triple {34112#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {34112#true} is VALID [2018-11-23 12:17:28,937 INFO L273 TraceCheckUtils]: 49: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,937 INFO L273 TraceCheckUtils]: 50: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,937 INFO L273 TraceCheckUtils]: 51: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,937 INFO L273 TraceCheckUtils]: 52: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,938 INFO L273 TraceCheckUtils]: 53: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,938 INFO L273 TraceCheckUtils]: 54: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,938 INFO L273 TraceCheckUtils]: 55: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,938 INFO L273 TraceCheckUtils]: 56: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,938 INFO L273 TraceCheckUtils]: 57: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,938 INFO L273 TraceCheckUtils]: 58: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,938 INFO L273 TraceCheckUtils]: 59: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,938 INFO L273 TraceCheckUtils]: 60: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,938 INFO L273 TraceCheckUtils]: 61: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,938 INFO L273 TraceCheckUtils]: 62: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,939 INFO L273 TraceCheckUtils]: 63: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,939 INFO L273 TraceCheckUtils]: 64: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,939 INFO L273 TraceCheckUtils]: 65: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,939 INFO L273 TraceCheckUtils]: 66: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,939 INFO L273 TraceCheckUtils]: 67: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,939 INFO L273 TraceCheckUtils]: 68: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,939 INFO L273 TraceCheckUtils]: 69: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,939 INFO L273 TraceCheckUtils]: 70: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,939 INFO L273 TraceCheckUtils]: 71: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,939 INFO L273 TraceCheckUtils]: 72: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,940 INFO L273 TraceCheckUtils]: 73: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,940 INFO L273 TraceCheckUtils]: 74: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,940 INFO L273 TraceCheckUtils]: 75: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,940 INFO L273 TraceCheckUtils]: 76: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,940 INFO L273 TraceCheckUtils]: 77: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,940 INFO L273 TraceCheckUtils]: 78: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,940 INFO L273 TraceCheckUtils]: 79: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,940 INFO L273 TraceCheckUtils]: 80: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,940 INFO L273 TraceCheckUtils]: 81: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,940 INFO L273 TraceCheckUtils]: 82: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,941 INFO L273 TraceCheckUtils]: 83: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,941 INFO L273 TraceCheckUtils]: 84: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,941 INFO L273 TraceCheckUtils]: 85: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,941 INFO L273 TraceCheckUtils]: 86: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,941 INFO L273 TraceCheckUtils]: 87: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,941 INFO L273 TraceCheckUtils]: 88: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,941 INFO L273 TraceCheckUtils]: 89: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,941 INFO L273 TraceCheckUtils]: 90: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,941 INFO L273 TraceCheckUtils]: 91: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,941 INFO L273 TraceCheckUtils]: 92: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,942 INFO L273 TraceCheckUtils]: 93: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,942 INFO L273 TraceCheckUtils]: 94: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,942 INFO L273 TraceCheckUtils]: 95: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,942 INFO L273 TraceCheckUtils]: 96: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,942 INFO L273 TraceCheckUtils]: 97: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,942 INFO L273 TraceCheckUtils]: 98: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,942 INFO L273 TraceCheckUtils]: 99: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,942 INFO L273 TraceCheckUtils]: 100: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,942 INFO L273 TraceCheckUtils]: 101: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,942 INFO L273 TraceCheckUtils]: 102: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,943 INFO L273 TraceCheckUtils]: 103: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,943 INFO L273 TraceCheckUtils]: 104: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,943 INFO L273 TraceCheckUtils]: 105: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,943 INFO L273 TraceCheckUtils]: 106: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,943 INFO L273 TraceCheckUtils]: 107: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,943 INFO L273 TraceCheckUtils]: 108: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,943 INFO L273 TraceCheckUtils]: 109: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,943 INFO L273 TraceCheckUtils]: 110: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,943 INFO L273 TraceCheckUtils]: 111: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,944 INFO L273 TraceCheckUtils]: 112: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,944 INFO L273 TraceCheckUtils]: 113: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,944 INFO L273 TraceCheckUtils]: 114: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,944 INFO L273 TraceCheckUtils]: 115: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,944 INFO L273 TraceCheckUtils]: 116: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,944 INFO L273 TraceCheckUtils]: 117: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,944 INFO L273 TraceCheckUtils]: 118: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,944 INFO L273 TraceCheckUtils]: 119: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,944 INFO L273 TraceCheckUtils]: 120: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,944 INFO L273 TraceCheckUtils]: 121: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,945 INFO L273 TraceCheckUtils]: 122: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,945 INFO L273 TraceCheckUtils]: 123: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,945 INFO L273 TraceCheckUtils]: 124: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,945 INFO L273 TraceCheckUtils]: 125: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,945 INFO L273 TraceCheckUtils]: 126: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,945 INFO L273 TraceCheckUtils]: 127: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,945 INFO L273 TraceCheckUtils]: 128: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,945 INFO L273 TraceCheckUtils]: 129: Hoare triple {34112#true} assume !(~i~0 < 20); {34112#true} is VALID [2018-11-23 12:17:28,945 INFO L273 TraceCheckUtils]: 130: Hoare triple {34112#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {34112#true} is VALID [2018-11-23 12:17:28,945 INFO L273 TraceCheckUtils]: 131: Hoare triple {34112#true} assume true; {34112#true} is VALID [2018-11-23 12:17:28,946 INFO L268 TraceCheckUtils]: 132: Hoare quadruple {34112#true} {34112#true} #77#return; {34112#true} is VALID [2018-11-23 12:17:28,946 INFO L273 TraceCheckUtils]: 133: Hoare triple {34112#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {34112#true} is VALID [2018-11-23 12:17:28,946 INFO L256 TraceCheckUtils]: 134: Hoare triple {34112#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {34112#true} is VALID [2018-11-23 12:17:28,946 INFO L273 TraceCheckUtils]: 135: Hoare triple {34112#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {34112#true} is VALID [2018-11-23 12:17:28,946 INFO L273 TraceCheckUtils]: 136: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,946 INFO L273 TraceCheckUtils]: 137: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,946 INFO L273 TraceCheckUtils]: 138: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,946 INFO L273 TraceCheckUtils]: 139: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,946 INFO L273 TraceCheckUtils]: 140: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,946 INFO L273 TraceCheckUtils]: 141: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,947 INFO L273 TraceCheckUtils]: 142: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,947 INFO L273 TraceCheckUtils]: 143: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,947 INFO L273 TraceCheckUtils]: 144: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,947 INFO L273 TraceCheckUtils]: 145: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,947 INFO L273 TraceCheckUtils]: 146: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,947 INFO L273 TraceCheckUtils]: 147: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,947 INFO L273 TraceCheckUtils]: 148: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,947 INFO L273 TraceCheckUtils]: 149: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,947 INFO L273 TraceCheckUtils]: 150: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,947 INFO L273 TraceCheckUtils]: 151: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,948 INFO L273 TraceCheckUtils]: 152: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,948 INFO L273 TraceCheckUtils]: 153: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,948 INFO L273 TraceCheckUtils]: 154: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,948 INFO L273 TraceCheckUtils]: 155: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,948 INFO L273 TraceCheckUtils]: 156: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,948 INFO L273 TraceCheckUtils]: 157: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,948 INFO L273 TraceCheckUtils]: 158: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,948 INFO L273 TraceCheckUtils]: 159: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,948 INFO L273 TraceCheckUtils]: 160: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,948 INFO L273 TraceCheckUtils]: 161: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,949 INFO L273 TraceCheckUtils]: 162: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,949 INFO L273 TraceCheckUtils]: 163: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,949 INFO L273 TraceCheckUtils]: 164: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,949 INFO L273 TraceCheckUtils]: 165: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,949 INFO L273 TraceCheckUtils]: 166: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,949 INFO L273 TraceCheckUtils]: 167: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,949 INFO L273 TraceCheckUtils]: 168: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,949 INFO L273 TraceCheckUtils]: 169: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,949 INFO L273 TraceCheckUtils]: 170: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,949 INFO L273 TraceCheckUtils]: 171: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,950 INFO L273 TraceCheckUtils]: 172: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,950 INFO L273 TraceCheckUtils]: 173: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,950 INFO L273 TraceCheckUtils]: 174: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,950 INFO L273 TraceCheckUtils]: 175: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,950 INFO L273 TraceCheckUtils]: 176: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,950 INFO L273 TraceCheckUtils]: 177: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,950 INFO L273 TraceCheckUtils]: 178: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,950 INFO L273 TraceCheckUtils]: 179: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,950 INFO L273 TraceCheckUtils]: 180: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,950 INFO L273 TraceCheckUtils]: 181: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,951 INFO L273 TraceCheckUtils]: 182: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,951 INFO L273 TraceCheckUtils]: 183: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,951 INFO L273 TraceCheckUtils]: 184: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,951 INFO L273 TraceCheckUtils]: 185: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,951 INFO L273 TraceCheckUtils]: 186: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,951 INFO L273 TraceCheckUtils]: 187: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,951 INFO L273 TraceCheckUtils]: 188: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,951 INFO L273 TraceCheckUtils]: 189: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,951 INFO L273 TraceCheckUtils]: 190: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,952 INFO L273 TraceCheckUtils]: 191: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,952 INFO L273 TraceCheckUtils]: 192: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,952 INFO L273 TraceCheckUtils]: 193: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,952 INFO L273 TraceCheckUtils]: 194: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,952 INFO L273 TraceCheckUtils]: 195: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,952 INFO L273 TraceCheckUtils]: 196: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,952 INFO L273 TraceCheckUtils]: 197: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,952 INFO L273 TraceCheckUtils]: 198: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,952 INFO L273 TraceCheckUtils]: 199: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,953 INFO L273 TraceCheckUtils]: 200: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,953 INFO L273 TraceCheckUtils]: 201: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,953 INFO L273 TraceCheckUtils]: 202: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,953 INFO L273 TraceCheckUtils]: 203: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,953 INFO L273 TraceCheckUtils]: 204: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,953 INFO L273 TraceCheckUtils]: 205: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,953 INFO L273 TraceCheckUtils]: 206: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,953 INFO L273 TraceCheckUtils]: 207: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,953 INFO L273 TraceCheckUtils]: 208: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,953 INFO L273 TraceCheckUtils]: 209: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,954 INFO L273 TraceCheckUtils]: 210: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,954 INFO L273 TraceCheckUtils]: 211: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,954 INFO L273 TraceCheckUtils]: 212: Hoare triple {34112#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34112#true} is VALID [2018-11-23 12:17:28,954 INFO L273 TraceCheckUtils]: 213: Hoare triple {34112#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34112#true} is VALID [2018-11-23 12:17:28,954 INFO L273 TraceCheckUtils]: 214: Hoare triple {34112#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34112#true} is VALID [2018-11-23 12:17:28,954 INFO L273 TraceCheckUtils]: 215: Hoare triple {34112#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34112#true} is VALID [2018-11-23 12:17:28,954 INFO L273 TraceCheckUtils]: 216: Hoare triple {34112#true} assume !(~i~0 < 20); {34112#true} is VALID [2018-11-23 12:17:28,954 INFO L273 TraceCheckUtils]: 217: Hoare triple {34112#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {34112#true} is VALID [2018-11-23 12:17:28,954 INFO L273 TraceCheckUtils]: 218: Hoare triple {34112#true} assume true; {34112#true} is VALID [2018-11-23 12:17:28,954 INFO L268 TraceCheckUtils]: 219: Hoare quadruple {34112#true} {34112#true} #79#return; {34112#true} is VALID [2018-11-23 12:17:28,955 INFO L273 TraceCheckUtils]: 220: Hoare triple {34112#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {34788#(<= main_~i~2 0)} is VALID [2018-11-23 12:17:28,956 INFO L273 TraceCheckUtils]: 221: Hoare triple {34788#(<= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {34788#(<= main_~i~2 0)} is VALID [2018-11-23 12:17:28,956 INFO L273 TraceCheckUtils]: 222: Hoare triple {34788#(<= main_~i~2 0)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {34115#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:28,958 INFO L273 TraceCheckUtils]: 223: Hoare triple {34115#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {34115#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:28,958 INFO L273 TraceCheckUtils]: 224: Hoare triple {34115#(<= main_~i~2 1)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {34116#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:28,960 INFO L273 TraceCheckUtils]: 225: Hoare triple {34116#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {34116#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:28,960 INFO L273 TraceCheckUtils]: 226: Hoare triple {34116#(<= main_~i~2 2)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {34117#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:28,964 INFO L273 TraceCheckUtils]: 227: Hoare triple {34117#(<= main_~i~2 3)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {34117#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:28,964 INFO L273 TraceCheckUtils]: 228: Hoare triple {34117#(<= main_~i~2 3)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {34118#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:28,966 INFO L273 TraceCheckUtils]: 229: Hoare triple {34118#(<= main_~i~2 4)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {34118#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:28,966 INFO L273 TraceCheckUtils]: 230: Hoare triple {34118#(<= main_~i~2 4)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {34119#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:28,968 INFO L273 TraceCheckUtils]: 231: Hoare triple {34119#(<= main_~i~2 5)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {34119#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:28,968 INFO L273 TraceCheckUtils]: 232: Hoare triple {34119#(<= main_~i~2 5)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {34120#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:28,970 INFO L273 TraceCheckUtils]: 233: Hoare triple {34120#(<= main_~i~2 6)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {34120#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:28,970 INFO L273 TraceCheckUtils]: 234: Hoare triple {34120#(<= main_~i~2 6)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {34121#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:28,972 INFO L273 TraceCheckUtils]: 235: Hoare triple {34121#(<= main_~i~2 7)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {34121#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:28,972 INFO L273 TraceCheckUtils]: 236: Hoare triple {34121#(<= main_~i~2 7)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {34122#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:28,974 INFO L273 TraceCheckUtils]: 237: Hoare triple {34122#(<= main_~i~2 8)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {34122#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:28,974 INFO L273 TraceCheckUtils]: 238: Hoare triple {34122#(<= main_~i~2 8)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {34123#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:28,976 INFO L273 TraceCheckUtils]: 239: Hoare triple {34123#(<= main_~i~2 9)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {34123#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:28,976 INFO L273 TraceCheckUtils]: 240: Hoare triple {34123#(<= main_~i~2 9)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {34124#(<= main_~i~2 10)} is VALID [2018-11-23 12:17:28,978 INFO L273 TraceCheckUtils]: 241: Hoare triple {34124#(<= main_~i~2 10)} assume !(~i~2 < 19); {34113#false} is VALID [2018-11-23 12:17:28,978 INFO L273 TraceCheckUtils]: 242: Hoare triple {34113#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {34113#false} is VALID [2018-11-23 12:17:28,978 INFO L256 TraceCheckUtils]: 243: Hoare triple {34113#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {34113#false} is VALID [2018-11-23 12:17:28,978 INFO L273 TraceCheckUtils]: 244: Hoare triple {34113#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {34113#false} is VALID [2018-11-23 12:17:28,978 INFO L273 TraceCheckUtils]: 245: Hoare triple {34113#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34113#false} is VALID [2018-11-23 12:17:28,978 INFO L273 TraceCheckUtils]: 246: Hoare triple {34113#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34113#false} is VALID [2018-11-23 12:17:28,978 INFO L273 TraceCheckUtils]: 247: Hoare triple {34113#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34113#false} is VALID [2018-11-23 12:17:28,978 INFO L273 TraceCheckUtils]: 248: Hoare triple {34113#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34113#false} is VALID [2018-11-23 12:17:28,978 INFO L273 TraceCheckUtils]: 249: Hoare triple {34113#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34113#false} is VALID [2018-11-23 12:17:28,979 INFO L273 TraceCheckUtils]: 250: Hoare triple {34113#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34113#false} is VALID [2018-11-23 12:17:28,979 INFO L273 TraceCheckUtils]: 251: Hoare triple {34113#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34113#false} is VALID [2018-11-23 12:17:28,979 INFO L273 TraceCheckUtils]: 252: Hoare triple {34113#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34113#false} is VALID [2018-11-23 12:17:28,979 INFO L273 TraceCheckUtils]: 253: Hoare triple {34113#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34113#false} is VALID [2018-11-23 12:17:28,979 INFO L273 TraceCheckUtils]: 254: Hoare triple {34113#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34113#false} is VALID [2018-11-23 12:17:28,979 INFO L273 TraceCheckUtils]: 255: Hoare triple {34113#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34113#false} is VALID [2018-11-23 12:17:28,979 INFO L273 TraceCheckUtils]: 256: Hoare triple {34113#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34113#false} is VALID [2018-11-23 12:17:28,979 INFO L273 TraceCheckUtils]: 257: Hoare triple {34113#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34113#false} is VALID [2018-11-23 12:17:28,979 INFO L273 TraceCheckUtils]: 258: Hoare triple {34113#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34113#false} is VALID [2018-11-23 12:17:28,980 INFO L273 TraceCheckUtils]: 259: Hoare triple {34113#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34113#false} is VALID [2018-11-23 12:17:28,980 INFO L273 TraceCheckUtils]: 260: Hoare triple {34113#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34113#false} is VALID [2018-11-23 12:17:28,980 INFO L273 TraceCheckUtils]: 261: Hoare triple {34113#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34113#false} is VALID [2018-11-23 12:17:28,980 INFO L273 TraceCheckUtils]: 262: Hoare triple {34113#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34113#false} is VALID [2018-11-23 12:17:28,980 INFO L273 TraceCheckUtils]: 263: Hoare triple {34113#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34113#false} is VALID [2018-11-23 12:17:28,980 INFO L273 TraceCheckUtils]: 264: Hoare triple {34113#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34113#false} is VALID [2018-11-23 12:17:28,980 INFO L273 TraceCheckUtils]: 265: Hoare triple {34113#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34113#false} is VALID [2018-11-23 12:17:28,980 INFO L273 TraceCheckUtils]: 266: Hoare triple {34113#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34113#false} is VALID [2018-11-23 12:17:28,980 INFO L273 TraceCheckUtils]: 267: Hoare triple {34113#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34113#false} is VALID [2018-11-23 12:17:28,980 INFO L273 TraceCheckUtils]: 268: Hoare triple {34113#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34113#false} is VALID [2018-11-23 12:17:28,981 INFO L273 TraceCheckUtils]: 269: Hoare triple {34113#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34113#false} is VALID [2018-11-23 12:17:28,981 INFO L273 TraceCheckUtils]: 270: Hoare triple {34113#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34113#false} is VALID [2018-11-23 12:17:28,981 INFO L273 TraceCheckUtils]: 271: Hoare triple {34113#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34113#false} is VALID [2018-11-23 12:17:28,981 INFO L273 TraceCheckUtils]: 272: Hoare triple {34113#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34113#false} is VALID [2018-11-23 12:17:28,981 INFO L273 TraceCheckUtils]: 273: Hoare triple {34113#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34113#false} is VALID [2018-11-23 12:17:28,981 INFO L273 TraceCheckUtils]: 274: Hoare triple {34113#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34113#false} is VALID [2018-11-23 12:17:28,981 INFO L273 TraceCheckUtils]: 275: Hoare triple {34113#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34113#false} is VALID [2018-11-23 12:17:28,981 INFO L273 TraceCheckUtils]: 276: Hoare triple {34113#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34113#false} is VALID [2018-11-23 12:17:28,981 INFO L273 TraceCheckUtils]: 277: Hoare triple {34113#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34113#false} is VALID [2018-11-23 12:17:28,981 INFO L273 TraceCheckUtils]: 278: Hoare triple {34113#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34113#false} is VALID [2018-11-23 12:17:28,982 INFO L273 TraceCheckUtils]: 279: Hoare triple {34113#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34113#false} is VALID [2018-11-23 12:17:28,982 INFO L273 TraceCheckUtils]: 280: Hoare triple {34113#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34113#false} is VALID [2018-11-23 12:17:28,982 INFO L273 TraceCheckUtils]: 281: Hoare triple {34113#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34113#false} is VALID [2018-11-23 12:17:28,982 INFO L273 TraceCheckUtils]: 282: Hoare triple {34113#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34113#false} is VALID [2018-11-23 12:17:28,982 INFO L273 TraceCheckUtils]: 283: Hoare triple {34113#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34113#false} is VALID [2018-11-23 12:17:28,982 INFO L273 TraceCheckUtils]: 284: Hoare triple {34113#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34113#false} is VALID [2018-11-23 12:17:28,982 INFO L273 TraceCheckUtils]: 285: Hoare triple {34113#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34113#false} is VALID [2018-11-23 12:17:28,982 INFO L273 TraceCheckUtils]: 286: Hoare triple {34113#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34113#false} is VALID [2018-11-23 12:17:28,982 INFO L273 TraceCheckUtils]: 287: Hoare triple {34113#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34113#false} is VALID [2018-11-23 12:17:28,982 INFO L273 TraceCheckUtils]: 288: Hoare triple {34113#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34113#false} is VALID [2018-11-23 12:17:28,983 INFO L273 TraceCheckUtils]: 289: Hoare triple {34113#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34113#false} is VALID [2018-11-23 12:17:28,983 INFO L273 TraceCheckUtils]: 290: Hoare triple {34113#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34113#false} is VALID [2018-11-23 12:17:28,983 INFO L273 TraceCheckUtils]: 291: Hoare triple {34113#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34113#false} is VALID [2018-11-23 12:17:28,983 INFO L273 TraceCheckUtils]: 292: Hoare triple {34113#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34113#false} is VALID [2018-11-23 12:17:28,983 INFO L273 TraceCheckUtils]: 293: Hoare triple {34113#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34113#false} is VALID [2018-11-23 12:17:28,983 INFO L273 TraceCheckUtils]: 294: Hoare triple {34113#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34113#false} is VALID [2018-11-23 12:17:28,983 INFO L273 TraceCheckUtils]: 295: Hoare triple {34113#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34113#false} is VALID [2018-11-23 12:17:28,983 INFO L273 TraceCheckUtils]: 296: Hoare triple {34113#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34113#false} is VALID [2018-11-23 12:17:28,983 INFO L273 TraceCheckUtils]: 297: Hoare triple {34113#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34113#false} is VALID [2018-11-23 12:17:28,983 INFO L273 TraceCheckUtils]: 298: Hoare triple {34113#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34113#false} is VALID [2018-11-23 12:17:28,984 INFO L273 TraceCheckUtils]: 299: Hoare triple {34113#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34113#false} is VALID [2018-11-23 12:17:28,984 INFO L273 TraceCheckUtils]: 300: Hoare triple {34113#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34113#false} is VALID [2018-11-23 12:17:28,984 INFO L273 TraceCheckUtils]: 301: Hoare triple {34113#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34113#false} is VALID [2018-11-23 12:17:28,984 INFO L273 TraceCheckUtils]: 302: Hoare triple {34113#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34113#false} is VALID [2018-11-23 12:17:28,984 INFO L273 TraceCheckUtils]: 303: Hoare triple {34113#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34113#false} is VALID [2018-11-23 12:17:28,984 INFO L273 TraceCheckUtils]: 304: Hoare triple {34113#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34113#false} is VALID [2018-11-23 12:17:28,984 INFO L273 TraceCheckUtils]: 305: Hoare triple {34113#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34113#false} is VALID [2018-11-23 12:17:28,984 INFO L273 TraceCheckUtils]: 306: Hoare triple {34113#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34113#false} is VALID [2018-11-23 12:17:28,984 INFO L273 TraceCheckUtils]: 307: Hoare triple {34113#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34113#false} is VALID [2018-11-23 12:17:28,984 INFO L273 TraceCheckUtils]: 308: Hoare triple {34113#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34113#false} is VALID [2018-11-23 12:17:28,985 INFO L273 TraceCheckUtils]: 309: Hoare triple {34113#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34113#false} is VALID [2018-11-23 12:17:28,985 INFO L273 TraceCheckUtils]: 310: Hoare triple {34113#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34113#false} is VALID [2018-11-23 12:17:28,985 INFO L273 TraceCheckUtils]: 311: Hoare triple {34113#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34113#false} is VALID [2018-11-23 12:17:28,985 INFO L273 TraceCheckUtils]: 312: Hoare triple {34113#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34113#false} is VALID [2018-11-23 12:17:28,985 INFO L273 TraceCheckUtils]: 313: Hoare triple {34113#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34113#false} is VALID [2018-11-23 12:17:28,985 INFO L273 TraceCheckUtils]: 314: Hoare triple {34113#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34113#false} is VALID [2018-11-23 12:17:28,985 INFO L273 TraceCheckUtils]: 315: Hoare triple {34113#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34113#false} is VALID [2018-11-23 12:17:28,985 INFO L273 TraceCheckUtils]: 316: Hoare triple {34113#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34113#false} is VALID [2018-11-23 12:17:28,985 INFO L273 TraceCheckUtils]: 317: Hoare triple {34113#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34113#false} is VALID [2018-11-23 12:17:28,985 INFO L273 TraceCheckUtils]: 318: Hoare triple {34113#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34113#false} is VALID [2018-11-23 12:17:28,986 INFO L273 TraceCheckUtils]: 319: Hoare triple {34113#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34113#false} is VALID [2018-11-23 12:17:28,986 INFO L273 TraceCheckUtils]: 320: Hoare triple {34113#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34113#false} is VALID [2018-11-23 12:17:28,986 INFO L273 TraceCheckUtils]: 321: Hoare triple {34113#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {34113#false} is VALID [2018-11-23 12:17:28,986 INFO L273 TraceCheckUtils]: 322: Hoare triple {34113#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {34113#false} is VALID [2018-11-23 12:17:28,986 INFO L273 TraceCheckUtils]: 323: Hoare triple {34113#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {34113#false} is VALID [2018-11-23 12:17:28,986 INFO L273 TraceCheckUtils]: 324: Hoare triple {34113#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {34113#false} is VALID [2018-11-23 12:17:28,986 INFO L273 TraceCheckUtils]: 325: Hoare triple {34113#false} assume !(~i~0 < 20); {34113#false} is VALID [2018-11-23 12:17:28,986 INFO L273 TraceCheckUtils]: 326: Hoare triple {34113#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {34113#false} is VALID [2018-11-23 12:17:28,986 INFO L273 TraceCheckUtils]: 327: Hoare triple {34113#false} assume true; {34113#false} is VALID [2018-11-23 12:17:28,987 INFO L268 TraceCheckUtils]: 328: Hoare quadruple {34113#false} {34113#false} #81#return; {34113#false} is VALID [2018-11-23 12:17:28,987 INFO L273 TraceCheckUtils]: 329: Hoare triple {34113#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {34113#false} is VALID [2018-11-23 12:17:28,987 INFO L273 TraceCheckUtils]: 330: Hoare triple {34113#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {34113#false} is VALID [2018-11-23 12:17:28,987 INFO L273 TraceCheckUtils]: 331: Hoare triple {34113#false} assume !false; {34113#false} is VALID [2018-11-23 12:17:29,023 INFO L134 CoverageAnalysis]: Checked inductivity of 7775 backedges. 3290 proven. 100 refuted. 0 times theorem prover too weak. 4385 trivial. 0 not checked. [2018-11-23 12:17:29,042 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:17:29,042 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 14 [2018-11-23 12:17:29,042 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 332 [2018-11-23 12:17:29,043 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:17:29,043 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states. [2018-11-23 12:17:29,113 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:17:29,113 INFO L459 AbstractCegarLoop]: Interpolant automaton has 14 states [2018-11-23 12:17:29,113 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2018-11-23 12:17:29,113 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=91, Invalid=91, Unknown=0, NotChecked=0, Total=182 [2018-11-23 12:17:29,114 INFO L87 Difference]: Start difference. First operand 163 states and 187 transitions. Second operand 14 states. [2018-11-23 12:17:29,517 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:29,517 INFO L93 Difference]: Finished difference Result 257 states and 302 transitions. [2018-11-23 12:17:29,517 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2018-11-23 12:17:29,518 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 332 [2018-11-23 12:17:29,518 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:17:29,518 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-23 12:17:29,518 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 71 transitions. [2018-11-23 12:17:29,519 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-23 12:17:29,519 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 71 transitions. [2018-11-23 12:17:29,519 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 71 transitions. [2018-11-23 12:17:29,579 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:17:29,583 INFO L225 Difference]: With dead ends: 257 [2018-11-23 12:17:29,583 INFO L226 Difference]: Without dead ends: 166 [2018-11-23 12:17:29,584 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 344 GetRequests, 332 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 18 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=91, Invalid=91, Unknown=0, NotChecked=0, Total=182 [2018-11-23 12:17:29,584 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 166 states. [2018-11-23 12:17:29,660 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 166 to 165. [2018-11-23 12:17:29,660 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:17:29,661 INFO L82 GeneralOperation]: Start isEquivalent. First operand 166 states. Second operand 165 states. [2018-11-23 12:17:29,661 INFO L74 IsIncluded]: Start isIncluded. First operand 166 states. Second operand 165 states. [2018-11-23 12:17:29,661 INFO L87 Difference]: Start difference. First operand 166 states. Second operand 165 states. [2018-11-23 12:17:29,664 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:29,664 INFO L93 Difference]: Finished difference Result 166 states and 190 transitions. [2018-11-23 12:17:29,664 INFO L276 IsEmpty]: Start isEmpty. Operand 166 states and 190 transitions. [2018-11-23 12:17:29,664 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:29,664 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:29,665 INFO L74 IsIncluded]: Start isIncluded. First operand 165 states. Second operand 166 states. [2018-11-23 12:17:29,665 INFO L87 Difference]: Start difference. First operand 165 states. Second operand 166 states. [2018-11-23 12:17:29,668 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:29,668 INFO L93 Difference]: Finished difference Result 166 states and 190 transitions. [2018-11-23 12:17:29,668 INFO L276 IsEmpty]: Start isEmpty. Operand 166 states and 190 transitions. [2018-11-23 12:17:29,668 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:29,668 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:29,668 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:17:29,669 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:17:29,669 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 165 states. [2018-11-23 12:17:29,672 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 165 states to 165 states and 189 transitions. [2018-11-23 12:17:29,672 INFO L78 Accepts]: Start accepts. Automaton has 165 states and 189 transitions. Word has length 332 [2018-11-23 12:17:29,672 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:17:29,672 INFO L480 AbstractCegarLoop]: Abstraction has 165 states and 189 transitions. [2018-11-23 12:17:29,672 INFO L481 AbstractCegarLoop]: Interpolant automaton has 14 states. [2018-11-23 12:17:29,672 INFO L276 IsEmpty]: Start isEmpty. Operand 165 states and 189 transitions. [2018-11-23 12:17:29,674 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 335 [2018-11-23 12:17:29,674 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:17:29,675 INFO L402 BasicCegarLoop]: trace histogram [60, 60, 60, 60, 20, 20, 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] [2018-11-23 12:17:29,675 INFO L423 AbstractCegarLoop]: === Iteration 38 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:17:29,675 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:17:29,675 INFO L82 PathProgramCache]: Analyzing trace with hash 2099447257, now seen corresponding path program 35 times [2018-11-23 12:17:29,675 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:17:29,675 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:17:29,676 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:29,676 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:17:29,676 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:29,733 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:30,109 INFO L256 TraceCheckUtils]: 0: Hoare triple {36022#true} call ULTIMATE.init(); {36022#true} is VALID [2018-11-23 12:17:30,109 INFO L273 TraceCheckUtils]: 1: Hoare triple {36022#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {36022#true} is VALID [2018-11-23 12:17:30,109 INFO L273 TraceCheckUtils]: 2: Hoare triple {36022#true} assume true; {36022#true} is VALID [2018-11-23 12:17:30,109 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {36022#true} {36022#true} #73#return; {36022#true} is VALID [2018-11-23 12:17:30,109 INFO L256 TraceCheckUtils]: 4: Hoare triple {36022#true} call #t~ret14 := main(); {36022#true} is VALID [2018-11-23 12:17:30,110 INFO L273 TraceCheckUtils]: 5: Hoare triple {36022#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {36022#true} is VALID [2018-11-23 12:17:30,110 INFO L273 TraceCheckUtils]: 6: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:30,110 INFO L273 TraceCheckUtils]: 7: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:30,110 INFO L273 TraceCheckUtils]: 8: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:30,110 INFO L273 TraceCheckUtils]: 9: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:30,110 INFO L273 TraceCheckUtils]: 10: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:30,111 INFO L273 TraceCheckUtils]: 11: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:30,111 INFO L273 TraceCheckUtils]: 12: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:30,111 INFO L273 TraceCheckUtils]: 13: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:30,111 INFO L273 TraceCheckUtils]: 14: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:30,111 INFO L273 TraceCheckUtils]: 15: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:30,111 INFO L273 TraceCheckUtils]: 16: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:30,111 INFO L273 TraceCheckUtils]: 17: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:30,111 INFO L273 TraceCheckUtils]: 18: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:30,111 INFO L273 TraceCheckUtils]: 19: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:30,112 INFO L273 TraceCheckUtils]: 20: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:30,112 INFO L273 TraceCheckUtils]: 21: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:30,112 INFO L273 TraceCheckUtils]: 22: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:30,112 INFO L273 TraceCheckUtils]: 23: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:30,112 INFO L273 TraceCheckUtils]: 24: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:30,112 INFO L273 TraceCheckUtils]: 25: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:30,112 INFO L273 TraceCheckUtils]: 26: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:30,112 INFO L273 TraceCheckUtils]: 27: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:30,112 INFO L273 TraceCheckUtils]: 28: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:30,112 INFO L273 TraceCheckUtils]: 29: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:30,113 INFO L273 TraceCheckUtils]: 30: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:30,113 INFO L273 TraceCheckUtils]: 31: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:30,113 INFO L273 TraceCheckUtils]: 32: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:30,113 INFO L273 TraceCheckUtils]: 33: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:30,113 INFO L273 TraceCheckUtils]: 34: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:30,113 INFO L273 TraceCheckUtils]: 35: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:30,113 INFO L273 TraceCheckUtils]: 36: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:30,113 INFO L273 TraceCheckUtils]: 37: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:30,113 INFO L273 TraceCheckUtils]: 38: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:30,113 INFO L273 TraceCheckUtils]: 39: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:30,114 INFO L273 TraceCheckUtils]: 40: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:30,114 INFO L273 TraceCheckUtils]: 41: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:30,114 INFO L273 TraceCheckUtils]: 42: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:30,114 INFO L273 TraceCheckUtils]: 43: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:30,114 INFO L273 TraceCheckUtils]: 44: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:30,114 INFO L273 TraceCheckUtils]: 45: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:30,114 INFO L273 TraceCheckUtils]: 46: Hoare triple {36022#true} assume !(~i~1 < 20); {36022#true} is VALID [2018-11-23 12:17:30,114 INFO L256 TraceCheckUtils]: 47: Hoare triple {36022#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {36022#true} is VALID [2018-11-23 12:17:30,114 INFO L273 TraceCheckUtils]: 48: Hoare triple {36022#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {36022#true} is VALID [2018-11-23 12:17:30,114 INFO L273 TraceCheckUtils]: 49: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,115 INFO L273 TraceCheckUtils]: 50: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,115 INFO L273 TraceCheckUtils]: 51: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,115 INFO L273 TraceCheckUtils]: 52: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,115 INFO L273 TraceCheckUtils]: 53: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,115 INFO L273 TraceCheckUtils]: 54: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,115 INFO L273 TraceCheckUtils]: 55: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,115 INFO L273 TraceCheckUtils]: 56: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,115 INFO L273 TraceCheckUtils]: 57: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,115 INFO L273 TraceCheckUtils]: 58: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,115 INFO L273 TraceCheckUtils]: 59: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,116 INFO L273 TraceCheckUtils]: 60: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,116 INFO L273 TraceCheckUtils]: 61: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,116 INFO L273 TraceCheckUtils]: 62: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,116 INFO L273 TraceCheckUtils]: 63: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,116 INFO L273 TraceCheckUtils]: 64: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,116 INFO L273 TraceCheckUtils]: 65: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,116 INFO L273 TraceCheckUtils]: 66: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,116 INFO L273 TraceCheckUtils]: 67: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,116 INFO L273 TraceCheckUtils]: 68: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,116 INFO L273 TraceCheckUtils]: 69: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,117 INFO L273 TraceCheckUtils]: 70: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,117 INFO L273 TraceCheckUtils]: 71: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,117 INFO L273 TraceCheckUtils]: 72: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,117 INFO L273 TraceCheckUtils]: 73: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,117 INFO L273 TraceCheckUtils]: 74: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,117 INFO L273 TraceCheckUtils]: 75: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,117 INFO L273 TraceCheckUtils]: 76: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,117 INFO L273 TraceCheckUtils]: 77: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,117 INFO L273 TraceCheckUtils]: 78: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,117 INFO L273 TraceCheckUtils]: 79: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,118 INFO L273 TraceCheckUtils]: 80: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,118 INFO L273 TraceCheckUtils]: 81: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,118 INFO L273 TraceCheckUtils]: 82: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,118 INFO L273 TraceCheckUtils]: 83: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,118 INFO L273 TraceCheckUtils]: 84: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,118 INFO L273 TraceCheckUtils]: 85: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,118 INFO L273 TraceCheckUtils]: 86: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,118 INFO L273 TraceCheckUtils]: 87: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,118 INFO L273 TraceCheckUtils]: 88: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,118 INFO L273 TraceCheckUtils]: 89: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,119 INFO L273 TraceCheckUtils]: 90: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,119 INFO L273 TraceCheckUtils]: 91: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,119 INFO L273 TraceCheckUtils]: 92: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,119 INFO L273 TraceCheckUtils]: 93: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,119 INFO L273 TraceCheckUtils]: 94: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,119 INFO L273 TraceCheckUtils]: 95: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,119 INFO L273 TraceCheckUtils]: 96: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,119 INFO L273 TraceCheckUtils]: 97: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,119 INFO L273 TraceCheckUtils]: 98: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,119 INFO L273 TraceCheckUtils]: 99: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,120 INFO L273 TraceCheckUtils]: 100: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,120 INFO L273 TraceCheckUtils]: 101: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,120 INFO L273 TraceCheckUtils]: 102: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,120 INFO L273 TraceCheckUtils]: 103: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,120 INFO L273 TraceCheckUtils]: 104: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,120 INFO L273 TraceCheckUtils]: 105: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,120 INFO L273 TraceCheckUtils]: 106: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,120 INFO L273 TraceCheckUtils]: 107: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,120 INFO L273 TraceCheckUtils]: 108: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,120 INFO L273 TraceCheckUtils]: 109: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,121 INFO L273 TraceCheckUtils]: 110: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,121 INFO L273 TraceCheckUtils]: 111: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,121 INFO L273 TraceCheckUtils]: 112: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,121 INFO L273 TraceCheckUtils]: 113: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,121 INFO L273 TraceCheckUtils]: 114: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,121 INFO L273 TraceCheckUtils]: 115: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,121 INFO L273 TraceCheckUtils]: 116: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,121 INFO L273 TraceCheckUtils]: 117: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,121 INFO L273 TraceCheckUtils]: 118: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,121 INFO L273 TraceCheckUtils]: 119: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,122 INFO L273 TraceCheckUtils]: 120: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,122 INFO L273 TraceCheckUtils]: 121: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,122 INFO L273 TraceCheckUtils]: 122: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,122 INFO L273 TraceCheckUtils]: 123: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,122 INFO L273 TraceCheckUtils]: 124: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,122 INFO L273 TraceCheckUtils]: 125: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,122 INFO L273 TraceCheckUtils]: 126: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,122 INFO L273 TraceCheckUtils]: 127: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,122 INFO L273 TraceCheckUtils]: 128: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,122 INFO L273 TraceCheckUtils]: 129: Hoare triple {36022#true} assume !(~i~0 < 20); {36022#true} is VALID [2018-11-23 12:17:30,123 INFO L273 TraceCheckUtils]: 130: Hoare triple {36022#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {36022#true} is VALID [2018-11-23 12:17:30,123 INFO L273 TraceCheckUtils]: 131: Hoare triple {36022#true} assume true; {36022#true} is VALID [2018-11-23 12:17:30,123 INFO L268 TraceCheckUtils]: 132: Hoare quadruple {36022#true} {36022#true} #77#return; {36022#true} is VALID [2018-11-23 12:17:30,123 INFO L273 TraceCheckUtils]: 133: Hoare triple {36022#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {36022#true} is VALID [2018-11-23 12:17:30,123 INFO L256 TraceCheckUtils]: 134: Hoare triple {36022#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {36022#true} is VALID [2018-11-23 12:17:30,123 INFO L273 TraceCheckUtils]: 135: Hoare triple {36022#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {36022#true} is VALID [2018-11-23 12:17:30,123 INFO L273 TraceCheckUtils]: 136: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,123 INFO L273 TraceCheckUtils]: 137: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,123 INFO L273 TraceCheckUtils]: 138: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,123 INFO L273 TraceCheckUtils]: 139: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,124 INFO L273 TraceCheckUtils]: 140: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,124 INFO L273 TraceCheckUtils]: 141: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,124 INFO L273 TraceCheckUtils]: 142: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,124 INFO L273 TraceCheckUtils]: 143: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,124 INFO L273 TraceCheckUtils]: 144: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,124 INFO L273 TraceCheckUtils]: 145: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,124 INFO L273 TraceCheckUtils]: 146: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,124 INFO L273 TraceCheckUtils]: 147: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,124 INFO L273 TraceCheckUtils]: 148: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,125 INFO L273 TraceCheckUtils]: 149: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,125 INFO L273 TraceCheckUtils]: 150: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,125 INFO L273 TraceCheckUtils]: 151: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,125 INFO L273 TraceCheckUtils]: 152: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,125 INFO L273 TraceCheckUtils]: 153: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,125 INFO L273 TraceCheckUtils]: 154: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,125 INFO L273 TraceCheckUtils]: 155: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,125 INFO L273 TraceCheckUtils]: 156: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,125 INFO L273 TraceCheckUtils]: 157: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,125 INFO L273 TraceCheckUtils]: 158: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,126 INFO L273 TraceCheckUtils]: 159: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,126 INFO L273 TraceCheckUtils]: 160: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,126 INFO L273 TraceCheckUtils]: 161: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,126 INFO L273 TraceCheckUtils]: 162: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,126 INFO L273 TraceCheckUtils]: 163: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,126 INFO L273 TraceCheckUtils]: 164: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,126 INFO L273 TraceCheckUtils]: 165: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,126 INFO L273 TraceCheckUtils]: 166: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,126 INFO L273 TraceCheckUtils]: 167: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,126 INFO L273 TraceCheckUtils]: 168: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,127 INFO L273 TraceCheckUtils]: 169: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,127 INFO L273 TraceCheckUtils]: 170: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,127 INFO L273 TraceCheckUtils]: 171: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,127 INFO L273 TraceCheckUtils]: 172: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,127 INFO L273 TraceCheckUtils]: 173: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,127 INFO L273 TraceCheckUtils]: 174: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,127 INFO L273 TraceCheckUtils]: 175: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,127 INFO L273 TraceCheckUtils]: 176: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,127 INFO L273 TraceCheckUtils]: 177: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,127 INFO L273 TraceCheckUtils]: 178: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,128 INFO L273 TraceCheckUtils]: 179: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,128 INFO L273 TraceCheckUtils]: 180: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,128 INFO L273 TraceCheckUtils]: 181: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,128 INFO L273 TraceCheckUtils]: 182: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,128 INFO L273 TraceCheckUtils]: 183: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,128 INFO L273 TraceCheckUtils]: 184: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,128 INFO L273 TraceCheckUtils]: 185: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,128 INFO L273 TraceCheckUtils]: 186: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,128 INFO L273 TraceCheckUtils]: 187: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,128 INFO L273 TraceCheckUtils]: 188: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,129 INFO L273 TraceCheckUtils]: 189: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,129 INFO L273 TraceCheckUtils]: 190: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,129 INFO L273 TraceCheckUtils]: 191: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,129 INFO L273 TraceCheckUtils]: 192: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,129 INFO L273 TraceCheckUtils]: 193: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,129 INFO L273 TraceCheckUtils]: 194: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,129 INFO L273 TraceCheckUtils]: 195: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,129 INFO L273 TraceCheckUtils]: 196: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,129 INFO L273 TraceCheckUtils]: 197: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,129 INFO L273 TraceCheckUtils]: 198: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,130 INFO L273 TraceCheckUtils]: 199: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,130 INFO L273 TraceCheckUtils]: 200: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,130 INFO L273 TraceCheckUtils]: 201: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,130 INFO L273 TraceCheckUtils]: 202: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,130 INFO L273 TraceCheckUtils]: 203: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,130 INFO L273 TraceCheckUtils]: 204: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,130 INFO L273 TraceCheckUtils]: 205: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,130 INFO L273 TraceCheckUtils]: 206: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,130 INFO L273 TraceCheckUtils]: 207: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,130 INFO L273 TraceCheckUtils]: 208: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,131 INFO L273 TraceCheckUtils]: 209: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,131 INFO L273 TraceCheckUtils]: 210: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,131 INFO L273 TraceCheckUtils]: 211: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,131 INFO L273 TraceCheckUtils]: 212: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,131 INFO L273 TraceCheckUtils]: 213: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,131 INFO L273 TraceCheckUtils]: 214: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,131 INFO L273 TraceCheckUtils]: 215: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,131 INFO L273 TraceCheckUtils]: 216: Hoare triple {36022#true} assume !(~i~0 < 20); {36022#true} is VALID [2018-11-23 12:17:30,131 INFO L273 TraceCheckUtils]: 217: Hoare triple {36022#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {36022#true} is VALID [2018-11-23 12:17:30,131 INFO L273 TraceCheckUtils]: 218: Hoare triple {36022#true} assume true; {36022#true} is VALID [2018-11-23 12:17:30,132 INFO L268 TraceCheckUtils]: 219: Hoare quadruple {36022#true} {36022#true} #79#return; {36022#true} is VALID [2018-11-23 12:17:30,132 INFO L273 TraceCheckUtils]: 220: Hoare triple {36022#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {36024#(= main_~i~2 0)} is VALID [2018-11-23 12:17:30,132 INFO L273 TraceCheckUtils]: 221: Hoare triple {36024#(= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {36024#(= main_~i~2 0)} is VALID [2018-11-23 12:17:30,133 INFO L273 TraceCheckUtils]: 222: Hoare triple {36024#(= main_~i~2 0)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {36025#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:30,133 INFO L273 TraceCheckUtils]: 223: Hoare triple {36025#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {36025#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:30,133 INFO L273 TraceCheckUtils]: 224: Hoare triple {36025#(<= main_~i~2 1)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {36026#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:30,134 INFO L273 TraceCheckUtils]: 225: Hoare triple {36026#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {36026#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:30,134 INFO L273 TraceCheckUtils]: 226: Hoare triple {36026#(<= main_~i~2 2)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {36027#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:30,134 INFO L273 TraceCheckUtils]: 227: Hoare triple {36027#(<= main_~i~2 3)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {36027#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:30,135 INFO L273 TraceCheckUtils]: 228: Hoare triple {36027#(<= main_~i~2 3)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {36028#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:30,135 INFO L273 TraceCheckUtils]: 229: Hoare triple {36028#(<= main_~i~2 4)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {36028#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:30,136 INFO L273 TraceCheckUtils]: 230: Hoare triple {36028#(<= main_~i~2 4)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {36029#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:30,136 INFO L273 TraceCheckUtils]: 231: Hoare triple {36029#(<= main_~i~2 5)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {36029#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:30,137 INFO L273 TraceCheckUtils]: 232: Hoare triple {36029#(<= main_~i~2 5)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {36030#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:30,137 INFO L273 TraceCheckUtils]: 233: Hoare triple {36030#(<= main_~i~2 6)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {36030#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:30,138 INFO L273 TraceCheckUtils]: 234: Hoare triple {36030#(<= main_~i~2 6)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {36031#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:30,138 INFO L273 TraceCheckUtils]: 235: Hoare triple {36031#(<= main_~i~2 7)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {36031#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:30,139 INFO L273 TraceCheckUtils]: 236: Hoare triple {36031#(<= main_~i~2 7)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {36032#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:30,139 INFO L273 TraceCheckUtils]: 237: Hoare triple {36032#(<= main_~i~2 8)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {36032#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:30,140 INFO L273 TraceCheckUtils]: 238: Hoare triple {36032#(<= main_~i~2 8)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {36033#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:30,141 INFO L273 TraceCheckUtils]: 239: Hoare triple {36033#(<= main_~i~2 9)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {36033#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:30,141 INFO L273 TraceCheckUtils]: 240: Hoare triple {36033#(<= main_~i~2 9)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {36034#(<= main_~i~2 10)} is VALID [2018-11-23 12:17:30,142 INFO L273 TraceCheckUtils]: 241: Hoare triple {36034#(<= main_~i~2 10)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {36034#(<= main_~i~2 10)} is VALID [2018-11-23 12:17:30,142 INFO L273 TraceCheckUtils]: 242: Hoare triple {36034#(<= main_~i~2 10)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {36035#(<= main_~i~2 11)} is VALID [2018-11-23 12:17:30,143 INFO L273 TraceCheckUtils]: 243: Hoare triple {36035#(<= main_~i~2 11)} assume !(~i~2 < 19); {36023#false} is VALID [2018-11-23 12:17:30,143 INFO L273 TraceCheckUtils]: 244: Hoare triple {36023#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {36023#false} is VALID [2018-11-23 12:17:30,143 INFO L256 TraceCheckUtils]: 245: Hoare triple {36023#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {36022#true} is VALID [2018-11-23 12:17:30,144 INFO L273 TraceCheckUtils]: 246: Hoare triple {36022#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {36022#true} is VALID [2018-11-23 12:17:30,144 INFO L273 TraceCheckUtils]: 247: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,144 INFO L273 TraceCheckUtils]: 248: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,144 INFO L273 TraceCheckUtils]: 249: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,144 INFO L273 TraceCheckUtils]: 250: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,144 INFO L273 TraceCheckUtils]: 251: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,145 INFO L273 TraceCheckUtils]: 252: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,145 INFO L273 TraceCheckUtils]: 253: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,145 INFO L273 TraceCheckUtils]: 254: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,145 INFO L273 TraceCheckUtils]: 255: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,145 INFO L273 TraceCheckUtils]: 256: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,145 INFO L273 TraceCheckUtils]: 257: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,146 INFO L273 TraceCheckUtils]: 258: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,146 INFO L273 TraceCheckUtils]: 259: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,146 INFO L273 TraceCheckUtils]: 260: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,146 INFO L273 TraceCheckUtils]: 261: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,146 INFO L273 TraceCheckUtils]: 262: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,146 INFO L273 TraceCheckUtils]: 263: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,147 INFO L273 TraceCheckUtils]: 264: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,147 INFO L273 TraceCheckUtils]: 265: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,147 INFO L273 TraceCheckUtils]: 266: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,147 INFO L273 TraceCheckUtils]: 267: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,147 INFO L273 TraceCheckUtils]: 268: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,147 INFO L273 TraceCheckUtils]: 269: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,148 INFO L273 TraceCheckUtils]: 270: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,148 INFO L273 TraceCheckUtils]: 271: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,148 INFO L273 TraceCheckUtils]: 272: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,148 INFO L273 TraceCheckUtils]: 273: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,148 INFO L273 TraceCheckUtils]: 274: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,148 INFO L273 TraceCheckUtils]: 275: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,148 INFO L273 TraceCheckUtils]: 276: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,148 INFO L273 TraceCheckUtils]: 277: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,148 INFO L273 TraceCheckUtils]: 278: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,148 INFO L273 TraceCheckUtils]: 279: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,149 INFO L273 TraceCheckUtils]: 280: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,149 INFO L273 TraceCheckUtils]: 281: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,149 INFO L273 TraceCheckUtils]: 282: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,149 INFO L273 TraceCheckUtils]: 283: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,149 INFO L273 TraceCheckUtils]: 284: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,149 INFO L273 TraceCheckUtils]: 285: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,149 INFO L273 TraceCheckUtils]: 286: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,149 INFO L273 TraceCheckUtils]: 287: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,149 INFO L273 TraceCheckUtils]: 288: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,150 INFO L273 TraceCheckUtils]: 289: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,150 INFO L273 TraceCheckUtils]: 290: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,150 INFO L273 TraceCheckUtils]: 291: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,150 INFO L273 TraceCheckUtils]: 292: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,150 INFO L273 TraceCheckUtils]: 293: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,150 INFO L273 TraceCheckUtils]: 294: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,150 INFO L273 TraceCheckUtils]: 295: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,150 INFO L273 TraceCheckUtils]: 296: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,150 INFO L273 TraceCheckUtils]: 297: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,151 INFO L273 TraceCheckUtils]: 298: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,151 INFO L273 TraceCheckUtils]: 299: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,151 INFO L273 TraceCheckUtils]: 300: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,151 INFO L273 TraceCheckUtils]: 301: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,151 INFO L273 TraceCheckUtils]: 302: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,151 INFO L273 TraceCheckUtils]: 303: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,151 INFO L273 TraceCheckUtils]: 304: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,151 INFO L273 TraceCheckUtils]: 305: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,151 INFO L273 TraceCheckUtils]: 306: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,151 INFO L273 TraceCheckUtils]: 307: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,151 INFO L273 TraceCheckUtils]: 308: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,152 INFO L273 TraceCheckUtils]: 309: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,152 INFO L273 TraceCheckUtils]: 310: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,152 INFO L273 TraceCheckUtils]: 311: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,152 INFO L273 TraceCheckUtils]: 312: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,152 INFO L273 TraceCheckUtils]: 313: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,152 INFO L273 TraceCheckUtils]: 314: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,152 INFO L273 TraceCheckUtils]: 315: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,152 INFO L273 TraceCheckUtils]: 316: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,152 INFO L273 TraceCheckUtils]: 317: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,153 INFO L273 TraceCheckUtils]: 318: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,153 INFO L273 TraceCheckUtils]: 319: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,153 INFO L273 TraceCheckUtils]: 320: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,153 INFO L273 TraceCheckUtils]: 321: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,153 INFO L273 TraceCheckUtils]: 322: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,153 INFO L273 TraceCheckUtils]: 323: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:30,153 INFO L273 TraceCheckUtils]: 324: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:30,153 INFO L273 TraceCheckUtils]: 325: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:30,153 INFO L273 TraceCheckUtils]: 326: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:30,153 INFO L273 TraceCheckUtils]: 327: Hoare triple {36022#true} assume !(~i~0 < 20); {36022#true} is VALID [2018-11-23 12:17:30,154 INFO L273 TraceCheckUtils]: 328: Hoare triple {36022#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {36022#true} is VALID [2018-11-23 12:17:30,154 INFO L273 TraceCheckUtils]: 329: Hoare triple {36022#true} assume true; {36022#true} is VALID [2018-11-23 12:17:30,154 INFO L268 TraceCheckUtils]: 330: Hoare quadruple {36022#true} {36023#false} #81#return; {36023#false} is VALID [2018-11-23 12:17:30,154 INFO L273 TraceCheckUtils]: 331: Hoare triple {36023#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {36023#false} is VALID [2018-11-23 12:17:30,154 INFO L273 TraceCheckUtils]: 332: Hoare triple {36023#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {36023#false} is VALID [2018-11-23 12:17:30,154 INFO L273 TraceCheckUtils]: 333: Hoare triple {36023#false} assume !false; {36023#false} is VALID [2018-11-23 12:17:30,190 INFO L134 CoverageAnalysis]: Checked inductivity of 7796 backedges. 0 proven. 121 refuted. 0 times theorem prover too weak. 7675 trivial. 0 not checked. [2018-11-23 12:17:30,190 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:17:30,190 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 -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 37 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:17:30,198 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 12:17:37,324 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 41 check-sat command(s) [2018-11-23 12:17:37,324 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:17:37,401 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:37,404 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:17:39,329 INFO L256 TraceCheckUtils]: 0: Hoare triple {36022#true} call ULTIMATE.init(); {36022#true} is VALID [2018-11-23 12:17:39,330 INFO L273 TraceCheckUtils]: 1: Hoare triple {36022#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {36022#true} is VALID [2018-11-23 12:17:39,330 INFO L273 TraceCheckUtils]: 2: Hoare triple {36022#true} assume true; {36022#true} is VALID [2018-11-23 12:17:39,330 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {36022#true} {36022#true} #73#return; {36022#true} is VALID [2018-11-23 12:17:39,330 INFO L256 TraceCheckUtils]: 4: Hoare triple {36022#true} call #t~ret14 := main(); {36022#true} is VALID [2018-11-23 12:17:39,331 INFO L273 TraceCheckUtils]: 5: Hoare triple {36022#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {36022#true} is VALID [2018-11-23 12:17:39,331 INFO L273 TraceCheckUtils]: 6: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:39,331 INFO L273 TraceCheckUtils]: 7: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:39,331 INFO L273 TraceCheckUtils]: 8: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:39,331 INFO L273 TraceCheckUtils]: 9: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:39,331 INFO L273 TraceCheckUtils]: 10: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:39,332 INFO L273 TraceCheckUtils]: 11: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:39,332 INFO L273 TraceCheckUtils]: 12: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:39,332 INFO L273 TraceCheckUtils]: 13: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:39,332 INFO L273 TraceCheckUtils]: 14: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:39,332 INFO L273 TraceCheckUtils]: 15: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:39,332 INFO L273 TraceCheckUtils]: 16: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:39,333 INFO L273 TraceCheckUtils]: 17: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:39,333 INFO L273 TraceCheckUtils]: 18: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:39,333 INFO L273 TraceCheckUtils]: 19: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:39,333 INFO L273 TraceCheckUtils]: 20: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:39,333 INFO L273 TraceCheckUtils]: 21: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:39,333 INFO L273 TraceCheckUtils]: 22: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:39,333 INFO L273 TraceCheckUtils]: 23: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:39,334 INFO L273 TraceCheckUtils]: 24: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:39,334 INFO L273 TraceCheckUtils]: 25: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:39,334 INFO L273 TraceCheckUtils]: 26: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:39,334 INFO L273 TraceCheckUtils]: 27: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:39,334 INFO L273 TraceCheckUtils]: 28: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:39,334 INFO L273 TraceCheckUtils]: 29: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:39,334 INFO L273 TraceCheckUtils]: 30: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:39,334 INFO L273 TraceCheckUtils]: 31: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:39,334 INFO L273 TraceCheckUtils]: 32: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:39,334 INFO L273 TraceCheckUtils]: 33: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:39,335 INFO L273 TraceCheckUtils]: 34: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:39,335 INFO L273 TraceCheckUtils]: 35: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:39,335 INFO L273 TraceCheckUtils]: 36: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:39,335 INFO L273 TraceCheckUtils]: 37: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:39,335 INFO L273 TraceCheckUtils]: 38: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:39,335 INFO L273 TraceCheckUtils]: 39: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:39,335 INFO L273 TraceCheckUtils]: 40: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:39,335 INFO L273 TraceCheckUtils]: 41: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:39,335 INFO L273 TraceCheckUtils]: 42: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:39,335 INFO L273 TraceCheckUtils]: 43: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:39,336 INFO L273 TraceCheckUtils]: 44: Hoare triple {36022#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {36022#true} is VALID [2018-11-23 12:17:39,336 INFO L273 TraceCheckUtils]: 45: Hoare triple {36022#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {36022#true} is VALID [2018-11-23 12:17:39,336 INFO L273 TraceCheckUtils]: 46: Hoare triple {36022#true} assume !(~i~1 < 20); {36022#true} is VALID [2018-11-23 12:17:39,336 INFO L256 TraceCheckUtils]: 47: Hoare triple {36022#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {36022#true} is VALID [2018-11-23 12:17:39,336 INFO L273 TraceCheckUtils]: 48: Hoare triple {36022#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {36022#true} is VALID [2018-11-23 12:17:39,336 INFO L273 TraceCheckUtils]: 49: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,336 INFO L273 TraceCheckUtils]: 50: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,336 INFO L273 TraceCheckUtils]: 51: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,336 INFO L273 TraceCheckUtils]: 52: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,336 INFO L273 TraceCheckUtils]: 53: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,337 INFO L273 TraceCheckUtils]: 54: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,337 INFO L273 TraceCheckUtils]: 55: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,337 INFO L273 TraceCheckUtils]: 56: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,337 INFO L273 TraceCheckUtils]: 57: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,337 INFO L273 TraceCheckUtils]: 58: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,337 INFO L273 TraceCheckUtils]: 59: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,337 INFO L273 TraceCheckUtils]: 60: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,337 INFO L273 TraceCheckUtils]: 61: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,337 INFO L273 TraceCheckUtils]: 62: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,337 INFO L273 TraceCheckUtils]: 63: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,338 INFO L273 TraceCheckUtils]: 64: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,338 INFO L273 TraceCheckUtils]: 65: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,338 INFO L273 TraceCheckUtils]: 66: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,338 INFO L273 TraceCheckUtils]: 67: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,338 INFO L273 TraceCheckUtils]: 68: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,338 INFO L273 TraceCheckUtils]: 69: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,338 INFO L273 TraceCheckUtils]: 70: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,338 INFO L273 TraceCheckUtils]: 71: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,338 INFO L273 TraceCheckUtils]: 72: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,338 INFO L273 TraceCheckUtils]: 73: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,339 INFO L273 TraceCheckUtils]: 74: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,339 INFO L273 TraceCheckUtils]: 75: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,339 INFO L273 TraceCheckUtils]: 76: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,339 INFO L273 TraceCheckUtils]: 77: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,339 INFO L273 TraceCheckUtils]: 78: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,339 INFO L273 TraceCheckUtils]: 79: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,339 INFO L273 TraceCheckUtils]: 80: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,339 INFO L273 TraceCheckUtils]: 81: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,339 INFO L273 TraceCheckUtils]: 82: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,340 INFO L273 TraceCheckUtils]: 83: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,340 INFO L273 TraceCheckUtils]: 84: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,340 INFO L273 TraceCheckUtils]: 85: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,340 INFO L273 TraceCheckUtils]: 86: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,340 INFO L273 TraceCheckUtils]: 87: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,340 INFO L273 TraceCheckUtils]: 88: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,340 INFO L273 TraceCheckUtils]: 89: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,340 INFO L273 TraceCheckUtils]: 90: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,340 INFO L273 TraceCheckUtils]: 91: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,340 INFO L273 TraceCheckUtils]: 92: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,341 INFO L273 TraceCheckUtils]: 93: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,341 INFO L273 TraceCheckUtils]: 94: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,341 INFO L273 TraceCheckUtils]: 95: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,341 INFO L273 TraceCheckUtils]: 96: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,341 INFO L273 TraceCheckUtils]: 97: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,341 INFO L273 TraceCheckUtils]: 98: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,341 INFO L273 TraceCheckUtils]: 99: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,341 INFO L273 TraceCheckUtils]: 100: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,341 INFO L273 TraceCheckUtils]: 101: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,341 INFO L273 TraceCheckUtils]: 102: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,342 INFO L273 TraceCheckUtils]: 103: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,342 INFO L273 TraceCheckUtils]: 104: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,342 INFO L273 TraceCheckUtils]: 105: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,342 INFO L273 TraceCheckUtils]: 106: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,342 INFO L273 TraceCheckUtils]: 107: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,342 INFO L273 TraceCheckUtils]: 108: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,342 INFO L273 TraceCheckUtils]: 109: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,342 INFO L273 TraceCheckUtils]: 110: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,342 INFO L273 TraceCheckUtils]: 111: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,342 INFO L273 TraceCheckUtils]: 112: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,343 INFO L273 TraceCheckUtils]: 113: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,343 INFO L273 TraceCheckUtils]: 114: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,343 INFO L273 TraceCheckUtils]: 115: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,343 INFO L273 TraceCheckUtils]: 116: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,343 INFO L273 TraceCheckUtils]: 117: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,343 INFO L273 TraceCheckUtils]: 118: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,343 INFO L273 TraceCheckUtils]: 119: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,343 INFO L273 TraceCheckUtils]: 120: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,343 INFO L273 TraceCheckUtils]: 121: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,343 INFO L273 TraceCheckUtils]: 122: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,344 INFO L273 TraceCheckUtils]: 123: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,344 INFO L273 TraceCheckUtils]: 124: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,344 INFO L273 TraceCheckUtils]: 125: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,344 INFO L273 TraceCheckUtils]: 126: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,344 INFO L273 TraceCheckUtils]: 127: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,344 INFO L273 TraceCheckUtils]: 128: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,344 INFO L273 TraceCheckUtils]: 129: Hoare triple {36022#true} assume !(~i~0 < 20); {36022#true} is VALID [2018-11-23 12:17:39,344 INFO L273 TraceCheckUtils]: 130: Hoare triple {36022#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {36022#true} is VALID [2018-11-23 12:17:39,344 INFO L273 TraceCheckUtils]: 131: Hoare triple {36022#true} assume true; {36022#true} is VALID [2018-11-23 12:17:39,344 INFO L268 TraceCheckUtils]: 132: Hoare quadruple {36022#true} {36022#true} #77#return; {36022#true} is VALID [2018-11-23 12:17:39,345 INFO L273 TraceCheckUtils]: 133: Hoare triple {36022#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {36022#true} is VALID [2018-11-23 12:17:39,345 INFO L256 TraceCheckUtils]: 134: Hoare triple {36022#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {36022#true} is VALID [2018-11-23 12:17:39,345 INFO L273 TraceCheckUtils]: 135: Hoare triple {36022#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {36022#true} is VALID [2018-11-23 12:17:39,345 INFO L273 TraceCheckUtils]: 136: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,345 INFO L273 TraceCheckUtils]: 137: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,345 INFO L273 TraceCheckUtils]: 138: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,345 INFO L273 TraceCheckUtils]: 139: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,345 INFO L273 TraceCheckUtils]: 140: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,345 INFO L273 TraceCheckUtils]: 141: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,345 INFO L273 TraceCheckUtils]: 142: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,346 INFO L273 TraceCheckUtils]: 143: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,346 INFO L273 TraceCheckUtils]: 144: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,346 INFO L273 TraceCheckUtils]: 145: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,346 INFO L273 TraceCheckUtils]: 146: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,346 INFO L273 TraceCheckUtils]: 147: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,346 INFO L273 TraceCheckUtils]: 148: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,346 INFO L273 TraceCheckUtils]: 149: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,346 INFO L273 TraceCheckUtils]: 150: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,346 INFO L273 TraceCheckUtils]: 151: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,346 INFO L273 TraceCheckUtils]: 152: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,347 INFO L273 TraceCheckUtils]: 153: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,347 INFO L273 TraceCheckUtils]: 154: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,347 INFO L273 TraceCheckUtils]: 155: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,347 INFO L273 TraceCheckUtils]: 156: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,347 INFO L273 TraceCheckUtils]: 157: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,347 INFO L273 TraceCheckUtils]: 158: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,347 INFO L273 TraceCheckUtils]: 159: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,347 INFO L273 TraceCheckUtils]: 160: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,347 INFO L273 TraceCheckUtils]: 161: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,347 INFO L273 TraceCheckUtils]: 162: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,348 INFO L273 TraceCheckUtils]: 163: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,348 INFO L273 TraceCheckUtils]: 164: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,348 INFO L273 TraceCheckUtils]: 165: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,348 INFO L273 TraceCheckUtils]: 166: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,348 INFO L273 TraceCheckUtils]: 167: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,348 INFO L273 TraceCheckUtils]: 168: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,348 INFO L273 TraceCheckUtils]: 169: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,348 INFO L273 TraceCheckUtils]: 170: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,348 INFO L273 TraceCheckUtils]: 171: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,348 INFO L273 TraceCheckUtils]: 172: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,349 INFO L273 TraceCheckUtils]: 173: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,349 INFO L273 TraceCheckUtils]: 174: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,349 INFO L273 TraceCheckUtils]: 175: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,349 INFO L273 TraceCheckUtils]: 176: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,349 INFO L273 TraceCheckUtils]: 177: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,349 INFO L273 TraceCheckUtils]: 178: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,349 INFO L273 TraceCheckUtils]: 179: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,349 INFO L273 TraceCheckUtils]: 180: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,349 INFO L273 TraceCheckUtils]: 181: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,350 INFO L273 TraceCheckUtils]: 182: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,350 INFO L273 TraceCheckUtils]: 183: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,350 INFO L273 TraceCheckUtils]: 184: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,350 INFO L273 TraceCheckUtils]: 185: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,350 INFO L273 TraceCheckUtils]: 186: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,350 INFO L273 TraceCheckUtils]: 187: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,350 INFO L273 TraceCheckUtils]: 188: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,350 INFO L273 TraceCheckUtils]: 189: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,350 INFO L273 TraceCheckUtils]: 190: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,350 INFO L273 TraceCheckUtils]: 191: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,351 INFO L273 TraceCheckUtils]: 192: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,351 INFO L273 TraceCheckUtils]: 193: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,351 INFO L273 TraceCheckUtils]: 194: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,351 INFO L273 TraceCheckUtils]: 195: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,351 INFO L273 TraceCheckUtils]: 196: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,351 INFO L273 TraceCheckUtils]: 197: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,351 INFO L273 TraceCheckUtils]: 198: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,351 INFO L273 TraceCheckUtils]: 199: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,351 INFO L273 TraceCheckUtils]: 200: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,351 INFO L273 TraceCheckUtils]: 201: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,352 INFO L273 TraceCheckUtils]: 202: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,352 INFO L273 TraceCheckUtils]: 203: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,352 INFO L273 TraceCheckUtils]: 204: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,352 INFO L273 TraceCheckUtils]: 205: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,352 INFO L273 TraceCheckUtils]: 206: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,352 INFO L273 TraceCheckUtils]: 207: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,352 INFO L273 TraceCheckUtils]: 208: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,352 INFO L273 TraceCheckUtils]: 209: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,352 INFO L273 TraceCheckUtils]: 210: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,352 INFO L273 TraceCheckUtils]: 211: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,353 INFO L273 TraceCheckUtils]: 212: Hoare triple {36022#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36022#true} is VALID [2018-11-23 12:17:39,353 INFO L273 TraceCheckUtils]: 213: Hoare triple {36022#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36022#true} is VALID [2018-11-23 12:17:39,353 INFO L273 TraceCheckUtils]: 214: Hoare triple {36022#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36022#true} is VALID [2018-11-23 12:17:39,353 INFO L273 TraceCheckUtils]: 215: Hoare triple {36022#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36022#true} is VALID [2018-11-23 12:17:39,353 INFO L273 TraceCheckUtils]: 216: Hoare triple {36022#true} assume !(~i~0 < 20); {36022#true} is VALID [2018-11-23 12:17:39,353 INFO L273 TraceCheckUtils]: 217: Hoare triple {36022#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {36022#true} is VALID [2018-11-23 12:17:39,353 INFO L273 TraceCheckUtils]: 218: Hoare triple {36022#true} assume true; {36022#true} is VALID [2018-11-23 12:17:39,353 INFO L268 TraceCheckUtils]: 219: Hoare quadruple {36022#true} {36022#true} #79#return; {36022#true} is VALID [2018-11-23 12:17:39,354 INFO L273 TraceCheckUtils]: 220: Hoare triple {36022#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {36699#(<= main_~i~2 0)} is VALID [2018-11-23 12:17:39,354 INFO L273 TraceCheckUtils]: 221: Hoare triple {36699#(<= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {36699#(<= main_~i~2 0)} is VALID [2018-11-23 12:17:39,355 INFO L273 TraceCheckUtils]: 222: Hoare triple {36699#(<= main_~i~2 0)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {36025#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:39,355 INFO L273 TraceCheckUtils]: 223: Hoare triple {36025#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {36025#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:39,355 INFO L273 TraceCheckUtils]: 224: Hoare triple {36025#(<= main_~i~2 1)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {36026#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:39,356 INFO L273 TraceCheckUtils]: 225: Hoare triple {36026#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {36026#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:39,356 INFO L273 TraceCheckUtils]: 226: Hoare triple {36026#(<= main_~i~2 2)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {36027#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:39,356 INFO L273 TraceCheckUtils]: 227: Hoare triple {36027#(<= main_~i~2 3)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {36027#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:39,357 INFO L273 TraceCheckUtils]: 228: Hoare triple {36027#(<= main_~i~2 3)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {36028#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:39,357 INFO L273 TraceCheckUtils]: 229: Hoare triple {36028#(<= main_~i~2 4)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {36028#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:39,358 INFO L273 TraceCheckUtils]: 230: Hoare triple {36028#(<= main_~i~2 4)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {36029#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:39,358 INFO L273 TraceCheckUtils]: 231: Hoare triple {36029#(<= main_~i~2 5)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {36029#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:39,359 INFO L273 TraceCheckUtils]: 232: Hoare triple {36029#(<= main_~i~2 5)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {36030#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:39,359 INFO L273 TraceCheckUtils]: 233: Hoare triple {36030#(<= main_~i~2 6)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {36030#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:39,360 INFO L273 TraceCheckUtils]: 234: Hoare triple {36030#(<= main_~i~2 6)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {36031#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:39,360 INFO L273 TraceCheckUtils]: 235: Hoare triple {36031#(<= main_~i~2 7)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {36031#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:39,361 INFO L273 TraceCheckUtils]: 236: Hoare triple {36031#(<= main_~i~2 7)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {36032#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:39,362 INFO L273 TraceCheckUtils]: 237: Hoare triple {36032#(<= main_~i~2 8)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {36032#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:39,362 INFO L273 TraceCheckUtils]: 238: Hoare triple {36032#(<= main_~i~2 8)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {36033#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:39,363 INFO L273 TraceCheckUtils]: 239: Hoare triple {36033#(<= main_~i~2 9)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {36033#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:39,363 INFO L273 TraceCheckUtils]: 240: Hoare triple {36033#(<= main_~i~2 9)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {36034#(<= main_~i~2 10)} is VALID [2018-11-23 12:17:39,364 INFO L273 TraceCheckUtils]: 241: Hoare triple {36034#(<= main_~i~2 10)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {36034#(<= main_~i~2 10)} is VALID [2018-11-23 12:17:39,365 INFO L273 TraceCheckUtils]: 242: Hoare triple {36034#(<= main_~i~2 10)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {36035#(<= main_~i~2 11)} is VALID [2018-11-23 12:17:39,365 INFO L273 TraceCheckUtils]: 243: Hoare triple {36035#(<= main_~i~2 11)} assume !(~i~2 < 19); {36023#false} is VALID [2018-11-23 12:17:39,365 INFO L273 TraceCheckUtils]: 244: Hoare triple {36023#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {36023#false} is VALID [2018-11-23 12:17:39,366 INFO L256 TraceCheckUtils]: 245: Hoare triple {36023#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {36023#false} is VALID [2018-11-23 12:17:39,366 INFO L273 TraceCheckUtils]: 246: Hoare triple {36023#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {36023#false} is VALID [2018-11-23 12:17:39,366 INFO L273 TraceCheckUtils]: 247: Hoare triple {36023#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36023#false} is VALID [2018-11-23 12:17:39,366 INFO L273 TraceCheckUtils]: 248: Hoare triple {36023#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36023#false} is VALID [2018-11-23 12:17:39,366 INFO L273 TraceCheckUtils]: 249: Hoare triple {36023#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36023#false} is VALID [2018-11-23 12:17:39,366 INFO L273 TraceCheckUtils]: 250: Hoare triple {36023#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36023#false} is VALID [2018-11-23 12:17:39,367 INFO L273 TraceCheckUtils]: 251: Hoare triple {36023#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36023#false} is VALID [2018-11-23 12:17:39,367 INFO L273 TraceCheckUtils]: 252: Hoare triple {36023#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36023#false} is VALID [2018-11-23 12:17:39,367 INFO L273 TraceCheckUtils]: 253: Hoare triple {36023#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36023#false} is VALID [2018-11-23 12:17:39,367 INFO L273 TraceCheckUtils]: 254: Hoare triple {36023#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36023#false} is VALID [2018-11-23 12:17:39,367 INFO L273 TraceCheckUtils]: 255: Hoare triple {36023#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36023#false} is VALID [2018-11-23 12:17:39,367 INFO L273 TraceCheckUtils]: 256: Hoare triple {36023#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36023#false} is VALID [2018-11-23 12:17:39,368 INFO L273 TraceCheckUtils]: 257: Hoare triple {36023#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36023#false} is VALID [2018-11-23 12:17:39,368 INFO L273 TraceCheckUtils]: 258: Hoare triple {36023#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36023#false} is VALID [2018-11-23 12:17:39,368 INFO L273 TraceCheckUtils]: 259: Hoare triple {36023#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36023#false} is VALID [2018-11-23 12:17:39,368 INFO L273 TraceCheckUtils]: 260: Hoare triple {36023#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36023#false} is VALID [2018-11-23 12:17:39,368 INFO L273 TraceCheckUtils]: 261: Hoare triple {36023#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36023#false} is VALID [2018-11-23 12:17:39,368 INFO L273 TraceCheckUtils]: 262: Hoare triple {36023#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36023#false} is VALID [2018-11-23 12:17:39,369 INFO L273 TraceCheckUtils]: 263: Hoare triple {36023#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36023#false} is VALID [2018-11-23 12:17:39,369 INFO L273 TraceCheckUtils]: 264: Hoare triple {36023#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36023#false} is VALID [2018-11-23 12:17:39,369 INFO L273 TraceCheckUtils]: 265: Hoare triple {36023#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36023#false} is VALID [2018-11-23 12:17:39,369 INFO L273 TraceCheckUtils]: 266: Hoare triple {36023#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36023#false} is VALID [2018-11-23 12:17:39,369 INFO L273 TraceCheckUtils]: 267: Hoare triple {36023#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36023#false} is VALID [2018-11-23 12:17:39,369 INFO L273 TraceCheckUtils]: 268: Hoare triple {36023#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36023#false} is VALID [2018-11-23 12:17:39,369 INFO L273 TraceCheckUtils]: 269: Hoare triple {36023#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36023#false} is VALID [2018-11-23 12:17:39,370 INFO L273 TraceCheckUtils]: 270: Hoare triple {36023#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36023#false} is VALID [2018-11-23 12:17:39,370 INFO L273 TraceCheckUtils]: 271: Hoare triple {36023#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36023#false} is VALID [2018-11-23 12:17:39,370 INFO L273 TraceCheckUtils]: 272: Hoare triple {36023#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36023#false} is VALID [2018-11-23 12:17:39,370 INFO L273 TraceCheckUtils]: 273: Hoare triple {36023#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36023#false} is VALID [2018-11-23 12:17:39,370 INFO L273 TraceCheckUtils]: 274: Hoare triple {36023#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36023#false} is VALID [2018-11-23 12:17:39,370 INFO L273 TraceCheckUtils]: 275: Hoare triple {36023#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36023#false} is VALID [2018-11-23 12:17:39,371 INFO L273 TraceCheckUtils]: 276: Hoare triple {36023#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36023#false} is VALID [2018-11-23 12:17:39,371 INFO L273 TraceCheckUtils]: 277: Hoare triple {36023#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36023#false} is VALID [2018-11-23 12:17:39,371 INFO L273 TraceCheckUtils]: 278: Hoare triple {36023#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36023#false} is VALID [2018-11-23 12:17:39,371 INFO L273 TraceCheckUtils]: 279: Hoare triple {36023#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36023#false} is VALID [2018-11-23 12:17:39,371 INFO L273 TraceCheckUtils]: 280: Hoare triple {36023#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36023#false} is VALID [2018-11-23 12:17:39,371 INFO L273 TraceCheckUtils]: 281: Hoare triple {36023#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36023#false} is VALID [2018-11-23 12:17:39,371 INFO L273 TraceCheckUtils]: 282: Hoare triple {36023#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36023#false} is VALID [2018-11-23 12:17:39,372 INFO L273 TraceCheckUtils]: 283: Hoare triple {36023#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36023#false} is VALID [2018-11-23 12:17:39,372 INFO L273 TraceCheckUtils]: 284: Hoare triple {36023#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36023#false} is VALID [2018-11-23 12:17:39,372 INFO L273 TraceCheckUtils]: 285: Hoare triple {36023#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36023#false} is VALID [2018-11-23 12:17:39,372 INFO L273 TraceCheckUtils]: 286: Hoare triple {36023#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36023#false} is VALID [2018-11-23 12:17:39,372 INFO L273 TraceCheckUtils]: 287: Hoare triple {36023#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36023#false} is VALID [2018-11-23 12:17:39,372 INFO L273 TraceCheckUtils]: 288: Hoare triple {36023#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36023#false} is VALID [2018-11-23 12:17:39,372 INFO L273 TraceCheckUtils]: 289: Hoare triple {36023#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36023#false} is VALID [2018-11-23 12:17:39,372 INFO L273 TraceCheckUtils]: 290: Hoare triple {36023#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36023#false} is VALID [2018-11-23 12:17:39,372 INFO L273 TraceCheckUtils]: 291: Hoare triple {36023#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36023#false} is VALID [2018-11-23 12:17:39,372 INFO L273 TraceCheckUtils]: 292: Hoare triple {36023#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36023#false} is VALID [2018-11-23 12:17:39,373 INFO L273 TraceCheckUtils]: 293: Hoare triple {36023#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36023#false} is VALID [2018-11-23 12:17:39,373 INFO L273 TraceCheckUtils]: 294: Hoare triple {36023#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36023#false} is VALID [2018-11-23 12:17:39,373 INFO L273 TraceCheckUtils]: 295: Hoare triple {36023#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36023#false} is VALID [2018-11-23 12:17:39,373 INFO L273 TraceCheckUtils]: 296: Hoare triple {36023#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36023#false} is VALID [2018-11-23 12:17:39,373 INFO L273 TraceCheckUtils]: 297: Hoare triple {36023#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36023#false} is VALID [2018-11-23 12:17:39,373 INFO L273 TraceCheckUtils]: 298: Hoare triple {36023#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36023#false} is VALID [2018-11-23 12:17:39,373 INFO L273 TraceCheckUtils]: 299: Hoare triple {36023#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36023#false} is VALID [2018-11-23 12:17:39,373 INFO L273 TraceCheckUtils]: 300: Hoare triple {36023#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36023#false} is VALID [2018-11-23 12:17:39,373 INFO L273 TraceCheckUtils]: 301: Hoare triple {36023#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36023#false} is VALID [2018-11-23 12:17:39,373 INFO L273 TraceCheckUtils]: 302: Hoare triple {36023#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36023#false} is VALID [2018-11-23 12:17:39,374 INFO L273 TraceCheckUtils]: 303: Hoare triple {36023#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36023#false} is VALID [2018-11-23 12:17:39,374 INFO L273 TraceCheckUtils]: 304: Hoare triple {36023#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36023#false} is VALID [2018-11-23 12:17:39,374 INFO L273 TraceCheckUtils]: 305: Hoare triple {36023#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36023#false} is VALID [2018-11-23 12:17:39,374 INFO L273 TraceCheckUtils]: 306: Hoare triple {36023#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36023#false} is VALID [2018-11-23 12:17:39,374 INFO L273 TraceCheckUtils]: 307: Hoare triple {36023#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36023#false} is VALID [2018-11-23 12:17:39,374 INFO L273 TraceCheckUtils]: 308: Hoare triple {36023#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36023#false} is VALID [2018-11-23 12:17:39,374 INFO L273 TraceCheckUtils]: 309: Hoare triple {36023#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36023#false} is VALID [2018-11-23 12:17:39,374 INFO L273 TraceCheckUtils]: 310: Hoare triple {36023#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36023#false} is VALID [2018-11-23 12:17:39,374 INFO L273 TraceCheckUtils]: 311: Hoare triple {36023#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36023#false} is VALID [2018-11-23 12:17:39,374 INFO L273 TraceCheckUtils]: 312: Hoare triple {36023#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36023#false} is VALID [2018-11-23 12:17:39,375 INFO L273 TraceCheckUtils]: 313: Hoare triple {36023#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36023#false} is VALID [2018-11-23 12:17:39,375 INFO L273 TraceCheckUtils]: 314: Hoare triple {36023#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36023#false} is VALID [2018-11-23 12:17:39,375 INFO L273 TraceCheckUtils]: 315: Hoare triple {36023#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36023#false} is VALID [2018-11-23 12:17:39,375 INFO L273 TraceCheckUtils]: 316: Hoare triple {36023#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36023#false} is VALID [2018-11-23 12:17:39,375 INFO L273 TraceCheckUtils]: 317: Hoare triple {36023#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36023#false} is VALID [2018-11-23 12:17:39,375 INFO L273 TraceCheckUtils]: 318: Hoare triple {36023#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36023#false} is VALID [2018-11-23 12:17:39,375 INFO L273 TraceCheckUtils]: 319: Hoare triple {36023#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36023#false} is VALID [2018-11-23 12:17:39,375 INFO L273 TraceCheckUtils]: 320: Hoare triple {36023#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36023#false} is VALID [2018-11-23 12:17:39,375 INFO L273 TraceCheckUtils]: 321: Hoare triple {36023#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36023#false} is VALID [2018-11-23 12:17:39,375 INFO L273 TraceCheckUtils]: 322: Hoare triple {36023#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36023#false} is VALID [2018-11-23 12:17:39,376 INFO L273 TraceCheckUtils]: 323: Hoare triple {36023#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {36023#false} is VALID [2018-11-23 12:17:39,376 INFO L273 TraceCheckUtils]: 324: Hoare triple {36023#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {36023#false} is VALID [2018-11-23 12:17:39,376 INFO L273 TraceCheckUtils]: 325: Hoare triple {36023#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {36023#false} is VALID [2018-11-23 12:17:39,376 INFO L273 TraceCheckUtils]: 326: Hoare triple {36023#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {36023#false} is VALID [2018-11-23 12:17:39,376 INFO L273 TraceCheckUtils]: 327: Hoare triple {36023#false} assume !(~i~0 < 20); {36023#false} is VALID [2018-11-23 12:17:39,376 INFO L273 TraceCheckUtils]: 328: Hoare triple {36023#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {36023#false} is VALID [2018-11-23 12:17:39,376 INFO L273 TraceCheckUtils]: 329: Hoare triple {36023#false} assume true; {36023#false} is VALID [2018-11-23 12:17:39,376 INFO L268 TraceCheckUtils]: 330: Hoare quadruple {36023#false} {36023#false} #81#return; {36023#false} is VALID [2018-11-23 12:17:39,376 INFO L273 TraceCheckUtils]: 331: Hoare triple {36023#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {36023#false} is VALID [2018-11-23 12:17:39,376 INFO L273 TraceCheckUtils]: 332: Hoare triple {36023#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {36023#false} is VALID [2018-11-23 12:17:39,377 INFO L273 TraceCheckUtils]: 333: Hoare triple {36023#false} assume !false; {36023#false} is VALID [2018-11-23 12:17:39,411 INFO L134 CoverageAnalysis]: Checked inductivity of 7796 backedges. 3290 proven. 121 refuted. 0 times theorem prover too weak. 4385 trivial. 0 not checked. [2018-11-23 12:17:39,434 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:17:39,434 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 15 [2018-11-23 12:17:39,435 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 334 [2018-11-23 12:17:39,435 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:17:39,435 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states. [2018-11-23 12:17:39,500 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:17:39,500 INFO L459 AbstractCegarLoop]: Interpolant automaton has 15 states [2018-11-23 12:17:39,501 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2018-11-23 12:17:39,501 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=105, Invalid=105, Unknown=0, NotChecked=0, Total=210 [2018-11-23 12:17:39,501 INFO L87 Difference]: Start difference. First operand 165 states and 189 transitions. Second operand 15 states. [2018-11-23 12:17:39,764 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:39,764 INFO L93 Difference]: Finished difference Result 259 states and 304 transitions. [2018-11-23 12:17:39,764 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2018-11-23 12:17:39,764 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 334 [2018-11-23 12:17:39,765 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:17:39,765 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2018-11-23 12:17:39,765 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 73 transitions. [2018-11-23 12:17:39,765 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2018-11-23 12:17:39,766 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 73 transitions. [2018-11-23 12:17:39,766 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 73 transitions. [2018-11-23 12:17:39,871 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:17:39,877 INFO L225 Difference]: With dead ends: 259 [2018-11-23 12:17:39,877 INFO L226 Difference]: Without dead ends: 168 [2018-11-23 12:17:39,878 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 347 GetRequests, 334 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 20 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=105, Invalid=105, Unknown=0, NotChecked=0, Total=210 [2018-11-23 12:17:39,878 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 168 states. [2018-11-23 12:17:39,961 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 168 to 167. [2018-11-23 12:17:39,961 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:17:39,961 INFO L82 GeneralOperation]: Start isEquivalent. First operand 168 states. Second operand 167 states. [2018-11-23 12:17:39,962 INFO L74 IsIncluded]: Start isIncluded. First operand 168 states. Second operand 167 states. [2018-11-23 12:17:39,962 INFO L87 Difference]: Start difference. First operand 168 states. Second operand 167 states. [2018-11-23 12:17:39,965 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:39,965 INFO L93 Difference]: Finished difference Result 168 states and 192 transitions. [2018-11-23 12:17:39,965 INFO L276 IsEmpty]: Start isEmpty. Operand 168 states and 192 transitions. [2018-11-23 12:17:39,965 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:39,966 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:39,966 INFO L74 IsIncluded]: Start isIncluded. First operand 167 states. Second operand 168 states. [2018-11-23 12:17:39,966 INFO L87 Difference]: Start difference. First operand 167 states. Second operand 168 states. [2018-11-23 12:17:39,968 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:39,969 INFO L93 Difference]: Finished difference Result 168 states and 192 transitions. [2018-11-23 12:17:39,969 INFO L276 IsEmpty]: Start isEmpty. Operand 168 states and 192 transitions. [2018-11-23 12:17:39,969 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:39,969 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:39,969 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:17:39,969 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:17:39,970 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 167 states. [2018-11-23 12:17:39,972 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 167 states to 167 states and 191 transitions. [2018-11-23 12:17:39,973 INFO L78 Accepts]: Start accepts. Automaton has 167 states and 191 transitions. Word has length 334 [2018-11-23 12:17:39,973 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:17:39,973 INFO L480 AbstractCegarLoop]: Abstraction has 167 states and 191 transitions. [2018-11-23 12:17:39,973 INFO L481 AbstractCegarLoop]: Interpolant automaton has 15 states. [2018-11-23 12:17:39,973 INFO L276 IsEmpty]: Start isEmpty. Operand 167 states and 191 transitions. [2018-11-23 12:17:39,975 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 337 [2018-11-23 12:17:39,975 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:17:39,975 INFO L402 BasicCegarLoop]: trace histogram [60, 60, 60, 60, 20, 20, 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] [2018-11-23 12:17:39,976 INFO L423 AbstractCegarLoop]: === Iteration 39 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:17:39,976 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:17:39,976 INFO L82 PathProgramCache]: Analyzing trace with hash 1400665527, now seen corresponding path program 36 times [2018-11-23 12:17:39,976 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:17:39,976 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:17:39,977 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:39,977 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:17:39,977 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:40,034 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:40,415 INFO L256 TraceCheckUtils]: 0: Hoare triple {37949#true} call ULTIMATE.init(); {37949#true} is VALID [2018-11-23 12:17:40,415 INFO L273 TraceCheckUtils]: 1: Hoare triple {37949#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {37949#true} is VALID [2018-11-23 12:17:40,415 INFO L273 TraceCheckUtils]: 2: Hoare triple {37949#true} assume true; {37949#true} is VALID [2018-11-23 12:17:40,416 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {37949#true} {37949#true} #73#return; {37949#true} is VALID [2018-11-23 12:17:40,416 INFO L256 TraceCheckUtils]: 4: Hoare triple {37949#true} call #t~ret14 := main(); {37949#true} is VALID [2018-11-23 12:17:40,416 INFO L273 TraceCheckUtils]: 5: Hoare triple {37949#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {37949#true} is VALID [2018-11-23 12:17:40,416 INFO L273 TraceCheckUtils]: 6: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:40,416 INFO L273 TraceCheckUtils]: 7: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:40,416 INFO L273 TraceCheckUtils]: 8: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:40,417 INFO L273 TraceCheckUtils]: 9: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:40,417 INFO L273 TraceCheckUtils]: 10: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:40,417 INFO L273 TraceCheckUtils]: 11: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:40,417 INFO L273 TraceCheckUtils]: 12: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:40,417 INFO L273 TraceCheckUtils]: 13: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:40,418 INFO L273 TraceCheckUtils]: 14: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:40,418 INFO L273 TraceCheckUtils]: 15: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:40,418 INFO L273 TraceCheckUtils]: 16: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:40,418 INFO L273 TraceCheckUtils]: 17: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:40,418 INFO L273 TraceCheckUtils]: 18: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:40,418 INFO L273 TraceCheckUtils]: 19: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:40,418 INFO L273 TraceCheckUtils]: 20: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:40,418 INFO L273 TraceCheckUtils]: 21: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:40,419 INFO L273 TraceCheckUtils]: 22: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:40,419 INFO L273 TraceCheckUtils]: 23: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:40,419 INFO L273 TraceCheckUtils]: 24: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:40,419 INFO L273 TraceCheckUtils]: 25: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:40,419 INFO L273 TraceCheckUtils]: 26: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:40,419 INFO L273 TraceCheckUtils]: 27: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:40,419 INFO L273 TraceCheckUtils]: 28: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:40,419 INFO L273 TraceCheckUtils]: 29: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:40,419 INFO L273 TraceCheckUtils]: 30: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:40,419 INFO L273 TraceCheckUtils]: 31: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:40,420 INFO L273 TraceCheckUtils]: 32: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:40,420 INFO L273 TraceCheckUtils]: 33: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:40,420 INFO L273 TraceCheckUtils]: 34: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:40,420 INFO L273 TraceCheckUtils]: 35: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:40,420 INFO L273 TraceCheckUtils]: 36: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:40,420 INFO L273 TraceCheckUtils]: 37: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:40,420 INFO L273 TraceCheckUtils]: 38: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:40,420 INFO L273 TraceCheckUtils]: 39: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:40,420 INFO L273 TraceCheckUtils]: 40: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:40,421 INFO L273 TraceCheckUtils]: 41: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:40,421 INFO L273 TraceCheckUtils]: 42: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:40,421 INFO L273 TraceCheckUtils]: 43: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:40,421 INFO L273 TraceCheckUtils]: 44: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:40,421 INFO L273 TraceCheckUtils]: 45: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:40,421 INFO L273 TraceCheckUtils]: 46: Hoare triple {37949#true} assume !(~i~1 < 20); {37949#true} is VALID [2018-11-23 12:17:40,421 INFO L256 TraceCheckUtils]: 47: Hoare triple {37949#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {37949#true} is VALID [2018-11-23 12:17:40,421 INFO L273 TraceCheckUtils]: 48: Hoare triple {37949#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {37949#true} is VALID [2018-11-23 12:17:40,421 INFO L273 TraceCheckUtils]: 49: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,421 INFO L273 TraceCheckUtils]: 50: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,422 INFO L273 TraceCheckUtils]: 51: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,422 INFO L273 TraceCheckUtils]: 52: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,422 INFO L273 TraceCheckUtils]: 53: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,422 INFO L273 TraceCheckUtils]: 54: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,422 INFO L273 TraceCheckUtils]: 55: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,422 INFO L273 TraceCheckUtils]: 56: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,422 INFO L273 TraceCheckUtils]: 57: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,422 INFO L273 TraceCheckUtils]: 58: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,422 INFO L273 TraceCheckUtils]: 59: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,422 INFO L273 TraceCheckUtils]: 60: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,423 INFO L273 TraceCheckUtils]: 61: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,423 INFO L273 TraceCheckUtils]: 62: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,423 INFO L273 TraceCheckUtils]: 63: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,423 INFO L273 TraceCheckUtils]: 64: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,423 INFO L273 TraceCheckUtils]: 65: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,423 INFO L273 TraceCheckUtils]: 66: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,423 INFO L273 TraceCheckUtils]: 67: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,423 INFO L273 TraceCheckUtils]: 68: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,423 INFO L273 TraceCheckUtils]: 69: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,423 INFO L273 TraceCheckUtils]: 70: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,424 INFO L273 TraceCheckUtils]: 71: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,424 INFO L273 TraceCheckUtils]: 72: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,424 INFO L273 TraceCheckUtils]: 73: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,424 INFO L273 TraceCheckUtils]: 74: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,424 INFO L273 TraceCheckUtils]: 75: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,424 INFO L273 TraceCheckUtils]: 76: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,424 INFO L273 TraceCheckUtils]: 77: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,424 INFO L273 TraceCheckUtils]: 78: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,424 INFO L273 TraceCheckUtils]: 79: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,424 INFO L273 TraceCheckUtils]: 80: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,425 INFO L273 TraceCheckUtils]: 81: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,425 INFO L273 TraceCheckUtils]: 82: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,425 INFO L273 TraceCheckUtils]: 83: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,425 INFO L273 TraceCheckUtils]: 84: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,425 INFO L273 TraceCheckUtils]: 85: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,425 INFO L273 TraceCheckUtils]: 86: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,425 INFO L273 TraceCheckUtils]: 87: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,425 INFO L273 TraceCheckUtils]: 88: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,425 INFO L273 TraceCheckUtils]: 89: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,425 INFO L273 TraceCheckUtils]: 90: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,426 INFO L273 TraceCheckUtils]: 91: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,426 INFO L273 TraceCheckUtils]: 92: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,426 INFO L273 TraceCheckUtils]: 93: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,426 INFO L273 TraceCheckUtils]: 94: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,426 INFO L273 TraceCheckUtils]: 95: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,426 INFO L273 TraceCheckUtils]: 96: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,426 INFO L273 TraceCheckUtils]: 97: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,426 INFO L273 TraceCheckUtils]: 98: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,426 INFO L273 TraceCheckUtils]: 99: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,426 INFO L273 TraceCheckUtils]: 100: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,427 INFO L273 TraceCheckUtils]: 101: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,427 INFO L273 TraceCheckUtils]: 102: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,427 INFO L273 TraceCheckUtils]: 103: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,427 INFO L273 TraceCheckUtils]: 104: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,427 INFO L273 TraceCheckUtils]: 105: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,427 INFO L273 TraceCheckUtils]: 106: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,427 INFO L273 TraceCheckUtils]: 107: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,427 INFO L273 TraceCheckUtils]: 108: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,427 INFO L273 TraceCheckUtils]: 109: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,428 INFO L273 TraceCheckUtils]: 110: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,428 INFO L273 TraceCheckUtils]: 111: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,428 INFO L273 TraceCheckUtils]: 112: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,428 INFO L273 TraceCheckUtils]: 113: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,428 INFO L273 TraceCheckUtils]: 114: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,428 INFO L273 TraceCheckUtils]: 115: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,428 INFO L273 TraceCheckUtils]: 116: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,428 INFO L273 TraceCheckUtils]: 117: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,428 INFO L273 TraceCheckUtils]: 118: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,428 INFO L273 TraceCheckUtils]: 119: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,429 INFO L273 TraceCheckUtils]: 120: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,429 INFO L273 TraceCheckUtils]: 121: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,429 INFO L273 TraceCheckUtils]: 122: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,429 INFO L273 TraceCheckUtils]: 123: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,429 INFO L273 TraceCheckUtils]: 124: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,429 INFO L273 TraceCheckUtils]: 125: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,429 INFO L273 TraceCheckUtils]: 126: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,429 INFO L273 TraceCheckUtils]: 127: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,429 INFO L273 TraceCheckUtils]: 128: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,429 INFO L273 TraceCheckUtils]: 129: Hoare triple {37949#true} assume !(~i~0 < 20); {37949#true} is VALID [2018-11-23 12:17:40,430 INFO L273 TraceCheckUtils]: 130: Hoare triple {37949#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {37949#true} is VALID [2018-11-23 12:17:40,430 INFO L273 TraceCheckUtils]: 131: Hoare triple {37949#true} assume true; {37949#true} is VALID [2018-11-23 12:17:40,430 INFO L268 TraceCheckUtils]: 132: Hoare quadruple {37949#true} {37949#true} #77#return; {37949#true} is VALID [2018-11-23 12:17:40,430 INFO L273 TraceCheckUtils]: 133: Hoare triple {37949#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {37949#true} is VALID [2018-11-23 12:17:40,430 INFO L256 TraceCheckUtils]: 134: Hoare triple {37949#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {37949#true} is VALID [2018-11-23 12:17:40,430 INFO L273 TraceCheckUtils]: 135: Hoare triple {37949#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {37949#true} is VALID [2018-11-23 12:17:40,430 INFO L273 TraceCheckUtils]: 136: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,430 INFO L273 TraceCheckUtils]: 137: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,430 INFO L273 TraceCheckUtils]: 138: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,430 INFO L273 TraceCheckUtils]: 139: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,431 INFO L273 TraceCheckUtils]: 140: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,431 INFO L273 TraceCheckUtils]: 141: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,431 INFO L273 TraceCheckUtils]: 142: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,431 INFO L273 TraceCheckUtils]: 143: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,431 INFO L273 TraceCheckUtils]: 144: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,431 INFO L273 TraceCheckUtils]: 145: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,431 INFO L273 TraceCheckUtils]: 146: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,431 INFO L273 TraceCheckUtils]: 147: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,431 INFO L273 TraceCheckUtils]: 148: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,432 INFO L273 TraceCheckUtils]: 149: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,432 INFO L273 TraceCheckUtils]: 150: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,432 INFO L273 TraceCheckUtils]: 151: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,432 INFO L273 TraceCheckUtils]: 152: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,432 INFO L273 TraceCheckUtils]: 153: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,432 INFO L273 TraceCheckUtils]: 154: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,432 INFO L273 TraceCheckUtils]: 155: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,432 INFO L273 TraceCheckUtils]: 156: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,432 INFO L273 TraceCheckUtils]: 157: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,432 INFO L273 TraceCheckUtils]: 158: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,433 INFO L273 TraceCheckUtils]: 159: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,433 INFO L273 TraceCheckUtils]: 160: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,433 INFO L273 TraceCheckUtils]: 161: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,433 INFO L273 TraceCheckUtils]: 162: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,433 INFO L273 TraceCheckUtils]: 163: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,433 INFO L273 TraceCheckUtils]: 164: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,433 INFO L273 TraceCheckUtils]: 165: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,433 INFO L273 TraceCheckUtils]: 166: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,433 INFO L273 TraceCheckUtils]: 167: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,433 INFO L273 TraceCheckUtils]: 168: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,434 INFO L273 TraceCheckUtils]: 169: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,434 INFO L273 TraceCheckUtils]: 170: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,434 INFO L273 TraceCheckUtils]: 171: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,434 INFO L273 TraceCheckUtils]: 172: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,434 INFO L273 TraceCheckUtils]: 173: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,434 INFO L273 TraceCheckUtils]: 174: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,434 INFO L273 TraceCheckUtils]: 175: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,434 INFO L273 TraceCheckUtils]: 176: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,434 INFO L273 TraceCheckUtils]: 177: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,434 INFO L273 TraceCheckUtils]: 178: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,435 INFO L273 TraceCheckUtils]: 179: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,435 INFO L273 TraceCheckUtils]: 180: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,435 INFO L273 TraceCheckUtils]: 181: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,435 INFO L273 TraceCheckUtils]: 182: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,435 INFO L273 TraceCheckUtils]: 183: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,435 INFO L273 TraceCheckUtils]: 184: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,435 INFO L273 TraceCheckUtils]: 185: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,435 INFO L273 TraceCheckUtils]: 186: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,435 INFO L273 TraceCheckUtils]: 187: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,435 INFO L273 TraceCheckUtils]: 188: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,436 INFO L273 TraceCheckUtils]: 189: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,436 INFO L273 TraceCheckUtils]: 190: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,436 INFO L273 TraceCheckUtils]: 191: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,436 INFO L273 TraceCheckUtils]: 192: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,436 INFO L273 TraceCheckUtils]: 193: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,436 INFO L273 TraceCheckUtils]: 194: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,436 INFO L273 TraceCheckUtils]: 195: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,436 INFO L273 TraceCheckUtils]: 196: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,436 INFO L273 TraceCheckUtils]: 197: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,436 INFO L273 TraceCheckUtils]: 198: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,437 INFO L273 TraceCheckUtils]: 199: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,437 INFO L273 TraceCheckUtils]: 200: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,437 INFO L273 TraceCheckUtils]: 201: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,437 INFO L273 TraceCheckUtils]: 202: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,437 INFO L273 TraceCheckUtils]: 203: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,437 INFO L273 TraceCheckUtils]: 204: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,437 INFO L273 TraceCheckUtils]: 205: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,437 INFO L273 TraceCheckUtils]: 206: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,437 INFO L273 TraceCheckUtils]: 207: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,437 INFO L273 TraceCheckUtils]: 208: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,438 INFO L273 TraceCheckUtils]: 209: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,438 INFO L273 TraceCheckUtils]: 210: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,438 INFO L273 TraceCheckUtils]: 211: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,438 INFO L273 TraceCheckUtils]: 212: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,438 INFO L273 TraceCheckUtils]: 213: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,438 INFO L273 TraceCheckUtils]: 214: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,438 INFO L273 TraceCheckUtils]: 215: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,438 INFO L273 TraceCheckUtils]: 216: Hoare triple {37949#true} assume !(~i~0 < 20); {37949#true} is VALID [2018-11-23 12:17:40,438 INFO L273 TraceCheckUtils]: 217: Hoare triple {37949#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {37949#true} is VALID [2018-11-23 12:17:40,438 INFO L273 TraceCheckUtils]: 218: Hoare triple {37949#true} assume true; {37949#true} is VALID [2018-11-23 12:17:40,439 INFO L268 TraceCheckUtils]: 219: Hoare quadruple {37949#true} {37949#true} #79#return; {37949#true} is VALID [2018-11-23 12:17:40,439 INFO L273 TraceCheckUtils]: 220: Hoare triple {37949#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {37951#(= main_~i~2 0)} is VALID [2018-11-23 12:17:40,439 INFO L273 TraceCheckUtils]: 221: Hoare triple {37951#(= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {37951#(= main_~i~2 0)} is VALID [2018-11-23 12:17:40,440 INFO L273 TraceCheckUtils]: 222: Hoare triple {37951#(= main_~i~2 0)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {37952#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:40,440 INFO L273 TraceCheckUtils]: 223: Hoare triple {37952#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {37952#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:40,441 INFO L273 TraceCheckUtils]: 224: Hoare triple {37952#(<= main_~i~2 1)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {37953#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:40,441 INFO L273 TraceCheckUtils]: 225: Hoare triple {37953#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {37953#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:40,441 INFO L273 TraceCheckUtils]: 226: Hoare triple {37953#(<= main_~i~2 2)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {37954#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:40,442 INFO L273 TraceCheckUtils]: 227: Hoare triple {37954#(<= main_~i~2 3)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {37954#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:40,442 INFO L273 TraceCheckUtils]: 228: Hoare triple {37954#(<= main_~i~2 3)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {37955#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:40,442 INFO L273 TraceCheckUtils]: 229: Hoare triple {37955#(<= main_~i~2 4)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {37955#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:40,443 INFO L273 TraceCheckUtils]: 230: Hoare triple {37955#(<= main_~i~2 4)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {37956#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:40,443 INFO L273 TraceCheckUtils]: 231: Hoare triple {37956#(<= main_~i~2 5)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {37956#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:40,444 INFO L273 TraceCheckUtils]: 232: Hoare triple {37956#(<= main_~i~2 5)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {37957#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:40,444 INFO L273 TraceCheckUtils]: 233: Hoare triple {37957#(<= main_~i~2 6)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {37957#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:40,445 INFO L273 TraceCheckUtils]: 234: Hoare triple {37957#(<= main_~i~2 6)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {37958#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:40,445 INFO L273 TraceCheckUtils]: 235: Hoare triple {37958#(<= main_~i~2 7)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {37958#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:40,446 INFO L273 TraceCheckUtils]: 236: Hoare triple {37958#(<= main_~i~2 7)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {37959#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:40,447 INFO L273 TraceCheckUtils]: 237: Hoare triple {37959#(<= main_~i~2 8)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {37959#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:40,447 INFO L273 TraceCheckUtils]: 238: Hoare triple {37959#(<= main_~i~2 8)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {37960#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:40,448 INFO L273 TraceCheckUtils]: 239: Hoare triple {37960#(<= main_~i~2 9)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {37960#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:40,449 INFO L273 TraceCheckUtils]: 240: Hoare triple {37960#(<= main_~i~2 9)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {37961#(<= main_~i~2 10)} is VALID [2018-11-23 12:17:40,449 INFO L273 TraceCheckUtils]: 241: Hoare triple {37961#(<= main_~i~2 10)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {37961#(<= main_~i~2 10)} is VALID [2018-11-23 12:17:40,450 INFO L273 TraceCheckUtils]: 242: Hoare triple {37961#(<= main_~i~2 10)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {37962#(<= main_~i~2 11)} is VALID [2018-11-23 12:17:40,450 INFO L273 TraceCheckUtils]: 243: Hoare triple {37962#(<= main_~i~2 11)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {37962#(<= main_~i~2 11)} is VALID [2018-11-23 12:17:40,451 INFO L273 TraceCheckUtils]: 244: Hoare triple {37962#(<= main_~i~2 11)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {37963#(<= main_~i~2 12)} is VALID [2018-11-23 12:17:40,452 INFO L273 TraceCheckUtils]: 245: Hoare triple {37963#(<= main_~i~2 12)} assume !(~i~2 < 19); {37950#false} is VALID [2018-11-23 12:17:40,452 INFO L273 TraceCheckUtils]: 246: Hoare triple {37950#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {37950#false} is VALID [2018-11-23 12:17:40,452 INFO L256 TraceCheckUtils]: 247: Hoare triple {37950#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {37949#true} is VALID [2018-11-23 12:17:40,452 INFO L273 TraceCheckUtils]: 248: Hoare triple {37949#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {37949#true} is VALID [2018-11-23 12:17:40,453 INFO L273 TraceCheckUtils]: 249: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,453 INFO L273 TraceCheckUtils]: 250: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,453 INFO L273 TraceCheckUtils]: 251: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,453 INFO L273 TraceCheckUtils]: 252: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,453 INFO L273 TraceCheckUtils]: 253: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,453 INFO L273 TraceCheckUtils]: 254: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,454 INFO L273 TraceCheckUtils]: 255: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,454 INFO L273 TraceCheckUtils]: 256: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,454 INFO L273 TraceCheckUtils]: 257: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,454 INFO L273 TraceCheckUtils]: 258: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,454 INFO L273 TraceCheckUtils]: 259: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,455 INFO L273 TraceCheckUtils]: 260: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,455 INFO L273 TraceCheckUtils]: 261: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,455 INFO L273 TraceCheckUtils]: 262: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,455 INFO L273 TraceCheckUtils]: 263: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,455 INFO L273 TraceCheckUtils]: 264: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,455 INFO L273 TraceCheckUtils]: 265: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,456 INFO L273 TraceCheckUtils]: 266: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,456 INFO L273 TraceCheckUtils]: 267: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,456 INFO L273 TraceCheckUtils]: 268: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,456 INFO L273 TraceCheckUtils]: 269: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,456 INFO L273 TraceCheckUtils]: 270: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,456 INFO L273 TraceCheckUtils]: 271: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,456 INFO L273 TraceCheckUtils]: 272: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,457 INFO L273 TraceCheckUtils]: 273: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,457 INFO L273 TraceCheckUtils]: 274: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,457 INFO L273 TraceCheckUtils]: 275: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,457 INFO L273 TraceCheckUtils]: 276: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,457 INFO L273 TraceCheckUtils]: 277: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,457 INFO L273 TraceCheckUtils]: 278: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,457 INFO L273 TraceCheckUtils]: 279: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,457 INFO L273 TraceCheckUtils]: 280: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,457 INFO L273 TraceCheckUtils]: 281: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,457 INFO L273 TraceCheckUtils]: 282: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,458 INFO L273 TraceCheckUtils]: 283: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,458 INFO L273 TraceCheckUtils]: 284: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,458 INFO L273 TraceCheckUtils]: 285: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,458 INFO L273 TraceCheckUtils]: 286: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,458 INFO L273 TraceCheckUtils]: 287: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,458 INFO L273 TraceCheckUtils]: 288: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,458 INFO L273 TraceCheckUtils]: 289: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,458 INFO L273 TraceCheckUtils]: 290: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,458 INFO L273 TraceCheckUtils]: 291: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,458 INFO L273 TraceCheckUtils]: 292: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,459 INFO L273 TraceCheckUtils]: 293: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,459 INFO L273 TraceCheckUtils]: 294: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,459 INFO L273 TraceCheckUtils]: 295: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,459 INFO L273 TraceCheckUtils]: 296: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,459 INFO L273 TraceCheckUtils]: 297: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,459 INFO L273 TraceCheckUtils]: 298: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,459 INFO L273 TraceCheckUtils]: 299: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,459 INFO L273 TraceCheckUtils]: 300: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,459 INFO L273 TraceCheckUtils]: 301: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,459 INFO L273 TraceCheckUtils]: 302: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,460 INFO L273 TraceCheckUtils]: 303: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,460 INFO L273 TraceCheckUtils]: 304: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,460 INFO L273 TraceCheckUtils]: 305: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,460 INFO L273 TraceCheckUtils]: 306: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,460 INFO L273 TraceCheckUtils]: 307: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,460 INFO L273 TraceCheckUtils]: 308: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,460 INFO L273 TraceCheckUtils]: 309: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,460 INFO L273 TraceCheckUtils]: 310: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,460 INFO L273 TraceCheckUtils]: 311: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,460 INFO L273 TraceCheckUtils]: 312: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,461 INFO L273 TraceCheckUtils]: 313: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,461 INFO L273 TraceCheckUtils]: 314: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,461 INFO L273 TraceCheckUtils]: 315: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,461 INFO L273 TraceCheckUtils]: 316: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,461 INFO L273 TraceCheckUtils]: 317: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,461 INFO L273 TraceCheckUtils]: 318: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,461 INFO L273 TraceCheckUtils]: 319: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,461 INFO L273 TraceCheckUtils]: 320: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,461 INFO L273 TraceCheckUtils]: 321: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,461 INFO L273 TraceCheckUtils]: 322: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,462 INFO L273 TraceCheckUtils]: 323: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,462 INFO L273 TraceCheckUtils]: 324: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,462 INFO L273 TraceCheckUtils]: 325: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:40,462 INFO L273 TraceCheckUtils]: 326: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:40,462 INFO L273 TraceCheckUtils]: 327: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:40,462 INFO L273 TraceCheckUtils]: 328: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:40,462 INFO L273 TraceCheckUtils]: 329: Hoare triple {37949#true} assume !(~i~0 < 20); {37949#true} is VALID [2018-11-23 12:17:40,462 INFO L273 TraceCheckUtils]: 330: Hoare triple {37949#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {37949#true} is VALID [2018-11-23 12:17:40,462 INFO L273 TraceCheckUtils]: 331: Hoare triple {37949#true} assume true; {37949#true} is VALID [2018-11-23 12:17:40,462 INFO L268 TraceCheckUtils]: 332: Hoare quadruple {37949#true} {37950#false} #81#return; {37950#false} is VALID [2018-11-23 12:17:40,463 INFO L273 TraceCheckUtils]: 333: Hoare triple {37950#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {37950#false} is VALID [2018-11-23 12:17:40,463 INFO L273 TraceCheckUtils]: 334: Hoare triple {37950#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {37950#false} is VALID [2018-11-23 12:17:40,463 INFO L273 TraceCheckUtils]: 335: Hoare triple {37950#false} assume !false; {37950#false} is VALID [2018-11-23 12:17:40,500 INFO L134 CoverageAnalysis]: Checked inductivity of 7819 backedges. 0 proven. 144 refuted. 0 times theorem prover too weak. 7675 trivial. 0 not checked. [2018-11-23 12:17:40,500 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:17:40,500 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 -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 38 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:17:40,510 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 12:17:42,087 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 27 check-sat command(s) [2018-11-23 12:17:42,088 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:17:42,158 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:42,163 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:17:42,503 INFO L256 TraceCheckUtils]: 0: Hoare triple {37949#true} call ULTIMATE.init(); {37949#true} is VALID [2018-11-23 12:17:42,503 INFO L273 TraceCheckUtils]: 1: Hoare triple {37949#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {37949#true} is VALID [2018-11-23 12:17:42,504 INFO L273 TraceCheckUtils]: 2: Hoare triple {37949#true} assume true; {37949#true} is VALID [2018-11-23 12:17:42,504 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {37949#true} {37949#true} #73#return; {37949#true} is VALID [2018-11-23 12:17:42,504 INFO L256 TraceCheckUtils]: 4: Hoare triple {37949#true} call #t~ret14 := main(); {37949#true} is VALID [2018-11-23 12:17:42,504 INFO L273 TraceCheckUtils]: 5: Hoare triple {37949#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {37949#true} is VALID [2018-11-23 12:17:42,504 INFO L273 TraceCheckUtils]: 6: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:42,504 INFO L273 TraceCheckUtils]: 7: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:42,504 INFO L273 TraceCheckUtils]: 8: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:42,505 INFO L273 TraceCheckUtils]: 9: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:42,505 INFO L273 TraceCheckUtils]: 10: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:42,505 INFO L273 TraceCheckUtils]: 11: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:42,505 INFO L273 TraceCheckUtils]: 12: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:42,505 INFO L273 TraceCheckUtils]: 13: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:42,505 INFO L273 TraceCheckUtils]: 14: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:42,505 INFO L273 TraceCheckUtils]: 15: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:42,505 INFO L273 TraceCheckUtils]: 16: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:42,505 INFO L273 TraceCheckUtils]: 17: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:42,505 INFO L273 TraceCheckUtils]: 18: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:42,506 INFO L273 TraceCheckUtils]: 19: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:42,506 INFO L273 TraceCheckUtils]: 20: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:42,506 INFO L273 TraceCheckUtils]: 21: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:42,506 INFO L273 TraceCheckUtils]: 22: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:42,506 INFO L273 TraceCheckUtils]: 23: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:42,506 INFO L273 TraceCheckUtils]: 24: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:42,506 INFO L273 TraceCheckUtils]: 25: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:42,506 INFO L273 TraceCheckUtils]: 26: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:42,506 INFO L273 TraceCheckUtils]: 27: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:42,507 INFO L273 TraceCheckUtils]: 28: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:42,507 INFO L273 TraceCheckUtils]: 29: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:42,507 INFO L273 TraceCheckUtils]: 30: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:42,507 INFO L273 TraceCheckUtils]: 31: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:42,507 INFO L273 TraceCheckUtils]: 32: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:42,507 INFO L273 TraceCheckUtils]: 33: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:42,507 INFO L273 TraceCheckUtils]: 34: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:42,507 INFO L273 TraceCheckUtils]: 35: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:42,507 INFO L273 TraceCheckUtils]: 36: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:42,507 INFO L273 TraceCheckUtils]: 37: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:42,508 INFO L273 TraceCheckUtils]: 38: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:42,508 INFO L273 TraceCheckUtils]: 39: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:42,508 INFO L273 TraceCheckUtils]: 40: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:42,508 INFO L273 TraceCheckUtils]: 41: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:42,508 INFO L273 TraceCheckUtils]: 42: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:42,508 INFO L273 TraceCheckUtils]: 43: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:42,508 INFO L273 TraceCheckUtils]: 44: Hoare triple {37949#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {37949#true} is VALID [2018-11-23 12:17:42,508 INFO L273 TraceCheckUtils]: 45: Hoare triple {37949#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {37949#true} is VALID [2018-11-23 12:17:42,508 INFO L273 TraceCheckUtils]: 46: Hoare triple {37949#true} assume !(~i~1 < 20); {37949#true} is VALID [2018-11-23 12:17:42,508 INFO L256 TraceCheckUtils]: 47: Hoare triple {37949#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {37949#true} is VALID [2018-11-23 12:17:42,509 INFO L273 TraceCheckUtils]: 48: Hoare triple {37949#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {37949#true} is VALID [2018-11-23 12:17:42,509 INFO L273 TraceCheckUtils]: 49: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,509 INFO L273 TraceCheckUtils]: 50: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,509 INFO L273 TraceCheckUtils]: 51: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,509 INFO L273 TraceCheckUtils]: 52: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,509 INFO L273 TraceCheckUtils]: 53: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,509 INFO L273 TraceCheckUtils]: 54: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,509 INFO L273 TraceCheckUtils]: 55: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,509 INFO L273 TraceCheckUtils]: 56: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,509 INFO L273 TraceCheckUtils]: 57: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,510 INFO L273 TraceCheckUtils]: 58: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,510 INFO L273 TraceCheckUtils]: 59: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,510 INFO L273 TraceCheckUtils]: 60: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,510 INFO L273 TraceCheckUtils]: 61: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,510 INFO L273 TraceCheckUtils]: 62: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,510 INFO L273 TraceCheckUtils]: 63: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,510 INFO L273 TraceCheckUtils]: 64: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,510 INFO L273 TraceCheckUtils]: 65: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,510 INFO L273 TraceCheckUtils]: 66: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,510 INFO L273 TraceCheckUtils]: 67: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,511 INFO L273 TraceCheckUtils]: 68: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,511 INFO L273 TraceCheckUtils]: 69: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,511 INFO L273 TraceCheckUtils]: 70: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,511 INFO L273 TraceCheckUtils]: 71: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,511 INFO L273 TraceCheckUtils]: 72: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,511 INFO L273 TraceCheckUtils]: 73: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,511 INFO L273 TraceCheckUtils]: 74: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,511 INFO L273 TraceCheckUtils]: 75: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,511 INFO L273 TraceCheckUtils]: 76: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,511 INFO L273 TraceCheckUtils]: 77: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,512 INFO L273 TraceCheckUtils]: 78: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,512 INFO L273 TraceCheckUtils]: 79: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,512 INFO L273 TraceCheckUtils]: 80: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,512 INFO L273 TraceCheckUtils]: 81: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,512 INFO L273 TraceCheckUtils]: 82: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,512 INFO L273 TraceCheckUtils]: 83: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,512 INFO L273 TraceCheckUtils]: 84: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,512 INFO L273 TraceCheckUtils]: 85: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,512 INFO L273 TraceCheckUtils]: 86: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,513 INFO L273 TraceCheckUtils]: 87: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,513 INFO L273 TraceCheckUtils]: 88: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,513 INFO L273 TraceCheckUtils]: 89: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,513 INFO L273 TraceCheckUtils]: 90: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,513 INFO L273 TraceCheckUtils]: 91: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,513 INFO L273 TraceCheckUtils]: 92: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,513 INFO L273 TraceCheckUtils]: 93: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,513 INFO L273 TraceCheckUtils]: 94: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,513 INFO L273 TraceCheckUtils]: 95: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,513 INFO L273 TraceCheckUtils]: 96: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,514 INFO L273 TraceCheckUtils]: 97: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,514 INFO L273 TraceCheckUtils]: 98: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,514 INFO L273 TraceCheckUtils]: 99: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,514 INFO L273 TraceCheckUtils]: 100: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,514 INFO L273 TraceCheckUtils]: 101: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,514 INFO L273 TraceCheckUtils]: 102: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,514 INFO L273 TraceCheckUtils]: 103: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,514 INFO L273 TraceCheckUtils]: 104: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,514 INFO L273 TraceCheckUtils]: 105: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,514 INFO L273 TraceCheckUtils]: 106: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,515 INFO L273 TraceCheckUtils]: 107: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,515 INFO L273 TraceCheckUtils]: 108: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,515 INFO L273 TraceCheckUtils]: 109: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,515 INFO L273 TraceCheckUtils]: 110: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,515 INFO L273 TraceCheckUtils]: 111: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,515 INFO L273 TraceCheckUtils]: 112: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,515 INFO L273 TraceCheckUtils]: 113: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,515 INFO L273 TraceCheckUtils]: 114: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,515 INFO L273 TraceCheckUtils]: 115: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,515 INFO L273 TraceCheckUtils]: 116: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,516 INFO L273 TraceCheckUtils]: 117: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,516 INFO L273 TraceCheckUtils]: 118: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,516 INFO L273 TraceCheckUtils]: 119: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,516 INFO L273 TraceCheckUtils]: 120: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,516 INFO L273 TraceCheckUtils]: 121: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,516 INFO L273 TraceCheckUtils]: 122: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,516 INFO L273 TraceCheckUtils]: 123: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,516 INFO L273 TraceCheckUtils]: 124: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,516 INFO L273 TraceCheckUtils]: 125: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,516 INFO L273 TraceCheckUtils]: 126: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,517 INFO L273 TraceCheckUtils]: 127: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,517 INFO L273 TraceCheckUtils]: 128: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,517 INFO L273 TraceCheckUtils]: 129: Hoare triple {37949#true} assume !(~i~0 < 20); {37949#true} is VALID [2018-11-23 12:17:42,517 INFO L273 TraceCheckUtils]: 130: Hoare triple {37949#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {37949#true} is VALID [2018-11-23 12:17:42,517 INFO L273 TraceCheckUtils]: 131: Hoare triple {37949#true} assume true; {37949#true} is VALID [2018-11-23 12:17:42,517 INFO L268 TraceCheckUtils]: 132: Hoare quadruple {37949#true} {37949#true} #77#return; {37949#true} is VALID [2018-11-23 12:17:42,517 INFO L273 TraceCheckUtils]: 133: Hoare triple {37949#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {37949#true} is VALID [2018-11-23 12:17:42,517 INFO L256 TraceCheckUtils]: 134: Hoare triple {37949#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {37949#true} is VALID [2018-11-23 12:17:42,517 INFO L273 TraceCheckUtils]: 135: Hoare triple {37949#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {37949#true} is VALID [2018-11-23 12:17:42,517 INFO L273 TraceCheckUtils]: 136: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,518 INFO L273 TraceCheckUtils]: 137: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,518 INFO L273 TraceCheckUtils]: 138: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,518 INFO L273 TraceCheckUtils]: 139: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,518 INFO L273 TraceCheckUtils]: 140: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,518 INFO L273 TraceCheckUtils]: 141: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,518 INFO L273 TraceCheckUtils]: 142: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,518 INFO L273 TraceCheckUtils]: 143: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,518 INFO L273 TraceCheckUtils]: 144: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,518 INFO L273 TraceCheckUtils]: 145: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,519 INFO L273 TraceCheckUtils]: 146: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,519 INFO L273 TraceCheckUtils]: 147: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,519 INFO L273 TraceCheckUtils]: 148: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,519 INFO L273 TraceCheckUtils]: 149: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,519 INFO L273 TraceCheckUtils]: 150: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,519 INFO L273 TraceCheckUtils]: 151: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,519 INFO L273 TraceCheckUtils]: 152: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,519 INFO L273 TraceCheckUtils]: 153: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,519 INFO L273 TraceCheckUtils]: 154: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,519 INFO L273 TraceCheckUtils]: 155: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,520 INFO L273 TraceCheckUtils]: 156: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,520 INFO L273 TraceCheckUtils]: 157: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,520 INFO L273 TraceCheckUtils]: 158: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,520 INFO L273 TraceCheckUtils]: 159: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,520 INFO L273 TraceCheckUtils]: 160: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,520 INFO L273 TraceCheckUtils]: 161: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,520 INFO L273 TraceCheckUtils]: 162: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,520 INFO L273 TraceCheckUtils]: 163: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,520 INFO L273 TraceCheckUtils]: 164: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,520 INFO L273 TraceCheckUtils]: 165: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,521 INFO L273 TraceCheckUtils]: 166: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,521 INFO L273 TraceCheckUtils]: 167: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,521 INFO L273 TraceCheckUtils]: 168: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,521 INFO L273 TraceCheckUtils]: 169: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,521 INFO L273 TraceCheckUtils]: 170: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,521 INFO L273 TraceCheckUtils]: 171: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,521 INFO L273 TraceCheckUtils]: 172: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,521 INFO L273 TraceCheckUtils]: 173: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,521 INFO L273 TraceCheckUtils]: 174: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,521 INFO L273 TraceCheckUtils]: 175: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,522 INFO L273 TraceCheckUtils]: 176: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,522 INFO L273 TraceCheckUtils]: 177: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,522 INFO L273 TraceCheckUtils]: 178: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,522 INFO L273 TraceCheckUtils]: 179: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,522 INFO L273 TraceCheckUtils]: 180: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,522 INFO L273 TraceCheckUtils]: 181: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,522 INFO L273 TraceCheckUtils]: 182: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,522 INFO L273 TraceCheckUtils]: 183: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,522 INFO L273 TraceCheckUtils]: 184: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,522 INFO L273 TraceCheckUtils]: 185: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,523 INFO L273 TraceCheckUtils]: 186: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,523 INFO L273 TraceCheckUtils]: 187: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,523 INFO L273 TraceCheckUtils]: 188: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,523 INFO L273 TraceCheckUtils]: 189: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,523 INFO L273 TraceCheckUtils]: 190: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,523 INFO L273 TraceCheckUtils]: 191: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,523 INFO L273 TraceCheckUtils]: 192: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,523 INFO L273 TraceCheckUtils]: 193: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,523 INFO L273 TraceCheckUtils]: 194: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,523 INFO L273 TraceCheckUtils]: 195: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,524 INFO L273 TraceCheckUtils]: 196: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,524 INFO L273 TraceCheckUtils]: 197: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,524 INFO L273 TraceCheckUtils]: 198: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,524 INFO L273 TraceCheckUtils]: 199: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,524 INFO L273 TraceCheckUtils]: 200: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,524 INFO L273 TraceCheckUtils]: 201: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,524 INFO L273 TraceCheckUtils]: 202: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,524 INFO L273 TraceCheckUtils]: 203: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,524 INFO L273 TraceCheckUtils]: 204: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,524 INFO L273 TraceCheckUtils]: 205: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,525 INFO L273 TraceCheckUtils]: 206: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,525 INFO L273 TraceCheckUtils]: 207: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,525 INFO L273 TraceCheckUtils]: 208: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,525 INFO L273 TraceCheckUtils]: 209: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,525 INFO L273 TraceCheckUtils]: 210: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,525 INFO L273 TraceCheckUtils]: 211: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,525 INFO L273 TraceCheckUtils]: 212: Hoare triple {37949#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37949#true} is VALID [2018-11-23 12:17:42,525 INFO L273 TraceCheckUtils]: 213: Hoare triple {37949#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37949#true} is VALID [2018-11-23 12:17:42,525 INFO L273 TraceCheckUtils]: 214: Hoare triple {37949#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37949#true} is VALID [2018-11-23 12:17:42,525 INFO L273 TraceCheckUtils]: 215: Hoare triple {37949#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37949#true} is VALID [2018-11-23 12:17:42,526 INFO L273 TraceCheckUtils]: 216: Hoare triple {37949#true} assume !(~i~0 < 20); {37949#true} is VALID [2018-11-23 12:17:42,526 INFO L273 TraceCheckUtils]: 217: Hoare triple {37949#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {37949#true} is VALID [2018-11-23 12:17:42,526 INFO L273 TraceCheckUtils]: 218: Hoare triple {37949#true} assume true; {37949#true} is VALID [2018-11-23 12:17:42,526 INFO L268 TraceCheckUtils]: 219: Hoare quadruple {37949#true} {37949#true} #79#return; {37949#true} is VALID [2018-11-23 12:17:42,526 INFO L273 TraceCheckUtils]: 220: Hoare triple {37949#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {38627#(<= main_~i~2 0)} is VALID [2018-11-23 12:17:42,527 INFO L273 TraceCheckUtils]: 221: Hoare triple {38627#(<= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {38627#(<= main_~i~2 0)} is VALID [2018-11-23 12:17:42,527 INFO L273 TraceCheckUtils]: 222: Hoare triple {38627#(<= main_~i~2 0)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {37952#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:42,528 INFO L273 TraceCheckUtils]: 223: Hoare triple {37952#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {37952#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:42,528 INFO L273 TraceCheckUtils]: 224: Hoare triple {37952#(<= main_~i~2 1)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {37953#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:42,528 INFO L273 TraceCheckUtils]: 225: Hoare triple {37953#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {37953#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:42,529 INFO L273 TraceCheckUtils]: 226: Hoare triple {37953#(<= main_~i~2 2)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {37954#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:42,529 INFO L273 TraceCheckUtils]: 227: Hoare triple {37954#(<= main_~i~2 3)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {37954#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:42,530 INFO L273 TraceCheckUtils]: 228: Hoare triple {37954#(<= main_~i~2 3)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {37955#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:42,530 INFO L273 TraceCheckUtils]: 229: Hoare triple {37955#(<= main_~i~2 4)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {37955#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:42,531 INFO L273 TraceCheckUtils]: 230: Hoare triple {37955#(<= main_~i~2 4)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {37956#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:42,531 INFO L273 TraceCheckUtils]: 231: Hoare triple {37956#(<= main_~i~2 5)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {37956#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:42,532 INFO L273 TraceCheckUtils]: 232: Hoare triple {37956#(<= main_~i~2 5)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {37957#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:42,533 INFO L273 TraceCheckUtils]: 233: Hoare triple {37957#(<= main_~i~2 6)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {37957#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:42,533 INFO L273 TraceCheckUtils]: 234: Hoare triple {37957#(<= main_~i~2 6)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {37958#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:42,534 INFO L273 TraceCheckUtils]: 235: Hoare triple {37958#(<= main_~i~2 7)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {37958#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:42,534 INFO L273 TraceCheckUtils]: 236: Hoare triple {37958#(<= main_~i~2 7)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {37959#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:42,535 INFO L273 TraceCheckUtils]: 237: Hoare triple {37959#(<= main_~i~2 8)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {37959#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:42,536 INFO L273 TraceCheckUtils]: 238: Hoare triple {37959#(<= main_~i~2 8)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {37960#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:42,536 INFO L273 TraceCheckUtils]: 239: Hoare triple {37960#(<= main_~i~2 9)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {37960#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:42,537 INFO L273 TraceCheckUtils]: 240: Hoare triple {37960#(<= main_~i~2 9)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {37961#(<= main_~i~2 10)} is VALID [2018-11-23 12:17:42,537 INFO L273 TraceCheckUtils]: 241: Hoare triple {37961#(<= main_~i~2 10)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {37961#(<= main_~i~2 10)} is VALID [2018-11-23 12:17:42,538 INFO L273 TraceCheckUtils]: 242: Hoare triple {37961#(<= main_~i~2 10)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {37962#(<= main_~i~2 11)} is VALID [2018-11-23 12:17:42,539 INFO L273 TraceCheckUtils]: 243: Hoare triple {37962#(<= main_~i~2 11)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {37962#(<= main_~i~2 11)} is VALID [2018-11-23 12:17:42,539 INFO L273 TraceCheckUtils]: 244: Hoare triple {37962#(<= main_~i~2 11)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {37963#(<= main_~i~2 12)} is VALID [2018-11-23 12:17:42,540 INFO L273 TraceCheckUtils]: 245: Hoare triple {37963#(<= main_~i~2 12)} assume !(~i~2 < 19); {37950#false} is VALID [2018-11-23 12:17:42,540 INFO L273 TraceCheckUtils]: 246: Hoare triple {37950#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {37950#false} is VALID [2018-11-23 12:17:42,540 INFO L256 TraceCheckUtils]: 247: Hoare triple {37950#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {37950#false} is VALID [2018-11-23 12:17:42,541 INFO L273 TraceCheckUtils]: 248: Hoare triple {37950#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {37950#false} is VALID [2018-11-23 12:17:42,541 INFO L273 TraceCheckUtils]: 249: Hoare triple {37950#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37950#false} is VALID [2018-11-23 12:17:42,541 INFO L273 TraceCheckUtils]: 250: Hoare triple {37950#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37950#false} is VALID [2018-11-23 12:17:42,541 INFO L273 TraceCheckUtils]: 251: Hoare triple {37950#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37950#false} is VALID [2018-11-23 12:17:42,541 INFO L273 TraceCheckUtils]: 252: Hoare triple {37950#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37950#false} is VALID [2018-11-23 12:17:42,542 INFO L273 TraceCheckUtils]: 253: Hoare triple {37950#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37950#false} is VALID [2018-11-23 12:17:42,542 INFO L273 TraceCheckUtils]: 254: Hoare triple {37950#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37950#false} is VALID [2018-11-23 12:17:42,542 INFO L273 TraceCheckUtils]: 255: Hoare triple {37950#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37950#false} is VALID [2018-11-23 12:17:42,542 INFO L273 TraceCheckUtils]: 256: Hoare triple {37950#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37950#false} is VALID [2018-11-23 12:17:42,542 INFO L273 TraceCheckUtils]: 257: Hoare triple {37950#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37950#false} is VALID [2018-11-23 12:17:42,542 INFO L273 TraceCheckUtils]: 258: Hoare triple {37950#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37950#false} is VALID [2018-11-23 12:17:42,543 INFO L273 TraceCheckUtils]: 259: Hoare triple {37950#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37950#false} is VALID [2018-11-23 12:17:42,543 INFO L273 TraceCheckUtils]: 260: Hoare triple {37950#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37950#false} is VALID [2018-11-23 12:17:42,543 INFO L273 TraceCheckUtils]: 261: Hoare triple {37950#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37950#false} is VALID [2018-11-23 12:17:42,543 INFO L273 TraceCheckUtils]: 262: Hoare triple {37950#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37950#false} is VALID [2018-11-23 12:17:42,543 INFO L273 TraceCheckUtils]: 263: Hoare triple {37950#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37950#false} is VALID [2018-11-23 12:17:42,543 INFO L273 TraceCheckUtils]: 264: Hoare triple {37950#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37950#false} is VALID [2018-11-23 12:17:42,543 INFO L273 TraceCheckUtils]: 265: Hoare triple {37950#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37950#false} is VALID [2018-11-23 12:17:42,544 INFO L273 TraceCheckUtils]: 266: Hoare triple {37950#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37950#false} is VALID [2018-11-23 12:17:42,544 INFO L273 TraceCheckUtils]: 267: Hoare triple {37950#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37950#false} is VALID [2018-11-23 12:17:42,544 INFO L273 TraceCheckUtils]: 268: Hoare triple {37950#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37950#false} is VALID [2018-11-23 12:17:42,544 INFO L273 TraceCheckUtils]: 269: Hoare triple {37950#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37950#false} is VALID [2018-11-23 12:17:42,544 INFO L273 TraceCheckUtils]: 270: Hoare triple {37950#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37950#false} is VALID [2018-11-23 12:17:42,544 INFO L273 TraceCheckUtils]: 271: Hoare triple {37950#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37950#false} is VALID [2018-11-23 12:17:42,544 INFO L273 TraceCheckUtils]: 272: Hoare triple {37950#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37950#false} is VALID [2018-11-23 12:17:42,544 INFO L273 TraceCheckUtils]: 273: Hoare triple {37950#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37950#false} is VALID [2018-11-23 12:17:42,544 INFO L273 TraceCheckUtils]: 274: Hoare triple {37950#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37950#false} is VALID [2018-11-23 12:17:42,544 INFO L273 TraceCheckUtils]: 275: Hoare triple {37950#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37950#false} is VALID [2018-11-23 12:17:42,545 INFO L273 TraceCheckUtils]: 276: Hoare triple {37950#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37950#false} is VALID [2018-11-23 12:17:42,545 INFO L273 TraceCheckUtils]: 277: Hoare triple {37950#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37950#false} is VALID [2018-11-23 12:17:42,545 INFO L273 TraceCheckUtils]: 278: Hoare triple {37950#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37950#false} is VALID [2018-11-23 12:17:42,545 INFO L273 TraceCheckUtils]: 279: Hoare triple {37950#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37950#false} is VALID [2018-11-23 12:17:42,545 INFO L273 TraceCheckUtils]: 280: Hoare triple {37950#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37950#false} is VALID [2018-11-23 12:17:42,545 INFO L273 TraceCheckUtils]: 281: Hoare triple {37950#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37950#false} is VALID [2018-11-23 12:17:42,545 INFO L273 TraceCheckUtils]: 282: Hoare triple {37950#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37950#false} is VALID [2018-11-23 12:17:42,545 INFO L273 TraceCheckUtils]: 283: Hoare triple {37950#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37950#false} is VALID [2018-11-23 12:17:42,545 INFO L273 TraceCheckUtils]: 284: Hoare triple {37950#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37950#false} is VALID [2018-11-23 12:17:42,545 INFO L273 TraceCheckUtils]: 285: Hoare triple {37950#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37950#false} is VALID [2018-11-23 12:17:42,546 INFO L273 TraceCheckUtils]: 286: Hoare triple {37950#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37950#false} is VALID [2018-11-23 12:17:42,546 INFO L273 TraceCheckUtils]: 287: Hoare triple {37950#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37950#false} is VALID [2018-11-23 12:17:42,546 INFO L273 TraceCheckUtils]: 288: Hoare triple {37950#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37950#false} is VALID [2018-11-23 12:17:42,546 INFO L273 TraceCheckUtils]: 289: Hoare triple {37950#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37950#false} is VALID [2018-11-23 12:17:42,546 INFO L273 TraceCheckUtils]: 290: Hoare triple {37950#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37950#false} is VALID [2018-11-23 12:17:42,546 INFO L273 TraceCheckUtils]: 291: Hoare triple {37950#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37950#false} is VALID [2018-11-23 12:17:42,546 INFO L273 TraceCheckUtils]: 292: Hoare triple {37950#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37950#false} is VALID [2018-11-23 12:17:42,546 INFO L273 TraceCheckUtils]: 293: Hoare triple {37950#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37950#false} is VALID [2018-11-23 12:17:42,546 INFO L273 TraceCheckUtils]: 294: Hoare triple {37950#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37950#false} is VALID [2018-11-23 12:17:42,546 INFO L273 TraceCheckUtils]: 295: Hoare triple {37950#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37950#false} is VALID [2018-11-23 12:17:42,547 INFO L273 TraceCheckUtils]: 296: Hoare triple {37950#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37950#false} is VALID [2018-11-23 12:17:42,547 INFO L273 TraceCheckUtils]: 297: Hoare triple {37950#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37950#false} is VALID [2018-11-23 12:17:42,547 INFO L273 TraceCheckUtils]: 298: Hoare triple {37950#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37950#false} is VALID [2018-11-23 12:17:42,547 INFO L273 TraceCheckUtils]: 299: Hoare triple {37950#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37950#false} is VALID [2018-11-23 12:17:42,547 INFO L273 TraceCheckUtils]: 300: Hoare triple {37950#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37950#false} is VALID [2018-11-23 12:17:42,547 INFO L273 TraceCheckUtils]: 301: Hoare triple {37950#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37950#false} is VALID [2018-11-23 12:17:42,547 INFO L273 TraceCheckUtils]: 302: Hoare triple {37950#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37950#false} is VALID [2018-11-23 12:17:42,547 INFO L273 TraceCheckUtils]: 303: Hoare triple {37950#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37950#false} is VALID [2018-11-23 12:17:42,547 INFO L273 TraceCheckUtils]: 304: Hoare triple {37950#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37950#false} is VALID [2018-11-23 12:17:42,547 INFO L273 TraceCheckUtils]: 305: Hoare triple {37950#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37950#false} is VALID [2018-11-23 12:17:42,548 INFO L273 TraceCheckUtils]: 306: Hoare triple {37950#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37950#false} is VALID [2018-11-23 12:17:42,548 INFO L273 TraceCheckUtils]: 307: Hoare triple {37950#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37950#false} is VALID [2018-11-23 12:17:42,548 INFO L273 TraceCheckUtils]: 308: Hoare triple {37950#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37950#false} is VALID [2018-11-23 12:17:42,548 INFO L273 TraceCheckUtils]: 309: Hoare triple {37950#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37950#false} is VALID [2018-11-23 12:17:42,548 INFO L273 TraceCheckUtils]: 310: Hoare triple {37950#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37950#false} is VALID [2018-11-23 12:17:42,548 INFO L273 TraceCheckUtils]: 311: Hoare triple {37950#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37950#false} is VALID [2018-11-23 12:17:42,548 INFO L273 TraceCheckUtils]: 312: Hoare triple {37950#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37950#false} is VALID [2018-11-23 12:17:42,548 INFO L273 TraceCheckUtils]: 313: Hoare triple {37950#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37950#false} is VALID [2018-11-23 12:17:42,548 INFO L273 TraceCheckUtils]: 314: Hoare triple {37950#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37950#false} is VALID [2018-11-23 12:17:42,549 INFO L273 TraceCheckUtils]: 315: Hoare triple {37950#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37950#false} is VALID [2018-11-23 12:17:42,549 INFO L273 TraceCheckUtils]: 316: Hoare triple {37950#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37950#false} is VALID [2018-11-23 12:17:42,549 INFO L273 TraceCheckUtils]: 317: Hoare triple {37950#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37950#false} is VALID [2018-11-23 12:17:42,549 INFO L273 TraceCheckUtils]: 318: Hoare triple {37950#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37950#false} is VALID [2018-11-23 12:17:42,549 INFO L273 TraceCheckUtils]: 319: Hoare triple {37950#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37950#false} is VALID [2018-11-23 12:17:42,549 INFO L273 TraceCheckUtils]: 320: Hoare triple {37950#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37950#false} is VALID [2018-11-23 12:17:42,549 INFO L273 TraceCheckUtils]: 321: Hoare triple {37950#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37950#false} is VALID [2018-11-23 12:17:42,549 INFO L273 TraceCheckUtils]: 322: Hoare triple {37950#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37950#false} is VALID [2018-11-23 12:17:42,549 INFO L273 TraceCheckUtils]: 323: Hoare triple {37950#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37950#false} is VALID [2018-11-23 12:17:42,549 INFO L273 TraceCheckUtils]: 324: Hoare triple {37950#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37950#false} is VALID [2018-11-23 12:17:42,550 INFO L273 TraceCheckUtils]: 325: Hoare triple {37950#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {37950#false} is VALID [2018-11-23 12:17:42,550 INFO L273 TraceCheckUtils]: 326: Hoare triple {37950#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {37950#false} is VALID [2018-11-23 12:17:42,550 INFO L273 TraceCheckUtils]: 327: Hoare triple {37950#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {37950#false} is VALID [2018-11-23 12:17:42,550 INFO L273 TraceCheckUtils]: 328: Hoare triple {37950#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {37950#false} is VALID [2018-11-23 12:17:42,550 INFO L273 TraceCheckUtils]: 329: Hoare triple {37950#false} assume !(~i~0 < 20); {37950#false} is VALID [2018-11-23 12:17:42,550 INFO L273 TraceCheckUtils]: 330: Hoare triple {37950#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {37950#false} is VALID [2018-11-23 12:17:42,550 INFO L273 TraceCheckUtils]: 331: Hoare triple {37950#false} assume true; {37950#false} is VALID [2018-11-23 12:17:42,550 INFO L268 TraceCheckUtils]: 332: Hoare quadruple {37950#false} {37950#false} #81#return; {37950#false} is VALID [2018-11-23 12:17:42,550 INFO L273 TraceCheckUtils]: 333: Hoare triple {37950#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {37950#false} is VALID [2018-11-23 12:17:42,550 INFO L273 TraceCheckUtils]: 334: Hoare triple {37950#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {37950#false} is VALID [2018-11-23 12:17:42,551 INFO L273 TraceCheckUtils]: 335: Hoare triple {37950#false} assume !false; {37950#false} is VALID [2018-11-23 12:17:42,589 INFO L134 CoverageAnalysis]: Checked inductivity of 7819 backedges. 3290 proven. 144 refuted. 0 times theorem prover too weak. 4385 trivial. 0 not checked. [2018-11-23 12:17:42,608 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:17:42,609 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 15] total 16 [2018-11-23 12:17:42,609 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 336 [2018-11-23 12:17:42,610 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:17:42,610 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states. [2018-11-23 12:17:42,680 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:17:42,680 INFO L459 AbstractCegarLoop]: Interpolant automaton has 16 states [2018-11-23 12:17:42,680 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2018-11-23 12:17:42,680 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=120, Invalid=120, Unknown=0, NotChecked=0, Total=240 [2018-11-23 12:17:42,681 INFO L87 Difference]: Start difference. First operand 167 states and 191 transitions. Second operand 16 states. [2018-11-23 12:17:43,081 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:43,082 INFO L93 Difference]: Finished difference Result 261 states and 306 transitions. [2018-11-23 12:17:43,082 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2018-11-23 12:17:43,082 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 336 [2018-11-23 12:17:43,082 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:17:43,082 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-23 12:17:43,083 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 75 transitions. [2018-11-23 12:17:43,083 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-23 12:17:43,083 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 75 transitions. [2018-11-23 12:17:43,084 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 75 transitions. [2018-11-23 12:17:43,150 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:17:43,154 INFO L225 Difference]: With dead ends: 261 [2018-11-23 12:17:43,154 INFO L226 Difference]: Without dead ends: 170 [2018-11-23 12:17:43,155 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 350 GetRequests, 336 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 22 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=120, Invalid=120, Unknown=0, NotChecked=0, Total=240 [2018-11-23 12:17:43,155 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 170 states. [2018-11-23 12:17:43,203 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 170 to 169. [2018-11-23 12:17:43,203 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:17:43,203 INFO L82 GeneralOperation]: Start isEquivalent. First operand 170 states. Second operand 169 states. [2018-11-23 12:17:43,203 INFO L74 IsIncluded]: Start isIncluded. First operand 170 states. Second operand 169 states. [2018-11-23 12:17:43,203 INFO L87 Difference]: Start difference. First operand 170 states. Second operand 169 states. [2018-11-23 12:17:43,206 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:43,207 INFO L93 Difference]: Finished difference Result 170 states and 194 transitions. [2018-11-23 12:17:43,207 INFO L276 IsEmpty]: Start isEmpty. Operand 170 states and 194 transitions. [2018-11-23 12:17:43,207 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:43,207 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:43,207 INFO L74 IsIncluded]: Start isIncluded. First operand 169 states. Second operand 170 states. [2018-11-23 12:17:43,207 INFO L87 Difference]: Start difference. First operand 169 states. Second operand 170 states. [2018-11-23 12:17:43,210 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:43,210 INFO L93 Difference]: Finished difference Result 170 states and 194 transitions. [2018-11-23 12:17:43,210 INFO L276 IsEmpty]: Start isEmpty. Operand 170 states and 194 transitions. [2018-11-23 12:17:43,210 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:43,210 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:43,210 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:17:43,210 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:17:43,210 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 169 states. [2018-11-23 12:17:43,213 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 169 states to 169 states and 193 transitions. [2018-11-23 12:17:43,213 INFO L78 Accepts]: Start accepts. Automaton has 169 states and 193 transitions. Word has length 336 [2018-11-23 12:17:43,213 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:17:43,213 INFO L480 AbstractCegarLoop]: Abstraction has 169 states and 193 transitions. [2018-11-23 12:17:43,213 INFO L481 AbstractCegarLoop]: Interpolant automaton has 16 states. [2018-11-23 12:17:43,213 INFO L276 IsEmpty]: Start isEmpty. Operand 169 states and 193 transitions. [2018-11-23 12:17:43,215 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 339 [2018-11-23 12:17:43,215 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:17:43,215 INFO L402 BasicCegarLoop]: trace histogram [60, 60, 60, 60, 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] [2018-11-23 12:17:43,215 INFO L423 AbstractCegarLoop]: === Iteration 40 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:17:43,215 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:17:43,216 INFO L82 PathProgramCache]: Analyzing trace with hash -113678827, now seen corresponding path program 37 times [2018-11-23 12:17:43,216 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:17:43,216 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:17:43,216 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:43,216 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:17:43,216 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:43,269 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:43,544 INFO L256 TraceCheckUtils]: 0: Hoare triple {39893#true} call ULTIMATE.init(); {39893#true} is VALID [2018-11-23 12:17:43,545 INFO L273 TraceCheckUtils]: 1: Hoare triple {39893#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {39893#true} is VALID [2018-11-23 12:17:43,545 INFO L273 TraceCheckUtils]: 2: Hoare triple {39893#true} assume true; {39893#true} is VALID [2018-11-23 12:17:43,545 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {39893#true} {39893#true} #73#return; {39893#true} is VALID [2018-11-23 12:17:43,545 INFO L256 TraceCheckUtils]: 4: Hoare triple {39893#true} call #t~ret14 := main(); {39893#true} is VALID [2018-11-23 12:17:43,545 INFO L273 TraceCheckUtils]: 5: Hoare triple {39893#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {39893#true} is VALID [2018-11-23 12:17:43,546 INFO L273 TraceCheckUtils]: 6: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:43,546 INFO L273 TraceCheckUtils]: 7: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:43,546 INFO L273 TraceCheckUtils]: 8: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:43,546 INFO L273 TraceCheckUtils]: 9: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:43,546 INFO L273 TraceCheckUtils]: 10: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:43,546 INFO L273 TraceCheckUtils]: 11: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:43,547 INFO L273 TraceCheckUtils]: 12: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:43,547 INFO L273 TraceCheckUtils]: 13: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:43,547 INFO L273 TraceCheckUtils]: 14: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:43,547 INFO L273 TraceCheckUtils]: 15: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:43,547 INFO L273 TraceCheckUtils]: 16: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:43,547 INFO L273 TraceCheckUtils]: 17: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:43,548 INFO L273 TraceCheckUtils]: 18: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:43,548 INFO L273 TraceCheckUtils]: 19: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:43,548 INFO L273 TraceCheckUtils]: 20: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:43,548 INFO L273 TraceCheckUtils]: 21: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:43,548 INFO L273 TraceCheckUtils]: 22: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:43,549 INFO L273 TraceCheckUtils]: 23: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:43,549 INFO L273 TraceCheckUtils]: 24: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:43,549 INFO L273 TraceCheckUtils]: 25: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:43,549 INFO L273 TraceCheckUtils]: 26: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:43,549 INFO L273 TraceCheckUtils]: 27: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:43,549 INFO L273 TraceCheckUtils]: 28: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:43,549 INFO L273 TraceCheckUtils]: 29: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:43,549 INFO L273 TraceCheckUtils]: 30: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:43,550 INFO L273 TraceCheckUtils]: 31: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:43,550 INFO L273 TraceCheckUtils]: 32: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:43,550 INFO L273 TraceCheckUtils]: 33: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:43,550 INFO L273 TraceCheckUtils]: 34: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:43,550 INFO L273 TraceCheckUtils]: 35: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:43,550 INFO L273 TraceCheckUtils]: 36: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:43,550 INFO L273 TraceCheckUtils]: 37: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:43,550 INFO L273 TraceCheckUtils]: 38: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:43,550 INFO L273 TraceCheckUtils]: 39: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:43,550 INFO L273 TraceCheckUtils]: 40: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:43,551 INFO L273 TraceCheckUtils]: 41: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:43,551 INFO L273 TraceCheckUtils]: 42: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:43,551 INFO L273 TraceCheckUtils]: 43: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:43,551 INFO L273 TraceCheckUtils]: 44: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:43,551 INFO L273 TraceCheckUtils]: 45: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:43,551 INFO L273 TraceCheckUtils]: 46: Hoare triple {39893#true} assume !(~i~1 < 20); {39893#true} is VALID [2018-11-23 12:17:43,551 INFO L256 TraceCheckUtils]: 47: Hoare triple {39893#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {39893#true} is VALID [2018-11-23 12:17:43,551 INFO L273 TraceCheckUtils]: 48: Hoare triple {39893#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {39893#true} is VALID [2018-11-23 12:17:43,551 INFO L273 TraceCheckUtils]: 49: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,551 INFO L273 TraceCheckUtils]: 50: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,552 INFO L273 TraceCheckUtils]: 51: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,552 INFO L273 TraceCheckUtils]: 52: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,552 INFO L273 TraceCheckUtils]: 53: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,552 INFO L273 TraceCheckUtils]: 54: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,552 INFO L273 TraceCheckUtils]: 55: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,552 INFO L273 TraceCheckUtils]: 56: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,552 INFO L273 TraceCheckUtils]: 57: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,552 INFO L273 TraceCheckUtils]: 58: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,552 INFO L273 TraceCheckUtils]: 59: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,552 INFO L273 TraceCheckUtils]: 60: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,553 INFO L273 TraceCheckUtils]: 61: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,553 INFO L273 TraceCheckUtils]: 62: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,553 INFO L273 TraceCheckUtils]: 63: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,553 INFO L273 TraceCheckUtils]: 64: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,553 INFO L273 TraceCheckUtils]: 65: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,553 INFO L273 TraceCheckUtils]: 66: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,553 INFO L273 TraceCheckUtils]: 67: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,553 INFO L273 TraceCheckUtils]: 68: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,553 INFO L273 TraceCheckUtils]: 69: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,554 INFO L273 TraceCheckUtils]: 70: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,554 INFO L273 TraceCheckUtils]: 71: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,554 INFO L273 TraceCheckUtils]: 72: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,554 INFO L273 TraceCheckUtils]: 73: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,554 INFO L273 TraceCheckUtils]: 74: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,554 INFO L273 TraceCheckUtils]: 75: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,554 INFO L273 TraceCheckUtils]: 76: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,554 INFO L273 TraceCheckUtils]: 77: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,554 INFO L273 TraceCheckUtils]: 78: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,554 INFO L273 TraceCheckUtils]: 79: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,555 INFO L273 TraceCheckUtils]: 80: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,555 INFO L273 TraceCheckUtils]: 81: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,555 INFO L273 TraceCheckUtils]: 82: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,555 INFO L273 TraceCheckUtils]: 83: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,555 INFO L273 TraceCheckUtils]: 84: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,555 INFO L273 TraceCheckUtils]: 85: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,555 INFO L273 TraceCheckUtils]: 86: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,555 INFO L273 TraceCheckUtils]: 87: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,555 INFO L273 TraceCheckUtils]: 88: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,555 INFO L273 TraceCheckUtils]: 89: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,556 INFO L273 TraceCheckUtils]: 90: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,556 INFO L273 TraceCheckUtils]: 91: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,556 INFO L273 TraceCheckUtils]: 92: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,556 INFO L273 TraceCheckUtils]: 93: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,556 INFO L273 TraceCheckUtils]: 94: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,556 INFO L273 TraceCheckUtils]: 95: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,556 INFO L273 TraceCheckUtils]: 96: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,556 INFO L273 TraceCheckUtils]: 97: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,556 INFO L273 TraceCheckUtils]: 98: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,556 INFO L273 TraceCheckUtils]: 99: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,557 INFO L273 TraceCheckUtils]: 100: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,557 INFO L273 TraceCheckUtils]: 101: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,557 INFO L273 TraceCheckUtils]: 102: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,557 INFO L273 TraceCheckUtils]: 103: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,557 INFO L273 TraceCheckUtils]: 104: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,557 INFO L273 TraceCheckUtils]: 105: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,557 INFO L273 TraceCheckUtils]: 106: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,557 INFO L273 TraceCheckUtils]: 107: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,557 INFO L273 TraceCheckUtils]: 108: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,557 INFO L273 TraceCheckUtils]: 109: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,558 INFO L273 TraceCheckUtils]: 110: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,558 INFO L273 TraceCheckUtils]: 111: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,558 INFO L273 TraceCheckUtils]: 112: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,558 INFO L273 TraceCheckUtils]: 113: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,558 INFO L273 TraceCheckUtils]: 114: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,558 INFO L273 TraceCheckUtils]: 115: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,558 INFO L273 TraceCheckUtils]: 116: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,558 INFO L273 TraceCheckUtils]: 117: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,558 INFO L273 TraceCheckUtils]: 118: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,559 INFO L273 TraceCheckUtils]: 119: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,559 INFO L273 TraceCheckUtils]: 120: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,559 INFO L273 TraceCheckUtils]: 121: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,559 INFO L273 TraceCheckUtils]: 122: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,559 INFO L273 TraceCheckUtils]: 123: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,559 INFO L273 TraceCheckUtils]: 124: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,559 INFO L273 TraceCheckUtils]: 125: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,559 INFO L273 TraceCheckUtils]: 126: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,559 INFO L273 TraceCheckUtils]: 127: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,559 INFO L273 TraceCheckUtils]: 128: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,560 INFO L273 TraceCheckUtils]: 129: Hoare triple {39893#true} assume !(~i~0 < 20); {39893#true} is VALID [2018-11-23 12:17:43,560 INFO L273 TraceCheckUtils]: 130: Hoare triple {39893#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {39893#true} is VALID [2018-11-23 12:17:43,560 INFO L273 TraceCheckUtils]: 131: Hoare triple {39893#true} assume true; {39893#true} is VALID [2018-11-23 12:17:43,560 INFO L268 TraceCheckUtils]: 132: Hoare quadruple {39893#true} {39893#true} #77#return; {39893#true} is VALID [2018-11-23 12:17:43,560 INFO L273 TraceCheckUtils]: 133: Hoare triple {39893#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {39893#true} is VALID [2018-11-23 12:17:43,560 INFO L256 TraceCheckUtils]: 134: Hoare triple {39893#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {39893#true} is VALID [2018-11-23 12:17:43,560 INFO L273 TraceCheckUtils]: 135: Hoare triple {39893#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {39893#true} is VALID [2018-11-23 12:17:43,560 INFO L273 TraceCheckUtils]: 136: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,560 INFO L273 TraceCheckUtils]: 137: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,560 INFO L273 TraceCheckUtils]: 138: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,561 INFO L273 TraceCheckUtils]: 139: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,561 INFO L273 TraceCheckUtils]: 140: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,561 INFO L273 TraceCheckUtils]: 141: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,561 INFO L273 TraceCheckUtils]: 142: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,561 INFO L273 TraceCheckUtils]: 143: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,561 INFO L273 TraceCheckUtils]: 144: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,561 INFO L273 TraceCheckUtils]: 145: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,561 INFO L273 TraceCheckUtils]: 146: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,561 INFO L273 TraceCheckUtils]: 147: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,561 INFO L273 TraceCheckUtils]: 148: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,562 INFO L273 TraceCheckUtils]: 149: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,562 INFO L273 TraceCheckUtils]: 150: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,562 INFO L273 TraceCheckUtils]: 151: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,562 INFO L273 TraceCheckUtils]: 152: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,562 INFO L273 TraceCheckUtils]: 153: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,562 INFO L273 TraceCheckUtils]: 154: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,562 INFO L273 TraceCheckUtils]: 155: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,562 INFO L273 TraceCheckUtils]: 156: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,562 INFO L273 TraceCheckUtils]: 157: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,563 INFO L273 TraceCheckUtils]: 158: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,563 INFO L273 TraceCheckUtils]: 159: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,563 INFO L273 TraceCheckUtils]: 160: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,563 INFO L273 TraceCheckUtils]: 161: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,563 INFO L273 TraceCheckUtils]: 162: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,563 INFO L273 TraceCheckUtils]: 163: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,563 INFO L273 TraceCheckUtils]: 164: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,563 INFO L273 TraceCheckUtils]: 165: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,563 INFO L273 TraceCheckUtils]: 166: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,563 INFO L273 TraceCheckUtils]: 167: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,564 INFO L273 TraceCheckUtils]: 168: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,564 INFO L273 TraceCheckUtils]: 169: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,564 INFO L273 TraceCheckUtils]: 170: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,564 INFO L273 TraceCheckUtils]: 171: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,564 INFO L273 TraceCheckUtils]: 172: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,564 INFO L273 TraceCheckUtils]: 173: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,564 INFO L273 TraceCheckUtils]: 174: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,564 INFO L273 TraceCheckUtils]: 175: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,564 INFO L273 TraceCheckUtils]: 176: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,564 INFO L273 TraceCheckUtils]: 177: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,565 INFO L273 TraceCheckUtils]: 178: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,565 INFO L273 TraceCheckUtils]: 179: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,565 INFO L273 TraceCheckUtils]: 180: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,565 INFO L273 TraceCheckUtils]: 181: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,565 INFO L273 TraceCheckUtils]: 182: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,565 INFO L273 TraceCheckUtils]: 183: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,565 INFO L273 TraceCheckUtils]: 184: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,565 INFO L273 TraceCheckUtils]: 185: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,565 INFO L273 TraceCheckUtils]: 186: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,565 INFO L273 TraceCheckUtils]: 187: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,566 INFO L273 TraceCheckUtils]: 188: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,566 INFO L273 TraceCheckUtils]: 189: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,566 INFO L273 TraceCheckUtils]: 190: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,566 INFO L273 TraceCheckUtils]: 191: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,566 INFO L273 TraceCheckUtils]: 192: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,566 INFO L273 TraceCheckUtils]: 193: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,566 INFO L273 TraceCheckUtils]: 194: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,566 INFO L273 TraceCheckUtils]: 195: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,566 INFO L273 TraceCheckUtils]: 196: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,567 INFO L273 TraceCheckUtils]: 197: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,567 INFO L273 TraceCheckUtils]: 198: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,567 INFO L273 TraceCheckUtils]: 199: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,567 INFO L273 TraceCheckUtils]: 200: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,567 INFO L273 TraceCheckUtils]: 201: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,567 INFO L273 TraceCheckUtils]: 202: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,567 INFO L273 TraceCheckUtils]: 203: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,567 INFO L273 TraceCheckUtils]: 204: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,567 INFO L273 TraceCheckUtils]: 205: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,567 INFO L273 TraceCheckUtils]: 206: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,568 INFO L273 TraceCheckUtils]: 207: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,568 INFO L273 TraceCheckUtils]: 208: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,568 INFO L273 TraceCheckUtils]: 209: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,568 INFO L273 TraceCheckUtils]: 210: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,568 INFO L273 TraceCheckUtils]: 211: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,568 INFO L273 TraceCheckUtils]: 212: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,568 INFO L273 TraceCheckUtils]: 213: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,568 INFO L273 TraceCheckUtils]: 214: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,568 INFO L273 TraceCheckUtils]: 215: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,568 INFO L273 TraceCheckUtils]: 216: Hoare triple {39893#true} assume !(~i~0 < 20); {39893#true} is VALID [2018-11-23 12:17:43,569 INFO L273 TraceCheckUtils]: 217: Hoare triple {39893#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {39893#true} is VALID [2018-11-23 12:17:43,569 INFO L273 TraceCheckUtils]: 218: Hoare triple {39893#true} assume true; {39893#true} is VALID [2018-11-23 12:17:43,569 INFO L268 TraceCheckUtils]: 219: Hoare quadruple {39893#true} {39893#true} #79#return; {39893#true} is VALID [2018-11-23 12:17:43,569 INFO L273 TraceCheckUtils]: 220: Hoare triple {39893#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {39895#(= main_~i~2 0)} is VALID [2018-11-23 12:17:43,569 INFO L273 TraceCheckUtils]: 221: Hoare triple {39895#(= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {39895#(= main_~i~2 0)} is VALID [2018-11-23 12:17:43,570 INFO L273 TraceCheckUtils]: 222: Hoare triple {39895#(= main_~i~2 0)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {39896#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:43,570 INFO L273 TraceCheckUtils]: 223: Hoare triple {39896#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {39896#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:43,571 INFO L273 TraceCheckUtils]: 224: Hoare triple {39896#(<= main_~i~2 1)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {39897#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:43,571 INFO L273 TraceCheckUtils]: 225: Hoare triple {39897#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {39897#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:43,571 INFO L273 TraceCheckUtils]: 226: Hoare triple {39897#(<= main_~i~2 2)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {39898#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:43,572 INFO L273 TraceCheckUtils]: 227: Hoare triple {39898#(<= main_~i~2 3)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {39898#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:43,572 INFO L273 TraceCheckUtils]: 228: Hoare triple {39898#(<= main_~i~2 3)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {39899#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:43,573 INFO L273 TraceCheckUtils]: 229: Hoare triple {39899#(<= main_~i~2 4)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {39899#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:43,573 INFO L273 TraceCheckUtils]: 230: Hoare triple {39899#(<= main_~i~2 4)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {39900#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:43,574 INFO L273 TraceCheckUtils]: 231: Hoare triple {39900#(<= main_~i~2 5)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {39900#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:43,575 INFO L273 TraceCheckUtils]: 232: Hoare triple {39900#(<= main_~i~2 5)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {39901#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:43,575 INFO L273 TraceCheckUtils]: 233: Hoare triple {39901#(<= main_~i~2 6)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {39901#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:43,576 INFO L273 TraceCheckUtils]: 234: Hoare triple {39901#(<= main_~i~2 6)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {39902#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:43,576 INFO L273 TraceCheckUtils]: 235: Hoare triple {39902#(<= main_~i~2 7)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {39902#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:43,577 INFO L273 TraceCheckUtils]: 236: Hoare triple {39902#(<= main_~i~2 7)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {39903#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:43,577 INFO L273 TraceCheckUtils]: 237: Hoare triple {39903#(<= main_~i~2 8)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {39903#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:43,578 INFO L273 TraceCheckUtils]: 238: Hoare triple {39903#(<= main_~i~2 8)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {39904#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:43,579 INFO L273 TraceCheckUtils]: 239: Hoare triple {39904#(<= main_~i~2 9)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {39904#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:43,579 INFO L273 TraceCheckUtils]: 240: Hoare triple {39904#(<= main_~i~2 9)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {39905#(<= main_~i~2 10)} is VALID [2018-11-23 12:17:43,580 INFO L273 TraceCheckUtils]: 241: Hoare triple {39905#(<= main_~i~2 10)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {39905#(<= main_~i~2 10)} is VALID [2018-11-23 12:17:43,581 INFO L273 TraceCheckUtils]: 242: Hoare triple {39905#(<= main_~i~2 10)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {39906#(<= main_~i~2 11)} is VALID [2018-11-23 12:17:43,581 INFO L273 TraceCheckUtils]: 243: Hoare triple {39906#(<= main_~i~2 11)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {39906#(<= main_~i~2 11)} is VALID [2018-11-23 12:17:43,582 INFO L273 TraceCheckUtils]: 244: Hoare triple {39906#(<= main_~i~2 11)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {39907#(<= main_~i~2 12)} is VALID [2018-11-23 12:17:43,582 INFO L273 TraceCheckUtils]: 245: Hoare triple {39907#(<= main_~i~2 12)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {39907#(<= main_~i~2 12)} is VALID [2018-11-23 12:17:43,583 INFO L273 TraceCheckUtils]: 246: Hoare triple {39907#(<= main_~i~2 12)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {39908#(<= main_~i~2 13)} is VALID [2018-11-23 12:17:43,584 INFO L273 TraceCheckUtils]: 247: Hoare triple {39908#(<= main_~i~2 13)} assume !(~i~2 < 19); {39894#false} is VALID [2018-11-23 12:17:43,584 INFO L273 TraceCheckUtils]: 248: Hoare triple {39894#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {39894#false} is VALID [2018-11-23 12:17:43,584 INFO L256 TraceCheckUtils]: 249: Hoare triple {39894#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {39893#true} is VALID [2018-11-23 12:17:43,584 INFO L273 TraceCheckUtils]: 250: Hoare triple {39893#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {39893#true} is VALID [2018-11-23 12:17:43,584 INFO L273 TraceCheckUtils]: 251: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,585 INFO L273 TraceCheckUtils]: 252: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,585 INFO L273 TraceCheckUtils]: 253: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,585 INFO L273 TraceCheckUtils]: 254: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,585 INFO L273 TraceCheckUtils]: 255: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,585 INFO L273 TraceCheckUtils]: 256: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,586 INFO L273 TraceCheckUtils]: 257: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,586 INFO L273 TraceCheckUtils]: 258: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,586 INFO L273 TraceCheckUtils]: 259: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,586 INFO L273 TraceCheckUtils]: 260: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,586 INFO L273 TraceCheckUtils]: 261: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,586 INFO L273 TraceCheckUtils]: 262: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,587 INFO L273 TraceCheckUtils]: 263: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,587 INFO L273 TraceCheckUtils]: 264: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,587 INFO L273 TraceCheckUtils]: 265: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,587 INFO L273 TraceCheckUtils]: 266: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,587 INFO L273 TraceCheckUtils]: 267: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,587 INFO L273 TraceCheckUtils]: 268: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,587 INFO L273 TraceCheckUtils]: 269: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,588 INFO L273 TraceCheckUtils]: 270: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,588 INFO L273 TraceCheckUtils]: 271: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,588 INFO L273 TraceCheckUtils]: 272: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,588 INFO L273 TraceCheckUtils]: 273: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,588 INFO L273 TraceCheckUtils]: 274: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,588 INFO L273 TraceCheckUtils]: 275: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,588 INFO L273 TraceCheckUtils]: 276: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,588 INFO L273 TraceCheckUtils]: 277: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,588 INFO L273 TraceCheckUtils]: 278: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,588 INFO L273 TraceCheckUtils]: 279: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,589 INFO L273 TraceCheckUtils]: 280: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,589 INFO L273 TraceCheckUtils]: 281: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,589 INFO L273 TraceCheckUtils]: 282: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,589 INFO L273 TraceCheckUtils]: 283: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,589 INFO L273 TraceCheckUtils]: 284: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,589 INFO L273 TraceCheckUtils]: 285: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,589 INFO L273 TraceCheckUtils]: 286: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,589 INFO L273 TraceCheckUtils]: 287: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,589 INFO L273 TraceCheckUtils]: 288: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,589 INFO L273 TraceCheckUtils]: 289: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,590 INFO L273 TraceCheckUtils]: 290: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,590 INFO L273 TraceCheckUtils]: 291: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,590 INFO L273 TraceCheckUtils]: 292: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,590 INFO L273 TraceCheckUtils]: 293: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,590 INFO L273 TraceCheckUtils]: 294: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,590 INFO L273 TraceCheckUtils]: 295: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,590 INFO L273 TraceCheckUtils]: 296: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,590 INFO L273 TraceCheckUtils]: 297: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,590 INFO L273 TraceCheckUtils]: 298: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,591 INFO L273 TraceCheckUtils]: 299: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,591 INFO L273 TraceCheckUtils]: 300: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,591 INFO L273 TraceCheckUtils]: 301: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,591 INFO L273 TraceCheckUtils]: 302: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,591 INFO L273 TraceCheckUtils]: 303: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,591 INFO L273 TraceCheckUtils]: 304: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,591 INFO L273 TraceCheckUtils]: 305: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,591 INFO L273 TraceCheckUtils]: 306: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,591 INFO L273 TraceCheckUtils]: 307: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,591 INFO L273 TraceCheckUtils]: 308: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,592 INFO L273 TraceCheckUtils]: 309: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,592 INFO L273 TraceCheckUtils]: 310: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,592 INFO L273 TraceCheckUtils]: 311: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,592 INFO L273 TraceCheckUtils]: 312: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,592 INFO L273 TraceCheckUtils]: 313: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,592 INFO L273 TraceCheckUtils]: 314: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,592 INFO L273 TraceCheckUtils]: 315: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,592 INFO L273 TraceCheckUtils]: 316: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,592 INFO L273 TraceCheckUtils]: 317: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,592 INFO L273 TraceCheckUtils]: 318: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,593 INFO L273 TraceCheckUtils]: 319: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,593 INFO L273 TraceCheckUtils]: 320: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,593 INFO L273 TraceCheckUtils]: 321: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,593 INFO L273 TraceCheckUtils]: 322: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,593 INFO L273 TraceCheckUtils]: 323: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,593 INFO L273 TraceCheckUtils]: 324: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,593 INFO L273 TraceCheckUtils]: 325: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,593 INFO L273 TraceCheckUtils]: 326: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,593 INFO L273 TraceCheckUtils]: 327: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:43,594 INFO L273 TraceCheckUtils]: 328: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:43,594 INFO L273 TraceCheckUtils]: 329: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:43,594 INFO L273 TraceCheckUtils]: 330: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:43,594 INFO L273 TraceCheckUtils]: 331: Hoare triple {39893#true} assume !(~i~0 < 20); {39893#true} is VALID [2018-11-23 12:17:43,594 INFO L273 TraceCheckUtils]: 332: Hoare triple {39893#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {39893#true} is VALID [2018-11-23 12:17:43,594 INFO L273 TraceCheckUtils]: 333: Hoare triple {39893#true} assume true; {39893#true} is VALID [2018-11-23 12:17:43,594 INFO L268 TraceCheckUtils]: 334: Hoare quadruple {39893#true} {39894#false} #81#return; {39894#false} is VALID [2018-11-23 12:17:43,594 INFO L273 TraceCheckUtils]: 335: Hoare triple {39894#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {39894#false} is VALID [2018-11-23 12:17:43,594 INFO L273 TraceCheckUtils]: 336: Hoare triple {39894#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {39894#false} is VALID [2018-11-23 12:17:43,594 INFO L273 TraceCheckUtils]: 337: Hoare triple {39894#false} assume !false; {39894#false} is VALID [2018-11-23 12:17:43,632 INFO L134 CoverageAnalysis]: Checked inductivity of 7844 backedges. 0 proven. 169 refuted. 0 times theorem prover too weak. 7675 trivial. 0 not checked. [2018-11-23 12:17:43,632 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:17:43,632 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 -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 39 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:17:43,640 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:17:43,804 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:43,871 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:43,873 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:17:44,358 INFO L256 TraceCheckUtils]: 0: Hoare triple {39893#true} call ULTIMATE.init(); {39893#true} is VALID [2018-11-23 12:17:44,358 INFO L273 TraceCheckUtils]: 1: Hoare triple {39893#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {39893#true} is VALID [2018-11-23 12:17:44,358 INFO L273 TraceCheckUtils]: 2: Hoare triple {39893#true} assume true; {39893#true} is VALID [2018-11-23 12:17:44,358 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {39893#true} {39893#true} #73#return; {39893#true} is VALID [2018-11-23 12:17:44,358 INFO L256 TraceCheckUtils]: 4: Hoare triple {39893#true} call #t~ret14 := main(); {39893#true} is VALID [2018-11-23 12:17:44,359 INFO L273 TraceCheckUtils]: 5: Hoare triple {39893#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {39893#true} is VALID [2018-11-23 12:17:44,359 INFO L273 TraceCheckUtils]: 6: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:44,359 INFO L273 TraceCheckUtils]: 7: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:44,359 INFO L273 TraceCheckUtils]: 8: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:44,359 INFO L273 TraceCheckUtils]: 9: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:44,359 INFO L273 TraceCheckUtils]: 10: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:44,359 INFO L273 TraceCheckUtils]: 11: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:44,359 INFO L273 TraceCheckUtils]: 12: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:44,359 INFO L273 TraceCheckUtils]: 13: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:44,359 INFO L273 TraceCheckUtils]: 14: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:44,360 INFO L273 TraceCheckUtils]: 15: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:44,360 INFO L273 TraceCheckUtils]: 16: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:44,360 INFO L273 TraceCheckUtils]: 17: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:44,360 INFO L273 TraceCheckUtils]: 18: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:44,360 INFO L273 TraceCheckUtils]: 19: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:44,361 INFO L273 TraceCheckUtils]: 20: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:44,361 INFO L273 TraceCheckUtils]: 21: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:44,361 INFO L273 TraceCheckUtils]: 22: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:44,361 INFO L273 TraceCheckUtils]: 23: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:44,361 INFO L273 TraceCheckUtils]: 24: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:44,361 INFO L273 TraceCheckUtils]: 25: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:44,362 INFO L273 TraceCheckUtils]: 26: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:44,362 INFO L273 TraceCheckUtils]: 27: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:44,362 INFO L273 TraceCheckUtils]: 28: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:44,362 INFO L273 TraceCheckUtils]: 29: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:44,362 INFO L273 TraceCheckUtils]: 30: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:44,362 INFO L273 TraceCheckUtils]: 31: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:44,362 INFO L273 TraceCheckUtils]: 32: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:44,362 INFO L273 TraceCheckUtils]: 33: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:44,362 INFO L273 TraceCheckUtils]: 34: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:44,362 INFO L273 TraceCheckUtils]: 35: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:44,363 INFO L273 TraceCheckUtils]: 36: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:44,363 INFO L273 TraceCheckUtils]: 37: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:44,363 INFO L273 TraceCheckUtils]: 38: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:44,363 INFO L273 TraceCheckUtils]: 39: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:44,363 INFO L273 TraceCheckUtils]: 40: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:44,363 INFO L273 TraceCheckUtils]: 41: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:44,363 INFO L273 TraceCheckUtils]: 42: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:44,363 INFO L273 TraceCheckUtils]: 43: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:44,363 INFO L273 TraceCheckUtils]: 44: Hoare triple {39893#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {39893#true} is VALID [2018-11-23 12:17:44,363 INFO L273 TraceCheckUtils]: 45: Hoare triple {39893#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {39893#true} is VALID [2018-11-23 12:17:44,364 INFO L273 TraceCheckUtils]: 46: Hoare triple {39893#true} assume !(~i~1 < 20); {39893#true} is VALID [2018-11-23 12:17:44,364 INFO L256 TraceCheckUtils]: 47: Hoare triple {39893#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {39893#true} is VALID [2018-11-23 12:17:44,364 INFO L273 TraceCheckUtils]: 48: Hoare triple {39893#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {39893#true} is VALID [2018-11-23 12:17:44,364 INFO L273 TraceCheckUtils]: 49: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,364 INFO L273 TraceCheckUtils]: 50: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,364 INFO L273 TraceCheckUtils]: 51: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,364 INFO L273 TraceCheckUtils]: 52: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,364 INFO L273 TraceCheckUtils]: 53: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,364 INFO L273 TraceCheckUtils]: 54: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,365 INFO L273 TraceCheckUtils]: 55: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,365 INFO L273 TraceCheckUtils]: 56: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,365 INFO L273 TraceCheckUtils]: 57: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,365 INFO L273 TraceCheckUtils]: 58: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,365 INFO L273 TraceCheckUtils]: 59: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,365 INFO L273 TraceCheckUtils]: 60: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,365 INFO L273 TraceCheckUtils]: 61: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,365 INFO L273 TraceCheckUtils]: 62: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,365 INFO L273 TraceCheckUtils]: 63: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,365 INFO L273 TraceCheckUtils]: 64: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,366 INFO L273 TraceCheckUtils]: 65: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,366 INFO L273 TraceCheckUtils]: 66: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,366 INFO L273 TraceCheckUtils]: 67: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,366 INFO L273 TraceCheckUtils]: 68: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,366 INFO L273 TraceCheckUtils]: 69: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,366 INFO L273 TraceCheckUtils]: 70: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,366 INFO L273 TraceCheckUtils]: 71: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,366 INFO L273 TraceCheckUtils]: 72: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,366 INFO L273 TraceCheckUtils]: 73: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,366 INFO L273 TraceCheckUtils]: 74: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,367 INFO L273 TraceCheckUtils]: 75: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,367 INFO L273 TraceCheckUtils]: 76: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,367 INFO L273 TraceCheckUtils]: 77: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,367 INFO L273 TraceCheckUtils]: 78: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,367 INFO L273 TraceCheckUtils]: 79: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,367 INFO L273 TraceCheckUtils]: 80: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,367 INFO L273 TraceCheckUtils]: 81: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,367 INFO L273 TraceCheckUtils]: 82: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,367 INFO L273 TraceCheckUtils]: 83: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,367 INFO L273 TraceCheckUtils]: 84: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,368 INFO L273 TraceCheckUtils]: 85: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,368 INFO L273 TraceCheckUtils]: 86: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,368 INFO L273 TraceCheckUtils]: 87: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,368 INFO L273 TraceCheckUtils]: 88: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,368 INFO L273 TraceCheckUtils]: 89: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,368 INFO L273 TraceCheckUtils]: 90: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,368 INFO L273 TraceCheckUtils]: 91: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,368 INFO L273 TraceCheckUtils]: 92: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,368 INFO L273 TraceCheckUtils]: 93: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,368 INFO L273 TraceCheckUtils]: 94: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,369 INFO L273 TraceCheckUtils]: 95: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,369 INFO L273 TraceCheckUtils]: 96: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,369 INFO L273 TraceCheckUtils]: 97: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,369 INFO L273 TraceCheckUtils]: 98: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,369 INFO L273 TraceCheckUtils]: 99: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,369 INFO L273 TraceCheckUtils]: 100: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,369 INFO L273 TraceCheckUtils]: 101: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,369 INFO L273 TraceCheckUtils]: 102: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,369 INFO L273 TraceCheckUtils]: 103: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,370 INFO L273 TraceCheckUtils]: 104: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,370 INFO L273 TraceCheckUtils]: 105: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,370 INFO L273 TraceCheckUtils]: 106: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,370 INFO L273 TraceCheckUtils]: 107: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,370 INFO L273 TraceCheckUtils]: 108: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,370 INFO L273 TraceCheckUtils]: 109: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,370 INFO L273 TraceCheckUtils]: 110: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,370 INFO L273 TraceCheckUtils]: 111: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,370 INFO L273 TraceCheckUtils]: 112: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,370 INFO L273 TraceCheckUtils]: 113: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,371 INFO L273 TraceCheckUtils]: 114: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,371 INFO L273 TraceCheckUtils]: 115: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,371 INFO L273 TraceCheckUtils]: 116: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,371 INFO L273 TraceCheckUtils]: 117: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,371 INFO L273 TraceCheckUtils]: 118: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,371 INFO L273 TraceCheckUtils]: 119: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,371 INFO L273 TraceCheckUtils]: 120: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,371 INFO L273 TraceCheckUtils]: 121: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,371 INFO L273 TraceCheckUtils]: 122: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,371 INFO L273 TraceCheckUtils]: 123: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,372 INFO L273 TraceCheckUtils]: 124: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,372 INFO L273 TraceCheckUtils]: 125: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,372 INFO L273 TraceCheckUtils]: 126: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,372 INFO L273 TraceCheckUtils]: 127: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,372 INFO L273 TraceCheckUtils]: 128: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,372 INFO L273 TraceCheckUtils]: 129: Hoare triple {39893#true} assume !(~i~0 < 20); {39893#true} is VALID [2018-11-23 12:17:44,372 INFO L273 TraceCheckUtils]: 130: Hoare triple {39893#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {39893#true} is VALID [2018-11-23 12:17:44,372 INFO L273 TraceCheckUtils]: 131: Hoare triple {39893#true} assume true; {39893#true} is VALID [2018-11-23 12:17:44,372 INFO L268 TraceCheckUtils]: 132: Hoare quadruple {39893#true} {39893#true} #77#return; {39893#true} is VALID [2018-11-23 12:17:44,372 INFO L273 TraceCheckUtils]: 133: Hoare triple {39893#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {39893#true} is VALID [2018-11-23 12:17:44,373 INFO L256 TraceCheckUtils]: 134: Hoare triple {39893#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {39893#true} is VALID [2018-11-23 12:17:44,373 INFO L273 TraceCheckUtils]: 135: Hoare triple {39893#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {39893#true} is VALID [2018-11-23 12:17:44,373 INFO L273 TraceCheckUtils]: 136: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,373 INFO L273 TraceCheckUtils]: 137: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,373 INFO L273 TraceCheckUtils]: 138: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,373 INFO L273 TraceCheckUtils]: 139: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,373 INFO L273 TraceCheckUtils]: 140: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,373 INFO L273 TraceCheckUtils]: 141: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,373 INFO L273 TraceCheckUtils]: 142: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,373 INFO L273 TraceCheckUtils]: 143: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,374 INFO L273 TraceCheckUtils]: 144: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,374 INFO L273 TraceCheckUtils]: 145: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,374 INFO L273 TraceCheckUtils]: 146: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,374 INFO L273 TraceCheckUtils]: 147: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,374 INFO L273 TraceCheckUtils]: 148: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,374 INFO L273 TraceCheckUtils]: 149: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,374 INFO L273 TraceCheckUtils]: 150: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,374 INFO L273 TraceCheckUtils]: 151: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,374 INFO L273 TraceCheckUtils]: 152: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,374 INFO L273 TraceCheckUtils]: 153: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,375 INFO L273 TraceCheckUtils]: 154: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,375 INFO L273 TraceCheckUtils]: 155: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,375 INFO L273 TraceCheckUtils]: 156: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,375 INFO L273 TraceCheckUtils]: 157: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,375 INFO L273 TraceCheckUtils]: 158: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,375 INFO L273 TraceCheckUtils]: 159: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,375 INFO L273 TraceCheckUtils]: 160: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,375 INFO L273 TraceCheckUtils]: 161: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,375 INFO L273 TraceCheckUtils]: 162: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,376 INFO L273 TraceCheckUtils]: 163: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,376 INFO L273 TraceCheckUtils]: 164: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,376 INFO L273 TraceCheckUtils]: 165: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,376 INFO L273 TraceCheckUtils]: 166: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,376 INFO L273 TraceCheckUtils]: 167: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,376 INFO L273 TraceCheckUtils]: 168: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,376 INFO L273 TraceCheckUtils]: 169: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,376 INFO L273 TraceCheckUtils]: 170: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,376 INFO L273 TraceCheckUtils]: 171: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,376 INFO L273 TraceCheckUtils]: 172: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,377 INFO L273 TraceCheckUtils]: 173: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,377 INFO L273 TraceCheckUtils]: 174: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,377 INFO L273 TraceCheckUtils]: 175: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,377 INFO L273 TraceCheckUtils]: 176: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,377 INFO L273 TraceCheckUtils]: 177: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,377 INFO L273 TraceCheckUtils]: 178: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,377 INFO L273 TraceCheckUtils]: 179: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,377 INFO L273 TraceCheckUtils]: 180: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,377 INFO L273 TraceCheckUtils]: 181: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,377 INFO L273 TraceCheckUtils]: 182: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,378 INFO L273 TraceCheckUtils]: 183: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,378 INFO L273 TraceCheckUtils]: 184: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,378 INFO L273 TraceCheckUtils]: 185: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,378 INFO L273 TraceCheckUtils]: 186: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,378 INFO L273 TraceCheckUtils]: 187: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,378 INFO L273 TraceCheckUtils]: 188: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,378 INFO L273 TraceCheckUtils]: 189: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,378 INFO L273 TraceCheckUtils]: 190: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,378 INFO L273 TraceCheckUtils]: 191: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,378 INFO L273 TraceCheckUtils]: 192: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,379 INFO L273 TraceCheckUtils]: 193: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,379 INFO L273 TraceCheckUtils]: 194: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,379 INFO L273 TraceCheckUtils]: 195: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,379 INFO L273 TraceCheckUtils]: 196: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,379 INFO L273 TraceCheckUtils]: 197: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,379 INFO L273 TraceCheckUtils]: 198: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,379 INFO L273 TraceCheckUtils]: 199: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,379 INFO L273 TraceCheckUtils]: 200: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,379 INFO L273 TraceCheckUtils]: 201: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,379 INFO L273 TraceCheckUtils]: 202: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,380 INFO L273 TraceCheckUtils]: 203: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,380 INFO L273 TraceCheckUtils]: 204: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,380 INFO L273 TraceCheckUtils]: 205: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,380 INFO L273 TraceCheckUtils]: 206: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,380 INFO L273 TraceCheckUtils]: 207: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,380 INFO L273 TraceCheckUtils]: 208: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,380 INFO L273 TraceCheckUtils]: 209: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,380 INFO L273 TraceCheckUtils]: 210: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,380 INFO L273 TraceCheckUtils]: 211: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,381 INFO L273 TraceCheckUtils]: 212: Hoare triple {39893#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39893#true} is VALID [2018-11-23 12:17:44,381 INFO L273 TraceCheckUtils]: 213: Hoare triple {39893#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39893#true} is VALID [2018-11-23 12:17:44,381 INFO L273 TraceCheckUtils]: 214: Hoare triple {39893#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39893#true} is VALID [2018-11-23 12:17:44,381 INFO L273 TraceCheckUtils]: 215: Hoare triple {39893#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39893#true} is VALID [2018-11-23 12:17:44,381 INFO L273 TraceCheckUtils]: 216: Hoare triple {39893#true} assume !(~i~0 < 20); {39893#true} is VALID [2018-11-23 12:17:44,381 INFO L273 TraceCheckUtils]: 217: Hoare triple {39893#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {39893#true} is VALID [2018-11-23 12:17:44,381 INFO L273 TraceCheckUtils]: 218: Hoare triple {39893#true} assume true; {39893#true} is VALID [2018-11-23 12:17:44,381 INFO L268 TraceCheckUtils]: 219: Hoare quadruple {39893#true} {39893#true} #79#return; {39893#true} is VALID [2018-11-23 12:17:44,382 INFO L273 TraceCheckUtils]: 220: Hoare triple {39893#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {40572#(<= main_~i~2 0)} is VALID [2018-11-23 12:17:44,383 INFO L273 TraceCheckUtils]: 221: Hoare triple {40572#(<= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {40572#(<= main_~i~2 0)} is VALID [2018-11-23 12:17:44,383 INFO L273 TraceCheckUtils]: 222: Hoare triple {40572#(<= main_~i~2 0)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {39896#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:44,385 INFO L273 TraceCheckUtils]: 223: Hoare triple {39896#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {39896#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:44,385 INFO L273 TraceCheckUtils]: 224: Hoare triple {39896#(<= main_~i~2 1)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {39897#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:44,387 INFO L273 TraceCheckUtils]: 225: Hoare triple {39897#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {39897#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:44,387 INFO L273 TraceCheckUtils]: 226: Hoare triple {39897#(<= main_~i~2 2)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {39898#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:44,389 INFO L273 TraceCheckUtils]: 227: Hoare triple {39898#(<= main_~i~2 3)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {39898#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:44,389 INFO L273 TraceCheckUtils]: 228: Hoare triple {39898#(<= main_~i~2 3)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {39899#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:44,391 INFO L273 TraceCheckUtils]: 229: Hoare triple {39899#(<= main_~i~2 4)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {39899#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:44,391 INFO L273 TraceCheckUtils]: 230: Hoare triple {39899#(<= main_~i~2 4)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {39900#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:44,393 INFO L273 TraceCheckUtils]: 231: Hoare triple {39900#(<= main_~i~2 5)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {39900#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:44,393 INFO L273 TraceCheckUtils]: 232: Hoare triple {39900#(<= main_~i~2 5)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {39901#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:44,395 INFO L273 TraceCheckUtils]: 233: Hoare triple {39901#(<= main_~i~2 6)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {39901#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:44,395 INFO L273 TraceCheckUtils]: 234: Hoare triple {39901#(<= main_~i~2 6)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {39902#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:44,397 INFO L273 TraceCheckUtils]: 235: Hoare triple {39902#(<= main_~i~2 7)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {39902#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:44,399 INFO L273 TraceCheckUtils]: 236: Hoare triple {39902#(<= main_~i~2 7)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {39903#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:44,399 INFO L273 TraceCheckUtils]: 237: Hoare triple {39903#(<= main_~i~2 8)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {39903#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:44,401 INFO L273 TraceCheckUtils]: 238: Hoare triple {39903#(<= main_~i~2 8)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {39904#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:44,401 INFO L273 TraceCheckUtils]: 239: Hoare triple {39904#(<= main_~i~2 9)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {39904#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:44,403 INFO L273 TraceCheckUtils]: 240: Hoare triple {39904#(<= main_~i~2 9)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {39905#(<= main_~i~2 10)} is VALID [2018-11-23 12:17:44,403 INFO L273 TraceCheckUtils]: 241: Hoare triple {39905#(<= main_~i~2 10)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {39905#(<= main_~i~2 10)} is VALID [2018-11-23 12:17:44,405 INFO L273 TraceCheckUtils]: 242: Hoare triple {39905#(<= main_~i~2 10)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {39906#(<= main_~i~2 11)} is VALID [2018-11-23 12:17:44,405 INFO L273 TraceCheckUtils]: 243: Hoare triple {39906#(<= main_~i~2 11)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {39906#(<= main_~i~2 11)} is VALID [2018-11-23 12:17:44,407 INFO L273 TraceCheckUtils]: 244: Hoare triple {39906#(<= main_~i~2 11)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {39907#(<= main_~i~2 12)} is VALID [2018-11-23 12:17:44,407 INFO L273 TraceCheckUtils]: 245: Hoare triple {39907#(<= main_~i~2 12)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {39907#(<= main_~i~2 12)} is VALID [2018-11-23 12:17:44,409 INFO L273 TraceCheckUtils]: 246: Hoare triple {39907#(<= main_~i~2 12)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {39908#(<= main_~i~2 13)} is VALID [2018-11-23 12:17:44,409 INFO L273 TraceCheckUtils]: 247: Hoare triple {39908#(<= main_~i~2 13)} assume !(~i~2 < 19); {39894#false} is VALID [2018-11-23 12:17:44,409 INFO L273 TraceCheckUtils]: 248: Hoare triple {39894#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {39894#false} is VALID [2018-11-23 12:17:44,409 INFO L256 TraceCheckUtils]: 249: Hoare triple {39894#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {39894#false} is VALID [2018-11-23 12:17:44,409 INFO L273 TraceCheckUtils]: 250: Hoare triple {39894#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {39894#false} is VALID [2018-11-23 12:17:44,409 INFO L273 TraceCheckUtils]: 251: Hoare triple {39894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39894#false} is VALID [2018-11-23 12:17:44,410 INFO L273 TraceCheckUtils]: 252: Hoare triple {39894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39894#false} is VALID [2018-11-23 12:17:44,410 INFO L273 TraceCheckUtils]: 253: Hoare triple {39894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39894#false} is VALID [2018-11-23 12:17:44,410 INFO L273 TraceCheckUtils]: 254: Hoare triple {39894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39894#false} is VALID [2018-11-23 12:17:44,410 INFO L273 TraceCheckUtils]: 255: Hoare triple {39894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39894#false} is VALID [2018-11-23 12:17:44,410 INFO L273 TraceCheckUtils]: 256: Hoare triple {39894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39894#false} is VALID [2018-11-23 12:17:44,410 INFO L273 TraceCheckUtils]: 257: Hoare triple {39894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39894#false} is VALID [2018-11-23 12:17:44,410 INFO L273 TraceCheckUtils]: 258: Hoare triple {39894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39894#false} is VALID [2018-11-23 12:17:44,410 INFO L273 TraceCheckUtils]: 259: Hoare triple {39894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39894#false} is VALID [2018-11-23 12:17:44,410 INFO L273 TraceCheckUtils]: 260: Hoare triple {39894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39894#false} is VALID [2018-11-23 12:17:44,411 INFO L273 TraceCheckUtils]: 261: Hoare triple {39894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39894#false} is VALID [2018-11-23 12:17:44,411 INFO L273 TraceCheckUtils]: 262: Hoare triple {39894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39894#false} is VALID [2018-11-23 12:17:44,411 INFO L273 TraceCheckUtils]: 263: Hoare triple {39894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39894#false} is VALID [2018-11-23 12:17:44,411 INFO L273 TraceCheckUtils]: 264: Hoare triple {39894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39894#false} is VALID [2018-11-23 12:17:44,411 INFO L273 TraceCheckUtils]: 265: Hoare triple {39894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39894#false} is VALID [2018-11-23 12:17:44,411 INFO L273 TraceCheckUtils]: 266: Hoare triple {39894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39894#false} is VALID [2018-11-23 12:17:44,411 INFO L273 TraceCheckUtils]: 267: Hoare triple {39894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39894#false} is VALID [2018-11-23 12:17:44,411 INFO L273 TraceCheckUtils]: 268: Hoare triple {39894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39894#false} is VALID [2018-11-23 12:17:44,411 INFO L273 TraceCheckUtils]: 269: Hoare triple {39894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39894#false} is VALID [2018-11-23 12:17:44,411 INFO L273 TraceCheckUtils]: 270: Hoare triple {39894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39894#false} is VALID [2018-11-23 12:17:44,412 INFO L273 TraceCheckUtils]: 271: Hoare triple {39894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39894#false} is VALID [2018-11-23 12:17:44,412 INFO L273 TraceCheckUtils]: 272: Hoare triple {39894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39894#false} is VALID [2018-11-23 12:17:44,412 INFO L273 TraceCheckUtils]: 273: Hoare triple {39894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39894#false} is VALID [2018-11-23 12:17:44,412 INFO L273 TraceCheckUtils]: 274: Hoare triple {39894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39894#false} is VALID [2018-11-23 12:17:44,412 INFO L273 TraceCheckUtils]: 275: Hoare triple {39894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39894#false} is VALID [2018-11-23 12:17:44,412 INFO L273 TraceCheckUtils]: 276: Hoare triple {39894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39894#false} is VALID [2018-11-23 12:17:44,412 INFO L273 TraceCheckUtils]: 277: Hoare triple {39894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39894#false} is VALID [2018-11-23 12:17:44,412 INFO L273 TraceCheckUtils]: 278: Hoare triple {39894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39894#false} is VALID [2018-11-23 12:17:44,412 INFO L273 TraceCheckUtils]: 279: Hoare triple {39894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39894#false} is VALID [2018-11-23 12:17:44,412 INFO L273 TraceCheckUtils]: 280: Hoare triple {39894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39894#false} is VALID [2018-11-23 12:17:44,413 INFO L273 TraceCheckUtils]: 281: Hoare triple {39894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39894#false} is VALID [2018-11-23 12:17:44,413 INFO L273 TraceCheckUtils]: 282: Hoare triple {39894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39894#false} is VALID [2018-11-23 12:17:44,413 INFO L273 TraceCheckUtils]: 283: Hoare triple {39894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39894#false} is VALID [2018-11-23 12:17:44,413 INFO L273 TraceCheckUtils]: 284: Hoare triple {39894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39894#false} is VALID [2018-11-23 12:17:44,413 INFO L273 TraceCheckUtils]: 285: Hoare triple {39894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39894#false} is VALID [2018-11-23 12:17:44,413 INFO L273 TraceCheckUtils]: 286: Hoare triple {39894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39894#false} is VALID [2018-11-23 12:17:44,413 INFO L273 TraceCheckUtils]: 287: Hoare triple {39894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39894#false} is VALID [2018-11-23 12:17:44,413 INFO L273 TraceCheckUtils]: 288: Hoare triple {39894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39894#false} is VALID [2018-11-23 12:17:44,413 INFO L273 TraceCheckUtils]: 289: Hoare triple {39894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39894#false} is VALID [2018-11-23 12:17:44,413 INFO L273 TraceCheckUtils]: 290: Hoare triple {39894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39894#false} is VALID [2018-11-23 12:17:44,414 INFO L273 TraceCheckUtils]: 291: Hoare triple {39894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39894#false} is VALID [2018-11-23 12:17:44,414 INFO L273 TraceCheckUtils]: 292: Hoare triple {39894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39894#false} is VALID [2018-11-23 12:17:44,414 INFO L273 TraceCheckUtils]: 293: Hoare triple {39894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39894#false} is VALID [2018-11-23 12:17:44,414 INFO L273 TraceCheckUtils]: 294: Hoare triple {39894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39894#false} is VALID [2018-11-23 12:17:44,414 INFO L273 TraceCheckUtils]: 295: Hoare triple {39894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39894#false} is VALID [2018-11-23 12:17:44,414 INFO L273 TraceCheckUtils]: 296: Hoare triple {39894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39894#false} is VALID [2018-11-23 12:17:44,414 INFO L273 TraceCheckUtils]: 297: Hoare triple {39894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39894#false} is VALID [2018-11-23 12:17:44,414 INFO L273 TraceCheckUtils]: 298: Hoare triple {39894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39894#false} is VALID [2018-11-23 12:17:44,414 INFO L273 TraceCheckUtils]: 299: Hoare triple {39894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39894#false} is VALID [2018-11-23 12:17:44,414 INFO L273 TraceCheckUtils]: 300: Hoare triple {39894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39894#false} is VALID [2018-11-23 12:17:44,415 INFO L273 TraceCheckUtils]: 301: Hoare triple {39894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39894#false} is VALID [2018-11-23 12:17:44,415 INFO L273 TraceCheckUtils]: 302: Hoare triple {39894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39894#false} is VALID [2018-11-23 12:17:44,415 INFO L273 TraceCheckUtils]: 303: Hoare triple {39894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39894#false} is VALID [2018-11-23 12:17:44,415 INFO L273 TraceCheckUtils]: 304: Hoare triple {39894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39894#false} is VALID [2018-11-23 12:17:44,415 INFO L273 TraceCheckUtils]: 305: Hoare triple {39894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39894#false} is VALID [2018-11-23 12:17:44,415 INFO L273 TraceCheckUtils]: 306: Hoare triple {39894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39894#false} is VALID [2018-11-23 12:17:44,415 INFO L273 TraceCheckUtils]: 307: Hoare triple {39894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39894#false} is VALID [2018-11-23 12:17:44,415 INFO L273 TraceCheckUtils]: 308: Hoare triple {39894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39894#false} is VALID [2018-11-23 12:17:44,415 INFO L273 TraceCheckUtils]: 309: Hoare triple {39894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39894#false} is VALID [2018-11-23 12:17:44,415 INFO L273 TraceCheckUtils]: 310: Hoare triple {39894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39894#false} is VALID [2018-11-23 12:17:44,416 INFO L273 TraceCheckUtils]: 311: Hoare triple {39894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39894#false} is VALID [2018-11-23 12:17:44,416 INFO L273 TraceCheckUtils]: 312: Hoare triple {39894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39894#false} is VALID [2018-11-23 12:17:44,416 INFO L273 TraceCheckUtils]: 313: Hoare triple {39894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39894#false} is VALID [2018-11-23 12:17:44,416 INFO L273 TraceCheckUtils]: 314: Hoare triple {39894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39894#false} is VALID [2018-11-23 12:17:44,416 INFO L273 TraceCheckUtils]: 315: Hoare triple {39894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39894#false} is VALID [2018-11-23 12:17:44,416 INFO L273 TraceCheckUtils]: 316: Hoare triple {39894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39894#false} is VALID [2018-11-23 12:17:44,416 INFO L273 TraceCheckUtils]: 317: Hoare triple {39894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39894#false} is VALID [2018-11-23 12:17:44,416 INFO L273 TraceCheckUtils]: 318: Hoare triple {39894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39894#false} is VALID [2018-11-23 12:17:44,416 INFO L273 TraceCheckUtils]: 319: Hoare triple {39894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39894#false} is VALID [2018-11-23 12:17:44,416 INFO L273 TraceCheckUtils]: 320: Hoare triple {39894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39894#false} is VALID [2018-11-23 12:17:44,417 INFO L273 TraceCheckUtils]: 321: Hoare triple {39894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39894#false} is VALID [2018-11-23 12:17:44,417 INFO L273 TraceCheckUtils]: 322: Hoare triple {39894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39894#false} is VALID [2018-11-23 12:17:44,417 INFO L273 TraceCheckUtils]: 323: Hoare triple {39894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39894#false} is VALID [2018-11-23 12:17:44,417 INFO L273 TraceCheckUtils]: 324: Hoare triple {39894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39894#false} is VALID [2018-11-23 12:17:44,417 INFO L273 TraceCheckUtils]: 325: Hoare triple {39894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39894#false} is VALID [2018-11-23 12:17:44,417 INFO L273 TraceCheckUtils]: 326: Hoare triple {39894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39894#false} is VALID [2018-11-23 12:17:44,417 INFO L273 TraceCheckUtils]: 327: Hoare triple {39894#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {39894#false} is VALID [2018-11-23 12:17:44,417 INFO L273 TraceCheckUtils]: 328: Hoare triple {39894#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {39894#false} is VALID [2018-11-23 12:17:44,417 INFO L273 TraceCheckUtils]: 329: Hoare triple {39894#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {39894#false} is VALID [2018-11-23 12:17:44,418 INFO L273 TraceCheckUtils]: 330: Hoare triple {39894#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {39894#false} is VALID [2018-11-23 12:17:44,418 INFO L273 TraceCheckUtils]: 331: Hoare triple {39894#false} assume !(~i~0 < 20); {39894#false} is VALID [2018-11-23 12:17:44,418 INFO L273 TraceCheckUtils]: 332: Hoare triple {39894#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {39894#false} is VALID [2018-11-23 12:17:44,418 INFO L273 TraceCheckUtils]: 333: Hoare triple {39894#false} assume true; {39894#false} is VALID [2018-11-23 12:17:44,418 INFO L268 TraceCheckUtils]: 334: Hoare quadruple {39894#false} {39894#false} #81#return; {39894#false} is VALID [2018-11-23 12:17:44,418 INFO L273 TraceCheckUtils]: 335: Hoare triple {39894#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {39894#false} is VALID [2018-11-23 12:17:44,418 INFO L273 TraceCheckUtils]: 336: Hoare triple {39894#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {39894#false} is VALID [2018-11-23 12:17:44,418 INFO L273 TraceCheckUtils]: 337: Hoare triple {39894#false} assume !false; {39894#false} is VALID [2018-11-23 12:17:44,481 INFO L134 CoverageAnalysis]: Checked inductivity of 7844 backedges. 3290 proven. 169 refuted. 0 times theorem prover too weak. 4385 trivial. 0 not checked. [2018-11-23 12:17:44,500 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:17:44,500 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 16] total 17 [2018-11-23 12:17:44,500 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 338 [2018-11-23 12:17:44,501 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:17:44,501 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states. [2018-11-23 12:17:44,568 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:17:44,568 INFO L459 AbstractCegarLoop]: Interpolant automaton has 17 states [2018-11-23 12:17:44,568 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2018-11-23 12:17:44,568 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=136, Invalid=136, Unknown=0, NotChecked=0, Total=272 [2018-11-23 12:17:44,569 INFO L87 Difference]: Start difference. First operand 169 states and 193 transitions. Second operand 17 states. [2018-11-23 12:17:44,848 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:44,848 INFO L93 Difference]: Finished difference Result 263 states and 308 transitions. [2018-11-23 12:17:44,848 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2018-11-23 12:17:44,848 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 338 [2018-11-23 12:17:44,848 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:17:44,848 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-23 12:17:44,849 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 77 transitions. [2018-11-23 12:17:44,849 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-23 12:17:44,850 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 77 transitions. [2018-11-23 12:17:44,850 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 77 transitions. [2018-11-23 12:17:44,918 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:17:44,921 INFO L225 Difference]: With dead ends: 263 [2018-11-23 12:17:44,921 INFO L226 Difference]: Without dead ends: 172 [2018-11-23 12:17:44,921 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 353 GetRequests, 338 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 24 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=136, Invalid=136, Unknown=0, NotChecked=0, Total=272 [2018-11-23 12:17:44,922 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 172 states. [2018-11-23 12:17:45,022 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 172 to 171. [2018-11-23 12:17:45,023 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:17:45,023 INFO L82 GeneralOperation]: Start isEquivalent. First operand 172 states. Second operand 171 states. [2018-11-23 12:17:45,023 INFO L74 IsIncluded]: Start isIncluded. First operand 172 states. Second operand 171 states. [2018-11-23 12:17:45,023 INFO L87 Difference]: Start difference. First operand 172 states. Second operand 171 states. [2018-11-23 12:17:45,026 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:45,026 INFO L93 Difference]: Finished difference Result 172 states and 196 transitions. [2018-11-23 12:17:45,026 INFO L276 IsEmpty]: Start isEmpty. Operand 172 states and 196 transitions. [2018-11-23 12:17:45,027 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:45,027 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:45,027 INFO L74 IsIncluded]: Start isIncluded. First operand 171 states. Second operand 172 states. [2018-11-23 12:17:45,027 INFO L87 Difference]: Start difference. First operand 171 states. Second operand 172 states. [2018-11-23 12:17:45,029 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:45,029 INFO L93 Difference]: Finished difference Result 172 states and 196 transitions. [2018-11-23 12:17:45,029 INFO L276 IsEmpty]: Start isEmpty. Operand 172 states and 196 transitions. [2018-11-23 12:17:45,029 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:45,030 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:45,030 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:17:45,030 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:17:45,030 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 171 states. [2018-11-23 12:17:45,033 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 171 states to 171 states and 195 transitions. [2018-11-23 12:17:45,033 INFO L78 Accepts]: Start accepts. Automaton has 171 states and 195 transitions. Word has length 338 [2018-11-23 12:17:45,033 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:17:45,033 INFO L480 AbstractCegarLoop]: Abstraction has 171 states and 195 transitions. [2018-11-23 12:17:45,033 INFO L481 AbstractCegarLoop]: Interpolant automaton has 17 states. [2018-11-23 12:17:45,034 INFO L276 IsEmpty]: Start isEmpty. Operand 171 states and 195 transitions. [2018-11-23 12:17:45,035 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 341 [2018-11-23 12:17:45,036 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:17:45,036 INFO L402 BasicCegarLoop]: trace histogram [60, 60, 60, 60, 20, 20, 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] [2018-11-23 12:17:45,036 INFO L423 AbstractCegarLoop]: === Iteration 41 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:17:45,036 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:17:45,037 INFO L82 PathProgramCache]: Analyzing trace with hash 595310323, now seen corresponding path program 38 times [2018-11-23 12:17:45,037 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:17:45,037 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:17:45,037 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:45,038 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:17:45,038 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:45,091 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:45,400 INFO L256 TraceCheckUtils]: 0: Hoare triple {41854#true} call ULTIMATE.init(); {41854#true} is VALID [2018-11-23 12:17:45,400 INFO L273 TraceCheckUtils]: 1: Hoare triple {41854#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {41854#true} is VALID [2018-11-23 12:17:45,400 INFO L273 TraceCheckUtils]: 2: Hoare triple {41854#true} assume true; {41854#true} is VALID [2018-11-23 12:17:45,400 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {41854#true} {41854#true} #73#return; {41854#true} is VALID [2018-11-23 12:17:45,401 INFO L256 TraceCheckUtils]: 4: Hoare triple {41854#true} call #t~ret14 := main(); {41854#true} is VALID [2018-11-23 12:17:45,401 INFO L273 TraceCheckUtils]: 5: Hoare triple {41854#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {41854#true} is VALID [2018-11-23 12:17:45,401 INFO L273 TraceCheckUtils]: 6: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:45,401 INFO L273 TraceCheckUtils]: 7: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:45,401 INFO L273 TraceCheckUtils]: 8: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:45,402 INFO L273 TraceCheckUtils]: 9: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:45,402 INFO L273 TraceCheckUtils]: 10: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:45,402 INFO L273 TraceCheckUtils]: 11: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:45,402 INFO L273 TraceCheckUtils]: 12: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:45,402 INFO L273 TraceCheckUtils]: 13: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:45,402 INFO L273 TraceCheckUtils]: 14: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:45,403 INFO L273 TraceCheckUtils]: 15: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:45,403 INFO L273 TraceCheckUtils]: 16: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:45,403 INFO L273 TraceCheckUtils]: 17: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:45,403 INFO L273 TraceCheckUtils]: 18: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:45,403 INFO L273 TraceCheckUtils]: 19: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:45,403 INFO L273 TraceCheckUtils]: 20: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:45,403 INFO L273 TraceCheckUtils]: 21: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:45,403 INFO L273 TraceCheckUtils]: 22: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:45,403 INFO L273 TraceCheckUtils]: 23: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:45,403 INFO L273 TraceCheckUtils]: 24: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:45,404 INFO L273 TraceCheckUtils]: 25: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:45,404 INFO L273 TraceCheckUtils]: 26: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:45,404 INFO L273 TraceCheckUtils]: 27: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:45,404 INFO L273 TraceCheckUtils]: 28: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:45,404 INFO L273 TraceCheckUtils]: 29: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:45,404 INFO L273 TraceCheckUtils]: 30: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:45,404 INFO L273 TraceCheckUtils]: 31: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:45,404 INFO L273 TraceCheckUtils]: 32: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:45,404 INFO L273 TraceCheckUtils]: 33: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:45,404 INFO L273 TraceCheckUtils]: 34: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:45,405 INFO L273 TraceCheckUtils]: 35: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:45,405 INFO L273 TraceCheckUtils]: 36: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:45,405 INFO L273 TraceCheckUtils]: 37: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:45,405 INFO L273 TraceCheckUtils]: 38: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:45,405 INFO L273 TraceCheckUtils]: 39: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:45,405 INFO L273 TraceCheckUtils]: 40: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:45,405 INFO L273 TraceCheckUtils]: 41: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:45,405 INFO L273 TraceCheckUtils]: 42: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:45,405 INFO L273 TraceCheckUtils]: 43: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:45,405 INFO L273 TraceCheckUtils]: 44: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:45,406 INFO L273 TraceCheckUtils]: 45: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:45,406 INFO L273 TraceCheckUtils]: 46: Hoare triple {41854#true} assume !(~i~1 < 20); {41854#true} is VALID [2018-11-23 12:17:45,406 INFO L256 TraceCheckUtils]: 47: Hoare triple {41854#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {41854#true} is VALID [2018-11-23 12:17:45,406 INFO L273 TraceCheckUtils]: 48: Hoare triple {41854#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {41854#true} is VALID [2018-11-23 12:17:45,406 INFO L273 TraceCheckUtils]: 49: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,406 INFO L273 TraceCheckUtils]: 50: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,406 INFO L273 TraceCheckUtils]: 51: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,406 INFO L273 TraceCheckUtils]: 52: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,406 INFO L273 TraceCheckUtils]: 53: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,407 INFO L273 TraceCheckUtils]: 54: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,407 INFO L273 TraceCheckUtils]: 55: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,407 INFO L273 TraceCheckUtils]: 56: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,407 INFO L273 TraceCheckUtils]: 57: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,407 INFO L273 TraceCheckUtils]: 58: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,407 INFO L273 TraceCheckUtils]: 59: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,407 INFO L273 TraceCheckUtils]: 60: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,407 INFO L273 TraceCheckUtils]: 61: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,407 INFO L273 TraceCheckUtils]: 62: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,407 INFO L273 TraceCheckUtils]: 63: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,408 INFO L273 TraceCheckUtils]: 64: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,408 INFO L273 TraceCheckUtils]: 65: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,408 INFO L273 TraceCheckUtils]: 66: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,408 INFO L273 TraceCheckUtils]: 67: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,408 INFO L273 TraceCheckUtils]: 68: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,408 INFO L273 TraceCheckUtils]: 69: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,408 INFO L273 TraceCheckUtils]: 70: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,408 INFO L273 TraceCheckUtils]: 71: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,408 INFO L273 TraceCheckUtils]: 72: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,408 INFO L273 TraceCheckUtils]: 73: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,409 INFO L273 TraceCheckUtils]: 74: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,409 INFO L273 TraceCheckUtils]: 75: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,409 INFO L273 TraceCheckUtils]: 76: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,409 INFO L273 TraceCheckUtils]: 77: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,409 INFO L273 TraceCheckUtils]: 78: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,409 INFO L273 TraceCheckUtils]: 79: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,409 INFO L273 TraceCheckUtils]: 80: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,409 INFO L273 TraceCheckUtils]: 81: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,409 INFO L273 TraceCheckUtils]: 82: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,409 INFO L273 TraceCheckUtils]: 83: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,410 INFO L273 TraceCheckUtils]: 84: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,410 INFO L273 TraceCheckUtils]: 85: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,410 INFO L273 TraceCheckUtils]: 86: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,410 INFO L273 TraceCheckUtils]: 87: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,410 INFO L273 TraceCheckUtils]: 88: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,410 INFO L273 TraceCheckUtils]: 89: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,410 INFO L273 TraceCheckUtils]: 90: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,410 INFO L273 TraceCheckUtils]: 91: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,410 INFO L273 TraceCheckUtils]: 92: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,411 INFO L273 TraceCheckUtils]: 93: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,411 INFO L273 TraceCheckUtils]: 94: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,411 INFO L273 TraceCheckUtils]: 95: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,411 INFO L273 TraceCheckUtils]: 96: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,411 INFO L273 TraceCheckUtils]: 97: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,411 INFO L273 TraceCheckUtils]: 98: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,411 INFO L273 TraceCheckUtils]: 99: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,411 INFO L273 TraceCheckUtils]: 100: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,411 INFO L273 TraceCheckUtils]: 101: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,411 INFO L273 TraceCheckUtils]: 102: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,412 INFO L273 TraceCheckUtils]: 103: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,412 INFO L273 TraceCheckUtils]: 104: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,412 INFO L273 TraceCheckUtils]: 105: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,412 INFO L273 TraceCheckUtils]: 106: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,412 INFO L273 TraceCheckUtils]: 107: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,412 INFO L273 TraceCheckUtils]: 108: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,412 INFO L273 TraceCheckUtils]: 109: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,412 INFO L273 TraceCheckUtils]: 110: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,412 INFO L273 TraceCheckUtils]: 111: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,412 INFO L273 TraceCheckUtils]: 112: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,413 INFO L273 TraceCheckUtils]: 113: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,413 INFO L273 TraceCheckUtils]: 114: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,413 INFO L273 TraceCheckUtils]: 115: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,413 INFO L273 TraceCheckUtils]: 116: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,413 INFO L273 TraceCheckUtils]: 117: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,413 INFO L273 TraceCheckUtils]: 118: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,413 INFO L273 TraceCheckUtils]: 119: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,413 INFO L273 TraceCheckUtils]: 120: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,413 INFO L273 TraceCheckUtils]: 121: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,413 INFO L273 TraceCheckUtils]: 122: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,414 INFO L273 TraceCheckUtils]: 123: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,414 INFO L273 TraceCheckUtils]: 124: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,414 INFO L273 TraceCheckUtils]: 125: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,414 INFO L273 TraceCheckUtils]: 126: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,414 INFO L273 TraceCheckUtils]: 127: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,414 INFO L273 TraceCheckUtils]: 128: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,414 INFO L273 TraceCheckUtils]: 129: Hoare triple {41854#true} assume !(~i~0 < 20); {41854#true} is VALID [2018-11-23 12:17:45,414 INFO L273 TraceCheckUtils]: 130: Hoare triple {41854#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {41854#true} is VALID [2018-11-23 12:17:45,414 INFO L273 TraceCheckUtils]: 131: Hoare triple {41854#true} assume true; {41854#true} is VALID [2018-11-23 12:17:45,415 INFO L268 TraceCheckUtils]: 132: Hoare quadruple {41854#true} {41854#true} #77#return; {41854#true} is VALID [2018-11-23 12:17:45,415 INFO L273 TraceCheckUtils]: 133: Hoare triple {41854#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {41854#true} is VALID [2018-11-23 12:17:45,415 INFO L256 TraceCheckUtils]: 134: Hoare triple {41854#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {41854#true} is VALID [2018-11-23 12:17:45,415 INFO L273 TraceCheckUtils]: 135: Hoare triple {41854#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {41854#true} is VALID [2018-11-23 12:17:45,415 INFO L273 TraceCheckUtils]: 136: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,415 INFO L273 TraceCheckUtils]: 137: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,415 INFO L273 TraceCheckUtils]: 138: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,415 INFO L273 TraceCheckUtils]: 139: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,415 INFO L273 TraceCheckUtils]: 140: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,415 INFO L273 TraceCheckUtils]: 141: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,416 INFO L273 TraceCheckUtils]: 142: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,416 INFO L273 TraceCheckUtils]: 143: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,416 INFO L273 TraceCheckUtils]: 144: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,416 INFO L273 TraceCheckUtils]: 145: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,416 INFO L273 TraceCheckUtils]: 146: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,416 INFO L273 TraceCheckUtils]: 147: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,416 INFO L273 TraceCheckUtils]: 148: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,416 INFO L273 TraceCheckUtils]: 149: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,416 INFO L273 TraceCheckUtils]: 150: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,416 INFO L273 TraceCheckUtils]: 151: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,417 INFO L273 TraceCheckUtils]: 152: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,417 INFO L273 TraceCheckUtils]: 153: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,417 INFO L273 TraceCheckUtils]: 154: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,417 INFO L273 TraceCheckUtils]: 155: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,417 INFO L273 TraceCheckUtils]: 156: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,417 INFO L273 TraceCheckUtils]: 157: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,417 INFO L273 TraceCheckUtils]: 158: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,417 INFO L273 TraceCheckUtils]: 159: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,417 INFO L273 TraceCheckUtils]: 160: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,418 INFO L273 TraceCheckUtils]: 161: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,418 INFO L273 TraceCheckUtils]: 162: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,418 INFO L273 TraceCheckUtils]: 163: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,418 INFO L273 TraceCheckUtils]: 164: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,418 INFO L273 TraceCheckUtils]: 165: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,418 INFO L273 TraceCheckUtils]: 166: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,418 INFO L273 TraceCheckUtils]: 167: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,418 INFO L273 TraceCheckUtils]: 168: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,418 INFO L273 TraceCheckUtils]: 169: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,418 INFO L273 TraceCheckUtils]: 170: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,419 INFO L273 TraceCheckUtils]: 171: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,419 INFO L273 TraceCheckUtils]: 172: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,419 INFO L273 TraceCheckUtils]: 173: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,419 INFO L273 TraceCheckUtils]: 174: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,419 INFO L273 TraceCheckUtils]: 175: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,419 INFO L273 TraceCheckUtils]: 176: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,419 INFO L273 TraceCheckUtils]: 177: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,419 INFO L273 TraceCheckUtils]: 178: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,419 INFO L273 TraceCheckUtils]: 179: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,419 INFO L273 TraceCheckUtils]: 180: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,420 INFO L273 TraceCheckUtils]: 181: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,420 INFO L273 TraceCheckUtils]: 182: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,420 INFO L273 TraceCheckUtils]: 183: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,420 INFO L273 TraceCheckUtils]: 184: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,420 INFO L273 TraceCheckUtils]: 185: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,420 INFO L273 TraceCheckUtils]: 186: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,420 INFO L273 TraceCheckUtils]: 187: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,420 INFO L273 TraceCheckUtils]: 188: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,420 INFO L273 TraceCheckUtils]: 189: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,421 INFO L273 TraceCheckUtils]: 190: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,421 INFO L273 TraceCheckUtils]: 191: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,421 INFO L273 TraceCheckUtils]: 192: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,421 INFO L273 TraceCheckUtils]: 193: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,421 INFO L273 TraceCheckUtils]: 194: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,421 INFO L273 TraceCheckUtils]: 195: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,421 INFO L273 TraceCheckUtils]: 196: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,421 INFO L273 TraceCheckUtils]: 197: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,421 INFO L273 TraceCheckUtils]: 198: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,421 INFO L273 TraceCheckUtils]: 199: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,422 INFO L273 TraceCheckUtils]: 200: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,422 INFO L273 TraceCheckUtils]: 201: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,422 INFO L273 TraceCheckUtils]: 202: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,422 INFO L273 TraceCheckUtils]: 203: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,422 INFO L273 TraceCheckUtils]: 204: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,422 INFO L273 TraceCheckUtils]: 205: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,422 INFO L273 TraceCheckUtils]: 206: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,422 INFO L273 TraceCheckUtils]: 207: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,422 INFO L273 TraceCheckUtils]: 208: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,422 INFO L273 TraceCheckUtils]: 209: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,423 INFO L273 TraceCheckUtils]: 210: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,423 INFO L273 TraceCheckUtils]: 211: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,423 INFO L273 TraceCheckUtils]: 212: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,423 INFO L273 TraceCheckUtils]: 213: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,423 INFO L273 TraceCheckUtils]: 214: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,423 INFO L273 TraceCheckUtils]: 215: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,423 INFO L273 TraceCheckUtils]: 216: Hoare triple {41854#true} assume !(~i~0 < 20); {41854#true} is VALID [2018-11-23 12:17:45,423 INFO L273 TraceCheckUtils]: 217: Hoare triple {41854#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {41854#true} is VALID [2018-11-23 12:17:45,423 INFO L273 TraceCheckUtils]: 218: Hoare triple {41854#true} assume true; {41854#true} is VALID [2018-11-23 12:17:45,423 INFO L268 TraceCheckUtils]: 219: Hoare quadruple {41854#true} {41854#true} #79#return; {41854#true} is VALID [2018-11-23 12:17:45,424 INFO L273 TraceCheckUtils]: 220: Hoare triple {41854#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {41856#(= main_~i~2 0)} is VALID [2018-11-23 12:17:45,424 INFO L273 TraceCheckUtils]: 221: Hoare triple {41856#(= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {41856#(= main_~i~2 0)} is VALID [2018-11-23 12:17:45,425 INFO L273 TraceCheckUtils]: 222: Hoare triple {41856#(= main_~i~2 0)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {41857#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:45,425 INFO L273 TraceCheckUtils]: 223: Hoare triple {41857#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {41857#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:45,425 INFO L273 TraceCheckUtils]: 224: Hoare triple {41857#(<= main_~i~2 1)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {41858#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:45,426 INFO L273 TraceCheckUtils]: 225: Hoare triple {41858#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {41858#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:45,426 INFO L273 TraceCheckUtils]: 226: Hoare triple {41858#(<= main_~i~2 2)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {41859#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:45,426 INFO L273 TraceCheckUtils]: 227: Hoare triple {41859#(<= main_~i~2 3)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {41859#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:45,427 INFO L273 TraceCheckUtils]: 228: Hoare triple {41859#(<= main_~i~2 3)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {41860#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:45,427 INFO L273 TraceCheckUtils]: 229: Hoare triple {41860#(<= main_~i~2 4)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {41860#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:45,428 INFO L273 TraceCheckUtils]: 230: Hoare triple {41860#(<= main_~i~2 4)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {41861#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:45,429 INFO L273 TraceCheckUtils]: 231: Hoare triple {41861#(<= main_~i~2 5)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {41861#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:45,429 INFO L273 TraceCheckUtils]: 232: Hoare triple {41861#(<= main_~i~2 5)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {41862#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:45,430 INFO L273 TraceCheckUtils]: 233: Hoare triple {41862#(<= main_~i~2 6)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {41862#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:45,431 INFO L273 TraceCheckUtils]: 234: Hoare triple {41862#(<= main_~i~2 6)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {41863#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:45,431 INFO L273 TraceCheckUtils]: 235: Hoare triple {41863#(<= main_~i~2 7)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {41863#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:45,432 INFO L273 TraceCheckUtils]: 236: Hoare triple {41863#(<= main_~i~2 7)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {41864#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:45,432 INFO L273 TraceCheckUtils]: 237: Hoare triple {41864#(<= main_~i~2 8)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {41864#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:45,433 INFO L273 TraceCheckUtils]: 238: Hoare triple {41864#(<= main_~i~2 8)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {41865#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:45,433 INFO L273 TraceCheckUtils]: 239: Hoare triple {41865#(<= main_~i~2 9)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {41865#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:45,434 INFO L273 TraceCheckUtils]: 240: Hoare triple {41865#(<= main_~i~2 9)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {41866#(<= main_~i~2 10)} is VALID [2018-11-23 12:17:45,435 INFO L273 TraceCheckUtils]: 241: Hoare triple {41866#(<= main_~i~2 10)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {41866#(<= main_~i~2 10)} is VALID [2018-11-23 12:17:45,435 INFO L273 TraceCheckUtils]: 242: Hoare triple {41866#(<= main_~i~2 10)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {41867#(<= main_~i~2 11)} is VALID [2018-11-23 12:17:45,436 INFO L273 TraceCheckUtils]: 243: Hoare triple {41867#(<= main_~i~2 11)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {41867#(<= main_~i~2 11)} is VALID [2018-11-23 12:17:45,437 INFO L273 TraceCheckUtils]: 244: Hoare triple {41867#(<= main_~i~2 11)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {41868#(<= main_~i~2 12)} is VALID [2018-11-23 12:17:45,437 INFO L273 TraceCheckUtils]: 245: Hoare triple {41868#(<= main_~i~2 12)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {41868#(<= main_~i~2 12)} is VALID [2018-11-23 12:17:45,438 INFO L273 TraceCheckUtils]: 246: Hoare triple {41868#(<= main_~i~2 12)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {41869#(<= main_~i~2 13)} is VALID [2018-11-23 12:17:45,438 INFO L273 TraceCheckUtils]: 247: Hoare triple {41869#(<= main_~i~2 13)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {41869#(<= main_~i~2 13)} is VALID [2018-11-23 12:17:45,439 INFO L273 TraceCheckUtils]: 248: Hoare triple {41869#(<= main_~i~2 13)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {41870#(<= main_~i~2 14)} is VALID [2018-11-23 12:17:45,440 INFO L273 TraceCheckUtils]: 249: Hoare triple {41870#(<= main_~i~2 14)} assume !(~i~2 < 19); {41855#false} is VALID [2018-11-23 12:17:45,440 INFO L273 TraceCheckUtils]: 250: Hoare triple {41855#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {41855#false} is VALID [2018-11-23 12:17:45,440 INFO L256 TraceCheckUtils]: 251: Hoare triple {41855#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {41854#true} is VALID [2018-11-23 12:17:45,440 INFO L273 TraceCheckUtils]: 252: Hoare triple {41854#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {41854#true} is VALID [2018-11-23 12:17:45,440 INFO L273 TraceCheckUtils]: 253: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,441 INFO L273 TraceCheckUtils]: 254: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,441 INFO L273 TraceCheckUtils]: 255: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,441 INFO L273 TraceCheckUtils]: 256: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,441 INFO L273 TraceCheckUtils]: 257: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,441 INFO L273 TraceCheckUtils]: 258: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,442 INFO L273 TraceCheckUtils]: 259: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,442 INFO L273 TraceCheckUtils]: 260: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,442 INFO L273 TraceCheckUtils]: 261: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,442 INFO L273 TraceCheckUtils]: 262: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,442 INFO L273 TraceCheckUtils]: 263: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,442 INFO L273 TraceCheckUtils]: 264: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,443 INFO L273 TraceCheckUtils]: 265: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,443 INFO L273 TraceCheckUtils]: 266: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,443 INFO L273 TraceCheckUtils]: 267: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,443 INFO L273 TraceCheckUtils]: 268: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,443 INFO L273 TraceCheckUtils]: 269: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,443 INFO L273 TraceCheckUtils]: 270: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,443 INFO L273 TraceCheckUtils]: 271: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,443 INFO L273 TraceCheckUtils]: 272: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,443 INFO L273 TraceCheckUtils]: 273: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,444 INFO L273 TraceCheckUtils]: 274: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,444 INFO L273 TraceCheckUtils]: 275: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,444 INFO L273 TraceCheckUtils]: 276: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,444 INFO L273 TraceCheckUtils]: 277: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,444 INFO L273 TraceCheckUtils]: 278: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,444 INFO L273 TraceCheckUtils]: 279: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,444 INFO L273 TraceCheckUtils]: 280: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,444 INFO L273 TraceCheckUtils]: 281: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,444 INFO L273 TraceCheckUtils]: 282: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,444 INFO L273 TraceCheckUtils]: 283: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,445 INFO L273 TraceCheckUtils]: 284: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,445 INFO L273 TraceCheckUtils]: 285: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,445 INFO L273 TraceCheckUtils]: 286: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,445 INFO L273 TraceCheckUtils]: 287: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,445 INFO L273 TraceCheckUtils]: 288: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,445 INFO L273 TraceCheckUtils]: 289: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,445 INFO L273 TraceCheckUtils]: 290: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,445 INFO L273 TraceCheckUtils]: 291: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,445 INFO L273 TraceCheckUtils]: 292: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,445 INFO L273 TraceCheckUtils]: 293: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,446 INFO L273 TraceCheckUtils]: 294: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,446 INFO L273 TraceCheckUtils]: 295: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,446 INFO L273 TraceCheckUtils]: 296: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,446 INFO L273 TraceCheckUtils]: 297: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,446 INFO L273 TraceCheckUtils]: 298: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,446 INFO L273 TraceCheckUtils]: 299: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,446 INFO L273 TraceCheckUtils]: 300: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,446 INFO L273 TraceCheckUtils]: 301: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,446 INFO L273 TraceCheckUtils]: 302: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,446 INFO L273 TraceCheckUtils]: 303: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,447 INFO L273 TraceCheckUtils]: 304: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,447 INFO L273 TraceCheckUtils]: 305: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,447 INFO L273 TraceCheckUtils]: 306: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,447 INFO L273 TraceCheckUtils]: 307: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,447 INFO L273 TraceCheckUtils]: 308: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,447 INFO L273 TraceCheckUtils]: 309: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,447 INFO L273 TraceCheckUtils]: 310: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,447 INFO L273 TraceCheckUtils]: 311: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,447 INFO L273 TraceCheckUtils]: 312: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,448 INFO L273 TraceCheckUtils]: 313: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,448 INFO L273 TraceCheckUtils]: 314: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,448 INFO L273 TraceCheckUtils]: 315: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,448 INFO L273 TraceCheckUtils]: 316: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,448 INFO L273 TraceCheckUtils]: 317: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,448 INFO L273 TraceCheckUtils]: 318: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,448 INFO L273 TraceCheckUtils]: 319: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,448 INFO L273 TraceCheckUtils]: 320: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,448 INFO L273 TraceCheckUtils]: 321: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,448 INFO L273 TraceCheckUtils]: 322: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,449 INFO L273 TraceCheckUtils]: 323: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,449 INFO L273 TraceCheckUtils]: 324: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,449 INFO L273 TraceCheckUtils]: 325: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,449 INFO L273 TraceCheckUtils]: 326: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,449 INFO L273 TraceCheckUtils]: 327: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,449 INFO L273 TraceCheckUtils]: 328: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,449 INFO L273 TraceCheckUtils]: 329: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:45,449 INFO L273 TraceCheckUtils]: 330: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:45,449 INFO L273 TraceCheckUtils]: 331: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:45,449 INFO L273 TraceCheckUtils]: 332: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:45,450 INFO L273 TraceCheckUtils]: 333: Hoare triple {41854#true} assume !(~i~0 < 20); {41854#true} is VALID [2018-11-23 12:17:45,450 INFO L273 TraceCheckUtils]: 334: Hoare triple {41854#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {41854#true} is VALID [2018-11-23 12:17:45,450 INFO L273 TraceCheckUtils]: 335: Hoare triple {41854#true} assume true; {41854#true} is VALID [2018-11-23 12:17:45,450 INFO L268 TraceCheckUtils]: 336: Hoare quadruple {41854#true} {41855#false} #81#return; {41855#false} is VALID [2018-11-23 12:17:45,450 INFO L273 TraceCheckUtils]: 337: Hoare triple {41855#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {41855#false} is VALID [2018-11-23 12:17:45,450 INFO L273 TraceCheckUtils]: 338: Hoare triple {41855#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {41855#false} is VALID [2018-11-23 12:17:45,450 INFO L273 TraceCheckUtils]: 339: Hoare triple {41855#false} assume !false; {41855#false} is VALID [2018-11-23 12:17:45,488 INFO L134 CoverageAnalysis]: Checked inductivity of 7871 backedges. 0 proven. 196 refuted. 0 times theorem prover too weak. 7675 trivial. 0 not checked. [2018-11-23 12:17:45,488 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:17:45,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 40 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 40 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:17:45,497 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:17:45,666 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:17:45,666 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:17:45,735 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:45,737 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:17:46,060 INFO L256 TraceCheckUtils]: 0: Hoare triple {41854#true} call ULTIMATE.init(); {41854#true} is VALID [2018-11-23 12:17:46,060 INFO L273 TraceCheckUtils]: 1: Hoare triple {41854#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {41854#true} is VALID [2018-11-23 12:17:46,061 INFO L273 TraceCheckUtils]: 2: Hoare triple {41854#true} assume true; {41854#true} is VALID [2018-11-23 12:17:46,061 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {41854#true} {41854#true} #73#return; {41854#true} is VALID [2018-11-23 12:17:46,061 INFO L256 TraceCheckUtils]: 4: Hoare triple {41854#true} call #t~ret14 := main(); {41854#true} is VALID [2018-11-23 12:17:46,061 INFO L273 TraceCheckUtils]: 5: Hoare triple {41854#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {41854#true} is VALID [2018-11-23 12:17:46,061 INFO L273 TraceCheckUtils]: 6: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:46,062 INFO L273 TraceCheckUtils]: 7: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:46,062 INFO L273 TraceCheckUtils]: 8: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:46,062 INFO L273 TraceCheckUtils]: 9: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:46,062 INFO L273 TraceCheckUtils]: 10: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:46,062 INFO L273 TraceCheckUtils]: 11: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:46,062 INFO L273 TraceCheckUtils]: 12: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:46,063 INFO L273 TraceCheckUtils]: 13: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:46,063 INFO L273 TraceCheckUtils]: 14: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:46,063 INFO L273 TraceCheckUtils]: 15: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:46,063 INFO L273 TraceCheckUtils]: 16: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:46,063 INFO L273 TraceCheckUtils]: 17: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:46,064 INFO L273 TraceCheckUtils]: 18: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:46,064 INFO L273 TraceCheckUtils]: 19: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:46,064 INFO L273 TraceCheckUtils]: 20: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:46,064 INFO L273 TraceCheckUtils]: 21: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:46,064 INFO L273 TraceCheckUtils]: 22: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:46,064 INFO L273 TraceCheckUtils]: 23: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:46,064 INFO L273 TraceCheckUtils]: 24: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:46,064 INFO L273 TraceCheckUtils]: 25: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:46,064 INFO L273 TraceCheckUtils]: 26: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:46,065 INFO L273 TraceCheckUtils]: 27: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:46,065 INFO L273 TraceCheckUtils]: 28: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:46,065 INFO L273 TraceCheckUtils]: 29: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:46,065 INFO L273 TraceCheckUtils]: 30: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:46,065 INFO L273 TraceCheckUtils]: 31: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:46,065 INFO L273 TraceCheckUtils]: 32: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:46,065 INFO L273 TraceCheckUtils]: 33: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:46,065 INFO L273 TraceCheckUtils]: 34: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:46,065 INFO L273 TraceCheckUtils]: 35: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:46,065 INFO L273 TraceCheckUtils]: 36: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:46,066 INFO L273 TraceCheckUtils]: 37: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:46,066 INFO L273 TraceCheckUtils]: 38: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:46,066 INFO L273 TraceCheckUtils]: 39: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:46,066 INFO L273 TraceCheckUtils]: 40: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:46,066 INFO L273 TraceCheckUtils]: 41: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:46,066 INFO L273 TraceCheckUtils]: 42: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:46,066 INFO L273 TraceCheckUtils]: 43: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:46,066 INFO L273 TraceCheckUtils]: 44: Hoare triple {41854#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {41854#true} is VALID [2018-11-23 12:17:46,066 INFO L273 TraceCheckUtils]: 45: Hoare triple {41854#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {41854#true} is VALID [2018-11-23 12:17:46,066 INFO L273 TraceCheckUtils]: 46: Hoare triple {41854#true} assume !(~i~1 < 20); {41854#true} is VALID [2018-11-23 12:17:46,067 INFO L256 TraceCheckUtils]: 47: Hoare triple {41854#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {41854#true} is VALID [2018-11-23 12:17:46,067 INFO L273 TraceCheckUtils]: 48: Hoare triple {41854#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {41854#true} is VALID [2018-11-23 12:17:46,067 INFO L273 TraceCheckUtils]: 49: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,067 INFO L273 TraceCheckUtils]: 50: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,067 INFO L273 TraceCheckUtils]: 51: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,067 INFO L273 TraceCheckUtils]: 52: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,067 INFO L273 TraceCheckUtils]: 53: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,067 INFO L273 TraceCheckUtils]: 54: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,067 INFO L273 TraceCheckUtils]: 55: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,067 INFO L273 TraceCheckUtils]: 56: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,068 INFO L273 TraceCheckUtils]: 57: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,068 INFO L273 TraceCheckUtils]: 58: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,068 INFO L273 TraceCheckUtils]: 59: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,068 INFO L273 TraceCheckUtils]: 60: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,068 INFO L273 TraceCheckUtils]: 61: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,068 INFO L273 TraceCheckUtils]: 62: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,068 INFO L273 TraceCheckUtils]: 63: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,068 INFO L273 TraceCheckUtils]: 64: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,068 INFO L273 TraceCheckUtils]: 65: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,069 INFO L273 TraceCheckUtils]: 66: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,069 INFO L273 TraceCheckUtils]: 67: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,069 INFO L273 TraceCheckUtils]: 68: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,069 INFO L273 TraceCheckUtils]: 69: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,069 INFO L273 TraceCheckUtils]: 70: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,069 INFO L273 TraceCheckUtils]: 71: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,069 INFO L273 TraceCheckUtils]: 72: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,069 INFO L273 TraceCheckUtils]: 73: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,069 INFO L273 TraceCheckUtils]: 74: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,069 INFO L273 TraceCheckUtils]: 75: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,070 INFO L273 TraceCheckUtils]: 76: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,070 INFO L273 TraceCheckUtils]: 77: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,070 INFO L273 TraceCheckUtils]: 78: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,070 INFO L273 TraceCheckUtils]: 79: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,070 INFO L273 TraceCheckUtils]: 80: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,070 INFO L273 TraceCheckUtils]: 81: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,070 INFO L273 TraceCheckUtils]: 82: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,070 INFO L273 TraceCheckUtils]: 83: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,070 INFO L273 TraceCheckUtils]: 84: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,070 INFO L273 TraceCheckUtils]: 85: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,071 INFO L273 TraceCheckUtils]: 86: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,071 INFO L273 TraceCheckUtils]: 87: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,071 INFO L273 TraceCheckUtils]: 88: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,071 INFO L273 TraceCheckUtils]: 89: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,071 INFO L273 TraceCheckUtils]: 90: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,071 INFO L273 TraceCheckUtils]: 91: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,071 INFO L273 TraceCheckUtils]: 92: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,071 INFO L273 TraceCheckUtils]: 93: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,071 INFO L273 TraceCheckUtils]: 94: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,071 INFO L273 TraceCheckUtils]: 95: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,072 INFO L273 TraceCheckUtils]: 96: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,072 INFO L273 TraceCheckUtils]: 97: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,072 INFO L273 TraceCheckUtils]: 98: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,072 INFO L273 TraceCheckUtils]: 99: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,072 INFO L273 TraceCheckUtils]: 100: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,072 INFO L273 TraceCheckUtils]: 101: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,072 INFO L273 TraceCheckUtils]: 102: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,072 INFO L273 TraceCheckUtils]: 103: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,072 INFO L273 TraceCheckUtils]: 104: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,072 INFO L273 TraceCheckUtils]: 105: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,073 INFO L273 TraceCheckUtils]: 106: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,073 INFO L273 TraceCheckUtils]: 107: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,073 INFO L273 TraceCheckUtils]: 108: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,073 INFO L273 TraceCheckUtils]: 109: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,073 INFO L273 TraceCheckUtils]: 110: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,073 INFO L273 TraceCheckUtils]: 111: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,073 INFO L273 TraceCheckUtils]: 112: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,073 INFO L273 TraceCheckUtils]: 113: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,073 INFO L273 TraceCheckUtils]: 114: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,073 INFO L273 TraceCheckUtils]: 115: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,074 INFO L273 TraceCheckUtils]: 116: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,074 INFO L273 TraceCheckUtils]: 117: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,074 INFO L273 TraceCheckUtils]: 118: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,074 INFO L273 TraceCheckUtils]: 119: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,074 INFO L273 TraceCheckUtils]: 120: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,074 INFO L273 TraceCheckUtils]: 121: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,074 INFO L273 TraceCheckUtils]: 122: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,074 INFO L273 TraceCheckUtils]: 123: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,074 INFO L273 TraceCheckUtils]: 124: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,074 INFO L273 TraceCheckUtils]: 125: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,075 INFO L273 TraceCheckUtils]: 126: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,075 INFO L273 TraceCheckUtils]: 127: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,075 INFO L273 TraceCheckUtils]: 128: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,075 INFO L273 TraceCheckUtils]: 129: Hoare triple {41854#true} assume !(~i~0 < 20); {41854#true} is VALID [2018-11-23 12:17:46,075 INFO L273 TraceCheckUtils]: 130: Hoare triple {41854#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {41854#true} is VALID [2018-11-23 12:17:46,075 INFO L273 TraceCheckUtils]: 131: Hoare triple {41854#true} assume true; {41854#true} is VALID [2018-11-23 12:17:46,075 INFO L268 TraceCheckUtils]: 132: Hoare quadruple {41854#true} {41854#true} #77#return; {41854#true} is VALID [2018-11-23 12:17:46,075 INFO L273 TraceCheckUtils]: 133: Hoare triple {41854#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {41854#true} is VALID [2018-11-23 12:17:46,075 INFO L256 TraceCheckUtils]: 134: Hoare triple {41854#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {41854#true} is VALID [2018-11-23 12:17:46,075 INFO L273 TraceCheckUtils]: 135: Hoare triple {41854#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {41854#true} is VALID [2018-11-23 12:17:46,076 INFO L273 TraceCheckUtils]: 136: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,076 INFO L273 TraceCheckUtils]: 137: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,076 INFO L273 TraceCheckUtils]: 138: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,076 INFO L273 TraceCheckUtils]: 139: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,076 INFO L273 TraceCheckUtils]: 140: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,076 INFO L273 TraceCheckUtils]: 141: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,076 INFO L273 TraceCheckUtils]: 142: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,076 INFO L273 TraceCheckUtils]: 143: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,076 INFO L273 TraceCheckUtils]: 144: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,077 INFO L273 TraceCheckUtils]: 145: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,077 INFO L273 TraceCheckUtils]: 146: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,077 INFO L273 TraceCheckUtils]: 147: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,077 INFO L273 TraceCheckUtils]: 148: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,077 INFO L273 TraceCheckUtils]: 149: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,077 INFO L273 TraceCheckUtils]: 150: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,077 INFO L273 TraceCheckUtils]: 151: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,077 INFO L273 TraceCheckUtils]: 152: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,077 INFO L273 TraceCheckUtils]: 153: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,077 INFO L273 TraceCheckUtils]: 154: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,077 INFO L273 TraceCheckUtils]: 155: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,078 INFO L273 TraceCheckUtils]: 156: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,078 INFO L273 TraceCheckUtils]: 157: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,078 INFO L273 TraceCheckUtils]: 158: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,078 INFO L273 TraceCheckUtils]: 159: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,078 INFO L273 TraceCheckUtils]: 160: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,078 INFO L273 TraceCheckUtils]: 161: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,078 INFO L273 TraceCheckUtils]: 162: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,078 INFO L273 TraceCheckUtils]: 163: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,078 INFO L273 TraceCheckUtils]: 164: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,078 INFO L273 TraceCheckUtils]: 165: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,079 INFO L273 TraceCheckUtils]: 166: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,079 INFO L273 TraceCheckUtils]: 167: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,079 INFO L273 TraceCheckUtils]: 168: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,079 INFO L273 TraceCheckUtils]: 169: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,079 INFO L273 TraceCheckUtils]: 170: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,079 INFO L273 TraceCheckUtils]: 171: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,079 INFO L273 TraceCheckUtils]: 172: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,079 INFO L273 TraceCheckUtils]: 173: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,079 INFO L273 TraceCheckUtils]: 174: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,080 INFO L273 TraceCheckUtils]: 175: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,080 INFO L273 TraceCheckUtils]: 176: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,080 INFO L273 TraceCheckUtils]: 177: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,080 INFO L273 TraceCheckUtils]: 178: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,080 INFO L273 TraceCheckUtils]: 179: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,080 INFO L273 TraceCheckUtils]: 180: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,080 INFO L273 TraceCheckUtils]: 181: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,080 INFO L273 TraceCheckUtils]: 182: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,080 INFO L273 TraceCheckUtils]: 183: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,080 INFO L273 TraceCheckUtils]: 184: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,081 INFO L273 TraceCheckUtils]: 185: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,081 INFO L273 TraceCheckUtils]: 186: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,081 INFO L273 TraceCheckUtils]: 187: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,081 INFO L273 TraceCheckUtils]: 188: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,081 INFO L273 TraceCheckUtils]: 189: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,081 INFO L273 TraceCheckUtils]: 190: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,081 INFO L273 TraceCheckUtils]: 191: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,081 INFO L273 TraceCheckUtils]: 192: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,081 INFO L273 TraceCheckUtils]: 193: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,081 INFO L273 TraceCheckUtils]: 194: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,082 INFO L273 TraceCheckUtils]: 195: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,082 INFO L273 TraceCheckUtils]: 196: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,082 INFO L273 TraceCheckUtils]: 197: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,082 INFO L273 TraceCheckUtils]: 198: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,082 INFO L273 TraceCheckUtils]: 199: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,082 INFO L273 TraceCheckUtils]: 200: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,082 INFO L273 TraceCheckUtils]: 201: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,082 INFO L273 TraceCheckUtils]: 202: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,082 INFO L273 TraceCheckUtils]: 203: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,082 INFO L273 TraceCheckUtils]: 204: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,083 INFO L273 TraceCheckUtils]: 205: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,083 INFO L273 TraceCheckUtils]: 206: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,083 INFO L273 TraceCheckUtils]: 207: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,083 INFO L273 TraceCheckUtils]: 208: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,083 INFO L273 TraceCheckUtils]: 209: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,083 INFO L273 TraceCheckUtils]: 210: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,083 INFO L273 TraceCheckUtils]: 211: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,083 INFO L273 TraceCheckUtils]: 212: Hoare triple {41854#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41854#true} is VALID [2018-11-23 12:17:46,083 INFO L273 TraceCheckUtils]: 213: Hoare triple {41854#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41854#true} is VALID [2018-11-23 12:17:46,083 INFO L273 TraceCheckUtils]: 214: Hoare triple {41854#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41854#true} is VALID [2018-11-23 12:17:46,084 INFO L273 TraceCheckUtils]: 215: Hoare triple {41854#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41854#true} is VALID [2018-11-23 12:17:46,084 INFO L273 TraceCheckUtils]: 216: Hoare triple {41854#true} assume !(~i~0 < 20); {41854#true} is VALID [2018-11-23 12:17:46,084 INFO L273 TraceCheckUtils]: 217: Hoare triple {41854#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {41854#true} is VALID [2018-11-23 12:17:46,084 INFO L273 TraceCheckUtils]: 218: Hoare triple {41854#true} assume true; {41854#true} is VALID [2018-11-23 12:17:46,084 INFO L268 TraceCheckUtils]: 219: Hoare quadruple {41854#true} {41854#true} #79#return; {41854#true} is VALID [2018-11-23 12:17:46,084 INFO L273 TraceCheckUtils]: 220: Hoare triple {41854#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {42534#(<= main_~i~2 0)} is VALID [2018-11-23 12:17:46,085 INFO L273 TraceCheckUtils]: 221: Hoare triple {42534#(<= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {42534#(<= main_~i~2 0)} is VALID [2018-11-23 12:17:46,085 INFO L273 TraceCheckUtils]: 222: Hoare triple {42534#(<= main_~i~2 0)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {41857#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:46,086 INFO L273 TraceCheckUtils]: 223: Hoare triple {41857#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {41857#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:46,086 INFO L273 TraceCheckUtils]: 224: Hoare triple {41857#(<= main_~i~2 1)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {41858#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:46,086 INFO L273 TraceCheckUtils]: 225: Hoare triple {41858#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {41858#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:46,087 INFO L273 TraceCheckUtils]: 226: Hoare triple {41858#(<= main_~i~2 2)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {41859#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:46,087 INFO L273 TraceCheckUtils]: 227: Hoare triple {41859#(<= main_~i~2 3)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {41859#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:46,087 INFO L273 TraceCheckUtils]: 228: Hoare triple {41859#(<= main_~i~2 3)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {41860#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:46,088 INFO L273 TraceCheckUtils]: 229: Hoare triple {41860#(<= main_~i~2 4)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {41860#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:46,088 INFO L273 TraceCheckUtils]: 230: Hoare triple {41860#(<= main_~i~2 4)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {41861#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:46,089 INFO L273 TraceCheckUtils]: 231: Hoare triple {41861#(<= main_~i~2 5)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {41861#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:46,090 INFO L273 TraceCheckUtils]: 232: Hoare triple {41861#(<= main_~i~2 5)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {41862#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:46,090 INFO L273 TraceCheckUtils]: 233: Hoare triple {41862#(<= main_~i~2 6)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {41862#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:46,091 INFO L273 TraceCheckUtils]: 234: Hoare triple {41862#(<= main_~i~2 6)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {41863#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:46,091 INFO L273 TraceCheckUtils]: 235: Hoare triple {41863#(<= main_~i~2 7)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {41863#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:46,092 INFO L273 TraceCheckUtils]: 236: Hoare triple {41863#(<= main_~i~2 7)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {41864#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:46,093 INFO L273 TraceCheckUtils]: 237: Hoare triple {41864#(<= main_~i~2 8)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {41864#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:46,093 INFO L273 TraceCheckUtils]: 238: Hoare triple {41864#(<= main_~i~2 8)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {41865#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:46,094 INFO L273 TraceCheckUtils]: 239: Hoare triple {41865#(<= main_~i~2 9)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {41865#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:46,094 INFO L273 TraceCheckUtils]: 240: Hoare triple {41865#(<= main_~i~2 9)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {41866#(<= main_~i~2 10)} is VALID [2018-11-23 12:17:46,095 INFO L273 TraceCheckUtils]: 241: Hoare triple {41866#(<= main_~i~2 10)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {41866#(<= main_~i~2 10)} is VALID [2018-11-23 12:17:46,096 INFO L273 TraceCheckUtils]: 242: Hoare triple {41866#(<= main_~i~2 10)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {41867#(<= main_~i~2 11)} is VALID [2018-11-23 12:17:46,096 INFO L273 TraceCheckUtils]: 243: Hoare triple {41867#(<= main_~i~2 11)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {41867#(<= main_~i~2 11)} is VALID [2018-11-23 12:17:46,097 INFO L273 TraceCheckUtils]: 244: Hoare triple {41867#(<= main_~i~2 11)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {41868#(<= main_~i~2 12)} is VALID [2018-11-23 12:17:46,097 INFO L273 TraceCheckUtils]: 245: Hoare triple {41868#(<= main_~i~2 12)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {41868#(<= main_~i~2 12)} is VALID [2018-11-23 12:17:46,098 INFO L273 TraceCheckUtils]: 246: Hoare triple {41868#(<= main_~i~2 12)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {41869#(<= main_~i~2 13)} is VALID [2018-11-23 12:17:46,099 INFO L273 TraceCheckUtils]: 247: Hoare triple {41869#(<= main_~i~2 13)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {41869#(<= main_~i~2 13)} is VALID [2018-11-23 12:17:46,099 INFO L273 TraceCheckUtils]: 248: Hoare triple {41869#(<= main_~i~2 13)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {41870#(<= main_~i~2 14)} is VALID [2018-11-23 12:17:46,100 INFO L273 TraceCheckUtils]: 249: Hoare triple {41870#(<= main_~i~2 14)} assume !(~i~2 < 19); {41855#false} is VALID [2018-11-23 12:17:46,100 INFO L273 TraceCheckUtils]: 250: Hoare triple {41855#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {41855#false} is VALID [2018-11-23 12:17:46,100 INFO L256 TraceCheckUtils]: 251: Hoare triple {41855#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {41855#false} is VALID [2018-11-23 12:17:46,101 INFO L273 TraceCheckUtils]: 252: Hoare triple {41855#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {41855#false} is VALID [2018-11-23 12:17:46,101 INFO L273 TraceCheckUtils]: 253: Hoare triple {41855#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41855#false} is VALID [2018-11-23 12:17:46,101 INFO L273 TraceCheckUtils]: 254: Hoare triple {41855#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41855#false} is VALID [2018-11-23 12:17:46,101 INFO L273 TraceCheckUtils]: 255: Hoare triple {41855#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41855#false} is VALID [2018-11-23 12:17:46,101 INFO L273 TraceCheckUtils]: 256: Hoare triple {41855#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41855#false} is VALID [2018-11-23 12:17:46,101 INFO L273 TraceCheckUtils]: 257: Hoare triple {41855#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41855#false} is VALID [2018-11-23 12:17:46,102 INFO L273 TraceCheckUtils]: 258: Hoare triple {41855#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41855#false} is VALID [2018-11-23 12:17:46,102 INFO L273 TraceCheckUtils]: 259: Hoare triple {41855#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41855#false} is VALID [2018-11-23 12:17:46,102 INFO L273 TraceCheckUtils]: 260: Hoare triple {41855#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41855#false} is VALID [2018-11-23 12:17:46,102 INFO L273 TraceCheckUtils]: 261: Hoare triple {41855#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41855#false} is VALID [2018-11-23 12:17:46,102 INFO L273 TraceCheckUtils]: 262: Hoare triple {41855#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41855#false} is VALID [2018-11-23 12:17:46,102 INFO L273 TraceCheckUtils]: 263: Hoare triple {41855#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41855#false} is VALID [2018-11-23 12:17:46,103 INFO L273 TraceCheckUtils]: 264: Hoare triple {41855#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41855#false} is VALID [2018-11-23 12:17:46,103 INFO L273 TraceCheckUtils]: 265: Hoare triple {41855#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41855#false} is VALID [2018-11-23 12:17:46,103 INFO L273 TraceCheckUtils]: 266: Hoare triple {41855#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41855#false} is VALID [2018-11-23 12:17:46,103 INFO L273 TraceCheckUtils]: 267: Hoare triple {41855#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41855#false} is VALID [2018-11-23 12:17:46,103 INFO L273 TraceCheckUtils]: 268: Hoare triple {41855#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41855#false} is VALID [2018-11-23 12:17:46,104 INFO L273 TraceCheckUtils]: 269: Hoare triple {41855#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41855#false} is VALID [2018-11-23 12:17:46,104 INFO L273 TraceCheckUtils]: 270: Hoare triple {41855#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41855#false} is VALID [2018-11-23 12:17:46,104 INFO L273 TraceCheckUtils]: 271: Hoare triple {41855#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41855#false} is VALID [2018-11-23 12:17:46,104 INFO L273 TraceCheckUtils]: 272: Hoare triple {41855#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41855#false} is VALID [2018-11-23 12:17:46,104 INFO L273 TraceCheckUtils]: 273: Hoare triple {41855#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41855#false} is VALID [2018-11-23 12:17:46,104 INFO L273 TraceCheckUtils]: 274: Hoare triple {41855#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41855#false} is VALID [2018-11-23 12:17:46,104 INFO L273 TraceCheckUtils]: 275: Hoare triple {41855#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41855#false} is VALID [2018-11-23 12:17:46,104 INFO L273 TraceCheckUtils]: 276: Hoare triple {41855#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41855#false} is VALID [2018-11-23 12:17:46,104 INFO L273 TraceCheckUtils]: 277: Hoare triple {41855#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41855#false} is VALID [2018-11-23 12:17:46,105 INFO L273 TraceCheckUtils]: 278: Hoare triple {41855#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41855#false} is VALID [2018-11-23 12:17:46,105 INFO L273 TraceCheckUtils]: 279: Hoare triple {41855#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41855#false} is VALID [2018-11-23 12:17:46,105 INFO L273 TraceCheckUtils]: 280: Hoare triple {41855#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41855#false} is VALID [2018-11-23 12:17:46,105 INFO L273 TraceCheckUtils]: 281: Hoare triple {41855#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41855#false} is VALID [2018-11-23 12:17:46,105 INFO L273 TraceCheckUtils]: 282: Hoare triple {41855#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41855#false} is VALID [2018-11-23 12:17:46,105 INFO L273 TraceCheckUtils]: 283: Hoare triple {41855#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41855#false} is VALID [2018-11-23 12:17:46,105 INFO L273 TraceCheckUtils]: 284: Hoare triple {41855#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41855#false} is VALID [2018-11-23 12:17:46,105 INFO L273 TraceCheckUtils]: 285: Hoare triple {41855#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41855#false} is VALID [2018-11-23 12:17:46,105 INFO L273 TraceCheckUtils]: 286: Hoare triple {41855#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41855#false} is VALID [2018-11-23 12:17:46,105 INFO L273 TraceCheckUtils]: 287: Hoare triple {41855#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41855#false} is VALID [2018-11-23 12:17:46,106 INFO L273 TraceCheckUtils]: 288: Hoare triple {41855#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41855#false} is VALID [2018-11-23 12:17:46,106 INFO L273 TraceCheckUtils]: 289: Hoare triple {41855#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41855#false} is VALID [2018-11-23 12:17:46,106 INFO L273 TraceCheckUtils]: 290: Hoare triple {41855#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41855#false} is VALID [2018-11-23 12:17:46,106 INFO L273 TraceCheckUtils]: 291: Hoare triple {41855#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41855#false} is VALID [2018-11-23 12:17:46,106 INFO L273 TraceCheckUtils]: 292: Hoare triple {41855#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41855#false} is VALID [2018-11-23 12:17:46,106 INFO L273 TraceCheckUtils]: 293: Hoare triple {41855#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41855#false} is VALID [2018-11-23 12:17:46,106 INFO L273 TraceCheckUtils]: 294: Hoare triple {41855#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41855#false} is VALID [2018-11-23 12:17:46,106 INFO L273 TraceCheckUtils]: 295: Hoare triple {41855#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41855#false} is VALID [2018-11-23 12:17:46,106 INFO L273 TraceCheckUtils]: 296: Hoare triple {41855#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41855#false} is VALID [2018-11-23 12:17:46,106 INFO L273 TraceCheckUtils]: 297: Hoare triple {41855#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41855#false} is VALID [2018-11-23 12:17:46,107 INFO L273 TraceCheckUtils]: 298: Hoare triple {41855#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41855#false} is VALID [2018-11-23 12:17:46,107 INFO L273 TraceCheckUtils]: 299: Hoare triple {41855#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41855#false} is VALID [2018-11-23 12:17:46,107 INFO L273 TraceCheckUtils]: 300: Hoare triple {41855#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41855#false} is VALID [2018-11-23 12:17:46,107 INFO L273 TraceCheckUtils]: 301: Hoare triple {41855#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41855#false} is VALID [2018-11-23 12:17:46,107 INFO L273 TraceCheckUtils]: 302: Hoare triple {41855#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41855#false} is VALID [2018-11-23 12:17:46,107 INFO L273 TraceCheckUtils]: 303: Hoare triple {41855#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41855#false} is VALID [2018-11-23 12:17:46,107 INFO L273 TraceCheckUtils]: 304: Hoare triple {41855#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41855#false} is VALID [2018-11-23 12:17:46,107 INFO L273 TraceCheckUtils]: 305: Hoare triple {41855#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41855#false} is VALID [2018-11-23 12:17:46,107 INFO L273 TraceCheckUtils]: 306: Hoare triple {41855#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41855#false} is VALID [2018-11-23 12:17:46,107 INFO L273 TraceCheckUtils]: 307: Hoare triple {41855#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41855#false} is VALID [2018-11-23 12:17:46,108 INFO L273 TraceCheckUtils]: 308: Hoare triple {41855#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41855#false} is VALID [2018-11-23 12:17:46,108 INFO L273 TraceCheckUtils]: 309: Hoare triple {41855#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41855#false} is VALID [2018-11-23 12:17:46,108 INFO L273 TraceCheckUtils]: 310: Hoare triple {41855#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41855#false} is VALID [2018-11-23 12:17:46,108 INFO L273 TraceCheckUtils]: 311: Hoare triple {41855#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41855#false} is VALID [2018-11-23 12:17:46,108 INFO L273 TraceCheckUtils]: 312: Hoare triple {41855#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41855#false} is VALID [2018-11-23 12:17:46,108 INFO L273 TraceCheckUtils]: 313: Hoare triple {41855#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41855#false} is VALID [2018-11-23 12:17:46,108 INFO L273 TraceCheckUtils]: 314: Hoare triple {41855#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41855#false} is VALID [2018-11-23 12:17:46,108 INFO L273 TraceCheckUtils]: 315: Hoare triple {41855#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41855#false} is VALID [2018-11-23 12:17:46,108 INFO L273 TraceCheckUtils]: 316: Hoare triple {41855#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41855#false} is VALID [2018-11-23 12:17:46,108 INFO L273 TraceCheckUtils]: 317: Hoare triple {41855#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41855#false} is VALID [2018-11-23 12:17:46,109 INFO L273 TraceCheckUtils]: 318: Hoare triple {41855#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41855#false} is VALID [2018-11-23 12:17:46,109 INFO L273 TraceCheckUtils]: 319: Hoare triple {41855#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41855#false} is VALID [2018-11-23 12:17:46,109 INFO L273 TraceCheckUtils]: 320: Hoare triple {41855#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41855#false} is VALID [2018-11-23 12:17:46,109 INFO L273 TraceCheckUtils]: 321: Hoare triple {41855#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41855#false} is VALID [2018-11-23 12:17:46,109 INFO L273 TraceCheckUtils]: 322: Hoare triple {41855#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41855#false} is VALID [2018-11-23 12:17:46,109 INFO L273 TraceCheckUtils]: 323: Hoare triple {41855#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41855#false} is VALID [2018-11-23 12:17:46,109 INFO L273 TraceCheckUtils]: 324: Hoare triple {41855#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41855#false} is VALID [2018-11-23 12:17:46,109 INFO L273 TraceCheckUtils]: 325: Hoare triple {41855#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41855#false} is VALID [2018-11-23 12:17:46,109 INFO L273 TraceCheckUtils]: 326: Hoare triple {41855#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41855#false} is VALID [2018-11-23 12:17:46,109 INFO L273 TraceCheckUtils]: 327: Hoare triple {41855#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41855#false} is VALID [2018-11-23 12:17:46,110 INFO L273 TraceCheckUtils]: 328: Hoare triple {41855#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41855#false} is VALID [2018-11-23 12:17:46,110 INFO L273 TraceCheckUtils]: 329: Hoare triple {41855#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {41855#false} is VALID [2018-11-23 12:17:46,110 INFO L273 TraceCheckUtils]: 330: Hoare triple {41855#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {41855#false} is VALID [2018-11-23 12:17:46,110 INFO L273 TraceCheckUtils]: 331: Hoare triple {41855#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {41855#false} is VALID [2018-11-23 12:17:46,110 INFO L273 TraceCheckUtils]: 332: Hoare triple {41855#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {41855#false} is VALID [2018-11-23 12:17:46,110 INFO L273 TraceCheckUtils]: 333: Hoare triple {41855#false} assume !(~i~0 < 20); {41855#false} is VALID [2018-11-23 12:17:46,110 INFO L273 TraceCheckUtils]: 334: Hoare triple {41855#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {41855#false} is VALID [2018-11-23 12:17:46,110 INFO L273 TraceCheckUtils]: 335: Hoare triple {41855#false} assume true; {41855#false} is VALID [2018-11-23 12:17:46,110 INFO L268 TraceCheckUtils]: 336: Hoare quadruple {41855#false} {41855#false} #81#return; {41855#false} is VALID [2018-11-23 12:17:46,111 INFO L273 TraceCheckUtils]: 337: Hoare triple {41855#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {41855#false} is VALID [2018-11-23 12:17:46,111 INFO L273 TraceCheckUtils]: 338: Hoare triple {41855#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {41855#false} is VALID [2018-11-23 12:17:46,111 INFO L273 TraceCheckUtils]: 339: Hoare triple {41855#false} assume !false; {41855#false} is VALID [2018-11-23 12:17:46,149 INFO L134 CoverageAnalysis]: Checked inductivity of 7871 backedges. 3290 proven. 196 refuted. 0 times theorem prover too weak. 4385 trivial. 0 not checked. [2018-11-23 12:17:46,168 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:17:46,168 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 17] total 18 [2018-11-23 12:17:46,169 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 340 [2018-11-23 12:17:46,169 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:17:46,169 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states. [2018-11-23 12:17:46,243 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:17:46,244 INFO L459 AbstractCegarLoop]: Interpolant automaton has 18 states [2018-11-23 12:17:46,244 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2018-11-23 12:17:46,244 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=153, Invalid=153, Unknown=0, NotChecked=0, Total=306 [2018-11-23 12:17:46,244 INFO L87 Difference]: Start difference. First operand 171 states and 195 transitions. Second operand 18 states. [2018-11-23 12:17:46,727 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:46,727 INFO L93 Difference]: Finished difference Result 265 states and 310 transitions. [2018-11-23 12:17:46,727 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2018-11-23 12:17:46,727 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 340 [2018-11-23 12:17:46,728 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:17:46,728 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-23 12:17:46,728 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 79 transitions. [2018-11-23 12:17:46,728 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-23 12:17:46,729 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 79 transitions. [2018-11-23 12:17:46,729 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 79 transitions. [2018-11-23 12:17:46,800 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:17:46,804 INFO L225 Difference]: With dead ends: 265 [2018-11-23 12:17:46,804 INFO L226 Difference]: Without dead ends: 174 [2018-11-23 12:17:46,805 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 356 GetRequests, 340 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 26 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=153, Invalid=153, Unknown=0, NotChecked=0, Total=306 [2018-11-23 12:17:46,805 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 174 states. [2018-11-23 12:17:46,853 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 174 to 173. [2018-11-23 12:17:46,853 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:17:46,853 INFO L82 GeneralOperation]: Start isEquivalent. First operand 174 states. Second operand 173 states. [2018-11-23 12:17:46,853 INFO L74 IsIncluded]: Start isIncluded. First operand 174 states. Second operand 173 states. [2018-11-23 12:17:46,853 INFO L87 Difference]: Start difference. First operand 174 states. Second operand 173 states. [2018-11-23 12:17:46,856 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:46,856 INFO L93 Difference]: Finished difference Result 174 states and 198 transitions. [2018-11-23 12:17:46,856 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 198 transitions. [2018-11-23 12:17:46,856 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:46,857 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:46,857 INFO L74 IsIncluded]: Start isIncluded. First operand 173 states. Second operand 174 states. [2018-11-23 12:17:46,857 INFO L87 Difference]: Start difference. First operand 173 states. Second operand 174 states. [2018-11-23 12:17:46,859 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:46,859 INFO L93 Difference]: Finished difference Result 174 states and 198 transitions. [2018-11-23 12:17:46,859 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 198 transitions. [2018-11-23 12:17:46,859 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:46,860 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:46,860 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:17:46,860 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:17:46,860 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 173 states. [2018-11-23 12:17:46,862 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 173 states to 173 states and 197 transitions. [2018-11-23 12:17:46,862 INFO L78 Accepts]: Start accepts. Automaton has 173 states and 197 transitions. Word has length 340 [2018-11-23 12:17:46,862 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:17:46,862 INFO L480 AbstractCegarLoop]: Abstraction has 173 states and 197 transitions. [2018-11-23 12:17:46,862 INFO L481 AbstractCegarLoop]: Interpolant automaton has 18 states. [2018-11-23 12:17:46,863 INFO L276 IsEmpty]: Start isEmpty. Operand 173 states and 197 transitions. [2018-11-23 12:17:46,864 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 343 [2018-11-23 12:17:46,864 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:17:46,864 INFO L402 BasicCegarLoop]: trace histogram [60, 60, 60, 60, 20, 20, 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] [2018-11-23 12:17:46,864 INFO L423 AbstractCegarLoop]: === Iteration 42 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:17:46,865 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:17:46,865 INFO L82 PathProgramCache]: Analyzing trace with hash -965916591, now seen corresponding path program 39 times [2018-11-23 12:17:46,865 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:17:46,865 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:17:46,865 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:46,865 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:17:46,866 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:46,909 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:47,229 INFO L256 TraceCheckUtils]: 0: Hoare triple {43832#true} call ULTIMATE.init(); {43832#true} is VALID [2018-11-23 12:17:47,229 INFO L273 TraceCheckUtils]: 1: Hoare triple {43832#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {43832#true} is VALID [2018-11-23 12:17:47,229 INFO L273 TraceCheckUtils]: 2: Hoare triple {43832#true} assume true; {43832#true} is VALID [2018-11-23 12:17:47,229 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {43832#true} {43832#true} #73#return; {43832#true} is VALID [2018-11-23 12:17:47,230 INFO L256 TraceCheckUtils]: 4: Hoare triple {43832#true} call #t~ret14 := main(); {43832#true} is VALID [2018-11-23 12:17:47,230 INFO L273 TraceCheckUtils]: 5: Hoare triple {43832#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {43832#true} is VALID [2018-11-23 12:17:47,230 INFO L273 TraceCheckUtils]: 6: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:47,230 INFO L273 TraceCheckUtils]: 7: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:47,230 INFO L273 TraceCheckUtils]: 8: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:47,230 INFO L273 TraceCheckUtils]: 9: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:47,230 INFO L273 TraceCheckUtils]: 10: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:47,231 INFO L273 TraceCheckUtils]: 11: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:47,231 INFO L273 TraceCheckUtils]: 12: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:47,231 INFO L273 TraceCheckUtils]: 13: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:47,231 INFO L273 TraceCheckUtils]: 14: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:47,231 INFO L273 TraceCheckUtils]: 15: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:47,231 INFO L273 TraceCheckUtils]: 16: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:47,232 INFO L273 TraceCheckUtils]: 17: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:47,232 INFO L273 TraceCheckUtils]: 18: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:47,232 INFO L273 TraceCheckUtils]: 19: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:47,232 INFO L273 TraceCheckUtils]: 20: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:47,232 INFO L273 TraceCheckUtils]: 21: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:47,232 INFO L273 TraceCheckUtils]: 22: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:47,233 INFO L273 TraceCheckUtils]: 23: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:47,233 INFO L273 TraceCheckUtils]: 24: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:47,233 INFO L273 TraceCheckUtils]: 25: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:47,233 INFO L273 TraceCheckUtils]: 26: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:47,233 INFO L273 TraceCheckUtils]: 27: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:47,233 INFO L273 TraceCheckUtils]: 28: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:47,233 INFO L273 TraceCheckUtils]: 29: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:47,233 INFO L273 TraceCheckUtils]: 30: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:47,234 INFO L273 TraceCheckUtils]: 31: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:47,234 INFO L273 TraceCheckUtils]: 32: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:47,234 INFO L273 TraceCheckUtils]: 33: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:47,234 INFO L273 TraceCheckUtils]: 34: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:47,234 INFO L273 TraceCheckUtils]: 35: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:47,234 INFO L273 TraceCheckUtils]: 36: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:47,234 INFO L273 TraceCheckUtils]: 37: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:47,234 INFO L273 TraceCheckUtils]: 38: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:47,234 INFO L273 TraceCheckUtils]: 39: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:47,234 INFO L273 TraceCheckUtils]: 40: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:47,235 INFO L273 TraceCheckUtils]: 41: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:47,235 INFO L273 TraceCheckUtils]: 42: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:47,235 INFO L273 TraceCheckUtils]: 43: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:47,235 INFO L273 TraceCheckUtils]: 44: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:47,235 INFO L273 TraceCheckUtils]: 45: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:47,235 INFO L273 TraceCheckUtils]: 46: Hoare triple {43832#true} assume !(~i~1 < 20); {43832#true} is VALID [2018-11-23 12:17:47,235 INFO L256 TraceCheckUtils]: 47: Hoare triple {43832#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {43832#true} is VALID [2018-11-23 12:17:47,235 INFO L273 TraceCheckUtils]: 48: Hoare triple {43832#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {43832#true} is VALID [2018-11-23 12:17:47,235 INFO L273 TraceCheckUtils]: 49: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,236 INFO L273 TraceCheckUtils]: 50: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,236 INFO L273 TraceCheckUtils]: 51: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,236 INFO L273 TraceCheckUtils]: 52: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,236 INFO L273 TraceCheckUtils]: 53: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,236 INFO L273 TraceCheckUtils]: 54: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,236 INFO L273 TraceCheckUtils]: 55: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,236 INFO L273 TraceCheckUtils]: 56: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,236 INFO L273 TraceCheckUtils]: 57: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,236 INFO L273 TraceCheckUtils]: 58: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,236 INFO L273 TraceCheckUtils]: 59: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,237 INFO L273 TraceCheckUtils]: 60: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,237 INFO L273 TraceCheckUtils]: 61: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,237 INFO L273 TraceCheckUtils]: 62: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,237 INFO L273 TraceCheckUtils]: 63: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,237 INFO L273 TraceCheckUtils]: 64: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,237 INFO L273 TraceCheckUtils]: 65: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,237 INFO L273 TraceCheckUtils]: 66: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,237 INFO L273 TraceCheckUtils]: 67: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,237 INFO L273 TraceCheckUtils]: 68: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,238 INFO L273 TraceCheckUtils]: 69: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,238 INFO L273 TraceCheckUtils]: 70: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,238 INFO L273 TraceCheckUtils]: 71: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,238 INFO L273 TraceCheckUtils]: 72: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,238 INFO L273 TraceCheckUtils]: 73: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,238 INFO L273 TraceCheckUtils]: 74: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,238 INFO L273 TraceCheckUtils]: 75: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,238 INFO L273 TraceCheckUtils]: 76: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,238 INFO L273 TraceCheckUtils]: 77: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,238 INFO L273 TraceCheckUtils]: 78: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,239 INFO L273 TraceCheckUtils]: 79: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,239 INFO L273 TraceCheckUtils]: 80: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,239 INFO L273 TraceCheckUtils]: 81: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,239 INFO L273 TraceCheckUtils]: 82: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,239 INFO L273 TraceCheckUtils]: 83: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,239 INFO L273 TraceCheckUtils]: 84: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,239 INFO L273 TraceCheckUtils]: 85: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,239 INFO L273 TraceCheckUtils]: 86: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,239 INFO L273 TraceCheckUtils]: 87: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,239 INFO L273 TraceCheckUtils]: 88: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,240 INFO L273 TraceCheckUtils]: 89: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,240 INFO L273 TraceCheckUtils]: 90: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,240 INFO L273 TraceCheckUtils]: 91: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,240 INFO L273 TraceCheckUtils]: 92: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,240 INFO L273 TraceCheckUtils]: 93: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,240 INFO L273 TraceCheckUtils]: 94: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,240 INFO L273 TraceCheckUtils]: 95: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,240 INFO L273 TraceCheckUtils]: 96: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,240 INFO L273 TraceCheckUtils]: 97: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,240 INFO L273 TraceCheckUtils]: 98: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,241 INFO L273 TraceCheckUtils]: 99: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,241 INFO L273 TraceCheckUtils]: 100: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,241 INFO L273 TraceCheckUtils]: 101: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,241 INFO L273 TraceCheckUtils]: 102: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,241 INFO L273 TraceCheckUtils]: 103: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,241 INFO L273 TraceCheckUtils]: 104: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,241 INFO L273 TraceCheckUtils]: 105: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,241 INFO L273 TraceCheckUtils]: 106: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,241 INFO L273 TraceCheckUtils]: 107: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,241 INFO L273 TraceCheckUtils]: 108: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,242 INFO L273 TraceCheckUtils]: 109: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,242 INFO L273 TraceCheckUtils]: 110: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,242 INFO L273 TraceCheckUtils]: 111: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,242 INFO L273 TraceCheckUtils]: 112: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,242 INFO L273 TraceCheckUtils]: 113: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,242 INFO L273 TraceCheckUtils]: 114: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,242 INFO L273 TraceCheckUtils]: 115: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,242 INFO L273 TraceCheckUtils]: 116: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,242 INFO L273 TraceCheckUtils]: 117: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,242 INFO L273 TraceCheckUtils]: 118: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,243 INFO L273 TraceCheckUtils]: 119: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,243 INFO L273 TraceCheckUtils]: 120: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,243 INFO L273 TraceCheckUtils]: 121: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,243 INFO L273 TraceCheckUtils]: 122: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,243 INFO L273 TraceCheckUtils]: 123: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,243 INFO L273 TraceCheckUtils]: 124: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,243 INFO L273 TraceCheckUtils]: 125: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,243 INFO L273 TraceCheckUtils]: 126: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,243 INFO L273 TraceCheckUtils]: 127: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,243 INFO L273 TraceCheckUtils]: 128: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,244 INFO L273 TraceCheckUtils]: 129: Hoare triple {43832#true} assume !(~i~0 < 20); {43832#true} is VALID [2018-11-23 12:17:47,244 INFO L273 TraceCheckUtils]: 130: Hoare triple {43832#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {43832#true} is VALID [2018-11-23 12:17:47,244 INFO L273 TraceCheckUtils]: 131: Hoare triple {43832#true} assume true; {43832#true} is VALID [2018-11-23 12:17:47,244 INFO L268 TraceCheckUtils]: 132: Hoare quadruple {43832#true} {43832#true} #77#return; {43832#true} is VALID [2018-11-23 12:17:47,244 INFO L273 TraceCheckUtils]: 133: Hoare triple {43832#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {43832#true} is VALID [2018-11-23 12:17:47,244 INFO L256 TraceCheckUtils]: 134: Hoare triple {43832#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {43832#true} is VALID [2018-11-23 12:17:47,244 INFO L273 TraceCheckUtils]: 135: Hoare triple {43832#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {43832#true} is VALID [2018-11-23 12:17:47,244 INFO L273 TraceCheckUtils]: 136: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,244 INFO L273 TraceCheckUtils]: 137: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,244 INFO L273 TraceCheckUtils]: 138: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,245 INFO L273 TraceCheckUtils]: 139: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,245 INFO L273 TraceCheckUtils]: 140: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,245 INFO L273 TraceCheckUtils]: 141: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,245 INFO L273 TraceCheckUtils]: 142: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,245 INFO L273 TraceCheckUtils]: 143: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,245 INFO L273 TraceCheckUtils]: 144: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,245 INFO L273 TraceCheckUtils]: 145: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,245 INFO L273 TraceCheckUtils]: 146: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,245 INFO L273 TraceCheckUtils]: 147: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,245 INFO L273 TraceCheckUtils]: 148: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,246 INFO L273 TraceCheckUtils]: 149: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,246 INFO L273 TraceCheckUtils]: 150: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,246 INFO L273 TraceCheckUtils]: 151: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,246 INFO L273 TraceCheckUtils]: 152: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,246 INFO L273 TraceCheckUtils]: 153: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,246 INFO L273 TraceCheckUtils]: 154: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,246 INFO L273 TraceCheckUtils]: 155: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,246 INFO L273 TraceCheckUtils]: 156: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,246 INFO L273 TraceCheckUtils]: 157: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,246 INFO L273 TraceCheckUtils]: 158: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,247 INFO L273 TraceCheckUtils]: 159: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,247 INFO L273 TraceCheckUtils]: 160: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,247 INFO L273 TraceCheckUtils]: 161: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,247 INFO L273 TraceCheckUtils]: 162: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,247 INFO L273 TraceCheckUtils]: 163: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,247 INFO L273 TraceCheckUtils]: 164: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,247 INFO L273 TraceCheckUtils]: 165: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,247 INFO L273 TraceCheckUtils]: 166: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,247 INFO L273 TraceCheckUtils]: 167: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,247 INFO L273 TraceCheckUtils]: 168: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,248 INFO L273 TraceCheckUtils]: 169: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,248 INFO L273 TraceCheckUtils]: 170: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,248 INFO L273 TraceCheckUtils]: 171: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,248 INFO L273 TraceCheckUtils]: 172: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,248 INFO L273 TraceCheckUtils]: 173: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,248 INFO L273 TraceCheckUtils]: 174: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,248 INFO L273 TraceCheckUtils]: 175: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,248 INFO L273 TraceCheckUtils]: 176: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,248 INFO L273 TraceCheckUtils]: 177: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,248 INFO L273 TraceCheckUtils]: 178: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,249 INFO L273 TraceCheckUtils]: 179: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,249 INFO L273 TraceCheckUtils]: 180: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,249 INFO L273 TraceCheckUtils]: 181: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,249 INFO L273 TraceCheckUtils]: 182: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,249 INFO L273 TraceCheckUtils]: 183: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,249 INFO L273 TraceCheckUtils]: 184: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,249 INFO L273 TraceCheckUtils]: 185: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,249 INFO L273 TraceCheckUtils]: 186: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,249 INFO L273 TraceCheckUtils]: 187: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,249 INFO L273 TraceCheckUtils]: 188: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,250 INFO L273 TraceCheckUtils]: 189: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,250 INFO L273 TraceCheckUtils]: 190: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,250 INFO L273 TraceCheckUtils]: 191: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,250 INFO L273 TraceCheckUtils]: 192: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,250 INFO L273 TraceCheckUtils]: 193: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,250 INFO L273 TraceCheckUtils]: 194: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,250 INFO L273 TraceCheckUtils]: 195: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,250 INFO L273 TraceCheckUtils]: 196: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,250 INFO L273 TraceCheckUtils]: 197: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,250 INFO L273 TraceCheckUtils]: 198: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,251 INFO L273 TraceCheckUtils]: 199: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,251 INFO L273 TraceCheckUtils]: 200: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,251 INFO L273 TraceCheckUtils]: 201: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,251 INFO L273 TraceCheckUtils]: 202: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,251 INFO L273 TraceCheckUtils]: 203: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,251 INFO L273 TraceCheckUtils]: 204: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,251 INFO L273 TraceCheckUtils]: 205: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,251 INFO L273 TraceCheckUtils]: 206: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,251 INFO L273 TraceCheckUtils]: 207: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,251 INFO L273 TraceCheckUtils]: 208: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,252 INFO L273 TraceCheckUtils]: 209: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,252 INFO L273 TraceCheckUtils]: 210: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,252 INFO L273 TraceCheckUtils]: 211: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,252 INFO L273 TraceCheckUtils]: 212: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,252 INFO L273 TraceCheckUtils]: 213: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,252 INFO L273 TraceCheckUtils]: 214: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,252 INFO L273 TraceCheckUtils]: 215: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,252 INFO L273 TraceCheckUtils]: 216: Hoare triple {43832#true} assume !(~i~0 < 20); {43832#true} is VALID [2018-11-23 12:17:47,252 INFO L273 TraceCheckUtils]: 217: Hoare triple {43832#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {43832#true} is VALID [2018-11-23 12:17:47,252 INFO L273 TraceCheckUtils]: 218: Hoare triple {43832#true} assume true; {43832#true} is VALID [2018-11-23 12:17:47,253 INFO L268 TraceCheckUtils]: 219: Hoare quadruple {43832#true} {43832#true} #79#return; {43832#true} is VALID [2018-11-23 12:17:47,253 INFO L273 TraceCheckUtils]: 220: Hoare triple {43832#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {43834#(= main_~i~2 0)} is VALID [2018-11-23 12:17:47,253 INFO L273 TraceCheckUtils]: 221: Hoare triple {43834#(= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43834#(= main_~i~2 0)} is VALID [2018-11-23 12:17:47,254 INFO L273 TraceCheckUtils]: 222: Hoare triple {43834#(= main_~i~2 0)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43835#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:47,254 INFO L273 TraceCheckUtils]: 223: Hoare triple {43835#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43835#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:47,254 INFO L273 TraceCheckUtils]: 224: Hoare triple {43835#(<= main_~i~2 1)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43836#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:47,255 INFO L273 TraceCheckUtils]: 225: Hoare triple {43836#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43836#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:47,255 INFO L273 TraceCheckUtils]: 226: Hoare triple {43836#(<= main_~i~2 2)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43837#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:47,255 INFO L273 TraceCheckUtils]: 227: Hoare triple {43837#(<= main_~i~2 3)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43837#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:47,256 INFO L273 TraceCheckUtils]: 228: Hoare triple {43837#(<= main_~i~2 3)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43838#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:47,256 INFO L273 TraceCheckUtils]: 229: Hoare triple {43838#(<= main_~i~2 4)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43838#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:47,257 INFO L273 TraceCheckUtils]: 230: Hoare triple {43838#(<= main_~i~2 4)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43839#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:47,257 INFO L273 TraceCheckUtils]: 231: Hoare triple {43839#(<= main_~i~2 5)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43839#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:47,258 INFO L273 TraceCheckUtils]: 232: Hoare triple {43839#(<= main_~i~2 5)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43840#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:47,259 INFO L273 TraceCheckUtils]: 233: Hoare triple {43840#(<= main_~i~2 6)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43840#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:47,259 INFO L273 TraceCheckUtils]: 234: Hoare triple {43840#(<= main_~i~2 6)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43841#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:47,260 INFO L273 TraceCheckUtils]: 235: Hoare triple {43841#(<= main_~i~2 7)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43841#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:47,261 INFO L273 TraceCheckUtils]: 236: Hoare triple {43841#(<= main_~i~2 7)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43842#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:47,261 INFO L273 TraceCheckUtils]: 237: Hoare triple {43842#(<= main_~i~2 8)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43842#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:47,262 INFO L273 TraceCheckUtils]: 238: Hoare triple {43842#(<= main_~i~2 8)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43843#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:47,262 INFO L273 TraceCheckUtils]: 239: Hoare triple {43843#(<= main_~i~2 9)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43843#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:47,263 INFO L273 TraceCheckUtils]: 240: Hoare triple {43843#(<= main_~i~2 9)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43844#(<= main_~i~2 10)} is VALID [2018-11-23 12:17:47,264 INFO L273 TraceCheckUtils]: 241: Hoare triple {43844#(<= main_~i~2 10)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43844#(<= main_~i~2 10)} is VALID [2018-11-23 12:17:47,264 INFO L273 TraceCheckUtils]: 242: Hoare triple {43844#(<= main_~i~2 10)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43845#(<= main_~i~2 11)} is VALID [2018-11-23 12:17:47,265 INFO L273 TraceCheckUtils]: 243: Hoare triple {43845#(<= main_~i~2 11)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43845#(<= main_~i~2 11)} is VALID [2018-11-23 12:17:47,265 INFO L273 TraceCheckUtils]: 244: Hoare triple {43845#(<= main_~i~2 11)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43846#(<= main_~i~2 12)} is VALID [2018-11-23 12:17:47,266 INFO L273 TraceCheckUtils]: 245: Hoare triple {43846#(<= main_~i~2 12)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43846#(<= main_~i~2 12)} is VALID [2018-11-23 12:17:47,267 INFO L273 TraceCheckUtils]: 246: Hoare triple {43846#(<= main_~i~2 12)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43847#(<= main_~i~2 13)} is VALID [2018-11-23 12:17:47,267 INFO L273 TraceCheckUtils]: 247: Hoare triple {43847#(<= main_~i~2 13)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43847#(<= main_~i~2 13)} is VALID [2018-11-23 12:17:47,268 INFO L273 TraceCheckUtils]: 248: Hoare triple {43847#(<= main_~i~2 13)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43848#(<= main_~i~2 14)} is VALID [2018-11-23 12:17:47,268 INFO L273 TraceCheckUtils]: 249: Hoare triple {43848#(<= main_~i~2 14)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43848#(<= main_~i~2 14)} is VALID [2018-11-23 12:17:47,269 INFO L273 TraceCheckUtils]: 250: Hoare triple {43848#(<= main_~i~2 14)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43849#(<= main_~i~2 15)} is VALID [2018-11-23 12:17:47,270 INFO L273 TraceCheckUtils]: 251: Hoare triple {43849#(<= main_~i~2 15)} assume !(~i~2 < 19); {43833#false} is VALID [2018-11-23 12:17:47,270 INFO L273 TraceCheckUtils]: 252: Hoare triple {43833#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {43833#false} is VALID [2018-11-23 12:17:47,270 INFO L256 TraceCheckUtils]: 253: Hoare triple {43833#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {43832#true} is VALID [2018-11-23 12:17:47,270 INFO L273 TraceCheckUtils]: 254: Hoare triple {43832#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {43832#true} is VALID [2018-11-23 12:17:47,271 INFO L273 TraceCheckUtils]: 255: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,271 INFO L273 TraceCheckUtils]: 256: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,271 INFO L273 TraceCheckUtils]: 257: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,271 INFO L273 TraceCheckUtils]: 258: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,271 INFO L273 TraceCheckUtils]: 259: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,271 INFO L273 TraceCheckUtils]: 260: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,272 INFO L273 TraceCheckUtils]: 261: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,272 INFO L273 TraceCheckUtils]: 262: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,272 INFO L273 TraceCheckUtils]: 263: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,272 INFO L273 TraceCheckUtils]: 264: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,272 INFO L273 TraceCheckUtils]: 265: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,272 INFO L273 TraceCheckUtils]: 266: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,273 INFO L273 TraceCheckUtils]: 267: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,273 INFO L273 TraceCheckUtils]: 268: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,273 INFO L273 TraceCheckUtils]: 269: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,273 INFO L273 TraceCheckUtils]: 270: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,273 INFO L273 TraceCheckUtils]: 271: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,274 INFO L273 TraceCheckUtils]: 272: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,274 INFO L273 TraceCheckUtils]: 273: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,274 INFO L273 TraceCheckUtils]: 274: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,274 INFO L273 TraceCheckUtils]: 275: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,274 INFO L273 TraceCheckUtils]: 276: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,274 INFO L273 TraceCheckUtils]: 277: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,274 INFO L273 TraceCheckUtils]: 278: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,274 INFO L273 TraceCheckUtils]: 279: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,275 INFO L273 TraceCheckUtils]: 280: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,275 INFO L273 TraceCheckUtils]: 281: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,275 INFO L273 TraceCheckUtils]: 282: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,275 INFO L273 TraceCheckUtils]: 283: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,275 INFO L273 TraceCheckUtils]: 284: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,275 INFO L273 TraceCheckUtils]: 285: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,275 INFO L273 TraceCheckUtils]: 286: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,275 INFO L273 TraceCheckUtils]: 287: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,275 INFO L273 TraceCheckUtils]: 288: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,275 INFO L273 TraceCheckUtils]: 289: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,276 INFO L273 TraceCheckUtils]: 290: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,276 INFO L273 TraceCheckUtils]: 291: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,276 INFO L273 TraceCheckUtils]: 292: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,276 INFO L273 TraceCheckUtils]: 293: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,276 INFO L273 TraceCheckUtils]: 294: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,276 INFO L273 TraceCheckUtils]: 295: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,276 INFO L273 TraceCheckUtils]: 296: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,276 INFO L273 TraceCheckUtils]: 297: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,276 INFO L273 TraceCheckUtils]: 298: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,276 INFO L273 TraceCheckUtils]: 299: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,277 INFO L273 TraceCheckUtils]: 300: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,277 INFO L273 TraceCheckUtils]: 301: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,277 INFO L273 TraceCheckUtils]: 302: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,277 INFO L273 TraceCheckUtils]: 303: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,277 INFO L273 TraceCheckUtils]: 304: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,277 INFO L273 TraceCheckUtils]: 305: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,277 INFO L273 TraceCheckUtils]: 306: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,277 INFO L273 TraceCheckUtils]: 307: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,277 INFO L273 TraceCheckUtils]: 308: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,277 INFO L273 TraceCheckUtils]: 309: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,278 INFO L273 TraceCheckUtils]: 310: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,278 INFO L273 TraceCheckUtils]: 311: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,278 INFO L273 TraceCheckUtils]: 312: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,278 INFO L273 TraceCheckUtils]: 313: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,278 INFO L273 TraceCheckUtils]: 314: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,278 INFO L273 TraceCheckUtils]: 315: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,278 INFO L273 TraceCheckUtils]: 316: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,278 INFO L273 TraceCheckUtils]: 317: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,278 INFO L273 TraceCheckUtils]: 318: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,278 INFO L273 TraceCheckUtils]: 319: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,279 INFO L273 TraceCheckUtils]: 320: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,279 INFO L273 TraceCheckUtils]: 321: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,279 INFO L273 TraceCheckUtils]: 322: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,279 INFO L273 TraceCheckUtils]: 323: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,279 INFO L273 TraceCheckUtils]: 324: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,279 INFO L273 TraceCheckUtils]: 325: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,279 INFO L273 TraceCheckUtils]: 326: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,279 INFO L273 TraceCheckUtils]: 327: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,279 INFO L273 TraceCheckUtils]: 328: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,280 INFO L273 TraceCheckUtils]: 329: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,280 INFO L273 TraceCheckUtils]: 330: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,280 INFO L273 TraceCheckUtils]: 331: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:47,280 INFO L273 TraceCheckUtils]: 332: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:47,280 INFO L273 TraceCheckUtils]: 333: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:47,280 INFO L273 TraceCheckUtils]: 334: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:47,280 INFO L273 TraceCheckUtils]: 335: Hoare triple {43832#true} assume !(~i~0 < 20); {43832#true} is VALID [2018-11-23 12:17:47,280 INFO L273 TraceCheckUtils]: 336: Hoare triple {43832#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {43832#true} is VALID [2018-11-23 12:17:47,280 INFO L273 TraceCheckUtils]: 337: Hoare triple {43832#true} assume true; {43832#true} is VALID [2018-11-23 12:17:47,280 INFO L268 TraceCheckUtils]: 338: Hoare quadruple {43832#true} {43833#false} #81#return; {43833#false} is VALID [2018-11-23 12:17:47,281 INFO L273 TraceCheckUtils]: 339: Hoare triple {43833#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {43833#false} is VALID [2018-11-23 12:17:47,281 INFO L273 TraceCheckUtils]: 340: Hoare triple {43833#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {43833#false} is VALID [2018-11-23 12:17:47,281 INFO L273 TraceCheckUtils]: 341: Hoare triple {43833#false} assume !false; {43833#false} is VALID [2018-11-23 12:17:47,319 INFO L134 CoverageAnalysis]: Checked inductivity of 7900 backedges. 0 proven. 225 refuted. 0 times theorem prover too weak. 7675 trivial. 0 not checked. [2018-11-23 12:17:47,319 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:17:47,320 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 -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 41 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:17:47,327 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:17:52,761 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 17 check-sat command(s) [2018-11-23 12:17:52,761 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:17:52,831 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:52,832 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:17:53,101 INFO L256 TraceCheckUtils]: 0: Hoare triple {43832#true} call ULTIMATE.init(); {43832#true} is VALID [2018-11-23 12:17:53,101 INFO L273 TraceCheckUtils]: 1: Hoare triple {43832#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {43832#true} is VALID [2018-11-23 12:17:53,101 INFO L273 TraceCheckUtils]: 2: Hoare triple {43832#true} assume true; {43832#true} is VALID [2018-11-23 12:17:53,101 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {43832#true} {43832#true} #73#return; {43832#true} is VALID [2018-11-23 12:17:53,101 INFO L256 TraceCheckUtils]: 4: Hoare triple {43832#true} call #t~ret14 := main(); {43832#true} is VALID [2018-11-23 12:17:53,102 INFO L273 TraceCheckUtils]: 5: Hoare triple {43832#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {43832#true} is VALID [2018-11-23 12:17:53,102 INFO L273 TraceCheckUtils]: 6: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:53,102 INFO L273 TraceCheckUtils]: 7: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:53,102 INFO L273 TraceCheckUtils]: 8: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:53,102 INFO L273 TraceCheckUtils]: 9: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:53,103 INFO L273 TraceCheckUtils]: 10: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:53,103 INFO L273 TraceCheckUtils]: 11: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:53,103 INFO L273 TraceCheckUtils]: 12: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:53,103 INFO L273 TraceCheckUtils]: 13: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:53,103 INFO L273 TraceCheckUtils]: 14: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:53,103 INFO L273 TraceCheckUtils]: 15: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:53,103 INFO L273 TraceCheckUtils]: 16: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:53,103 INFO L273 TraceCheckUtils]: 17: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:53,104 INFO L273 TraceCheckUtils]: 18: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:53,104 INFO L273 TraceCheckUtils]: 19: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:53,104 INFO L273 TraceCheckUtils]: 20: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:53,104 INFO L273 TraceCheckUtils]: 21: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:53,104 INFO L273 TraceCheckUtils]: 22: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:53,104 INFO L273 TraceCheckUtils]: 23: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:53,104 INFO L273 TraceCheckUtils]: 24: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:53,104 INFO L273 TraceCheckUtils]: 25: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:53,104 INFO L273 TraceCheckUtils]: 26: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:53,105 INFO L273 TraceCheckUtils]: 27: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:53,105 INFO L273 TraceCheckUtils]: 28: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:53,105 INFO L273 TraceCheckUtils]: 29: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:53,105 INFO L273 TraceCheckUtils]: 30: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:53,105 INFO L273 TraceCheckUtils]: 31: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:53,105 INFO L273 TraceCheckUtils]: 32: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:53,105 INFO L273 TraceCheckUtils]: 33: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:53,105 INFO L273 TraceCheckUtils]: 34: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:53,105 INFO L273 TraceCheckUtils]: 35: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:53,105 INFO L273 TraceCheckUtils]: 36: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:53,106 INFO L273 TraceCheckUtils]: 37: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:53,106 INFO L273 TraceCheckUtils]: 38: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:53,106 INFO L273 TraceCheckUtils]: 39: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:53,106 INFO L273 TraceCheckUtils]: 40: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:53,106 INFO L273 TraceCheckUtils]: 41: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:53,106 INFO L273 TraceCheckUtils]: 42: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:53,106 INFO L273 TraceCheckUtils]: 43: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:53,106 INFO L273 TraceCheckUtils]: 44: Hoare triple {43832#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {43832#true} is VALID [2018-11-23 12:17:53,106 INFO L273 TraceCheckUtils]: 45: Hoare triple {43832#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {43832#true} is VALID [2018-11-23 12:17:53,106 INFO L273 TraceCheckUtils]: 46: Hoare triple {43832#true} assume !(~i~1 < 20); {43832#true} is VALID [2018-11-23 12:17:53,107 INFO L256 TraceCheckUtils]: 47: Hoare triple {43832#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {43832#true} is VALID [2018-11-23 12:17:53,107 INFO L273 TraceCheckUtils]: 48: Hoare triple {43832#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {43832#true} is VALID [2018-11-23 12:17:53,107 INFO L273 TraceCheckUtils]: 49: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,107 INFO L273 TraceCheckUtils]: 50: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,107 INFO L273 TraceCheckUtils]: 51: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,107 INFO L273 TraceCheckUtils]: 52: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,107 INFO L273 TraceCheckUtils]: 53: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,107 INFO L273 TraceCheckUtils]: 54: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,107 INFO L273 TraceCheckUtils]: 55: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,107 INFO L273 TraceCheckUtils]: 56: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,108 INFO L273 TraceCheckUtils]: 57: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,108 INFO L273 TraceCheckUtils]: 58: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,108 INFO L273 TraceCheckUtils]: 59: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,108 INFO L273 TraceCheckUtils]: 60: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,108 INFO L273 TraceCheckUtils]: 61: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,108 INFO L273 TraceCheckUtils]: 62: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,108 INFO L273 TraceCheckUtils]: 63: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,108 INFO L273 TraceCheckUtils]: 64: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,108 INFO L273 TraceCheckUtils]: 65: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,108 INFO L273 TraceCheckUtils]: 66: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,109 INFO L273 TraceCheckUtils]: 67: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,109 INFO L273 TraceCheckUtils]: 68: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,109 INFO L273 TraceCheckUtils]: 69: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,109 INFO L273 TraceCheckUtils]: 70: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,109 INFO L273 TraceCheckUtils]: 71: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,109 INFO L273 TraceCheckUtils]: 72: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,109 INFO L273 TraceCheckUtils]: 73: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,109 INFO L273 TraceCheckUtils]: 74: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,109 INFO L273 TraceCheckUtils]: 75: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,109 INFO L273 TraceCheckUtils]: 76: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,110 INFO L273 TraceCheckUtils]: 77: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,110 INFO L273 TraceCheckUtils]: 78: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,110 INFO L273 TraceCheckUtils]: 79: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,110 INFO L273 TraceCheckUtils]: 80: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,110 INFO L273 TraceCheckUtils]: 81: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,110 INFO L273 TraceCheckUtils]: 82: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,110 INFO L273 TraceCheckUtils]: 83: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,110 INFO L273 TraceCheckUtils]: 84: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,110 INFO L273 TraceCheckUtils]: 85: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,110 INFO L273 TraceCheckUtils]: 86: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,111 INFO L273 TraceCheckUtils]: 87: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,111 INFO L273 TraceCheckUtils]: 88: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,111 INFO L273 TraceCheckUtils]: 89: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,111 INFO L273 TraceCheckUtils]: 90: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,111 INFO L273 TraceCheckUtils]: 91: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,111 INFO L273 TraceCheckUtils]: 92: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,111 INFO L273 TraceCheckUtils]: 93: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,111 INFO L273 TraceCheckUtils]: 94: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,111 INFO L273 TraceCheckUtils]: 95: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,111 INFO L273 TraceCheckUtils]: 96: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,112 INFO L273 TraceCheckUtils]: 97: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,112 INFO L273 TraceCheckUtils]: 98: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,112 INFO L273 TraceCheckUtils]: 99: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,112 INFO L273 TraceCheckUtils]: 100: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,112 INFO L273 TraceCheckUtils]: 101: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,112 INFO L273 TraceCheckUtils]: 102: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,112 INFO L273 TraceCheckUtils]: 103: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,112 INFO L273 TraceCheckUtils]: 104: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,112 INFO L273 TraceCheckUtils]: 105: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,112 INFO L273 TraceCheckUtils]: 106: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,113 INFO L273 TraceCheckUtils]: 107: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,113 INFO L273 TraceCheckUtils]: 108: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,113 INFO L273 TraceCheckUtils]: 109: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,113 INFO L273 TraceCheckUtils]: 110: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,113 INFO L273 TraceCheckUtils]: 111: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,113 INFO L273 TraceCheckUtils]: 112: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,113 INFO L273 TraceCheckUtils]: 113: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,113 INFO L273 TraceCheckUtils]: 114: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,113 INFO L273 TraceCheckUtils]: 115: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,113 INFO L273 TraceCheckUtils]: 116: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,114 INFO L273 TraceCheckUtils]: 117: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,114 INFO L273 TraceCheckUtils]: 118: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,114 INFO L273 TraceCheckUtils]: 119: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,114 INFO L273 TraceCheckUtils]: 120: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,114 INFO L273 TraceCheckUtils]: 121: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,114 INFO L273 TraceCheckUtils]: 122: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,114 INFO L273 TraceCheckUtils]: 123: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,114 INFO L273 TraceCheckUtils]: 124: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,114 INFO L273 TraceCheckUtils]: 125: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,115 INFO L273 TraceCheckUtils]: 126: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,115 INFO L273 TraceCheckUtils]: 127: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,115 INFO L273 TraceCheckUtils]: 128: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,115 INFO L273 TraceCheckUtils]: 129: Hoare triple {43832#true} assume !(~i~0 < 20); {43832#true} is VALID [2018-11-23 12:17:53,115 INFO L273 TraceCheckUtils]: 130: Hoare triple {43832#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {43832#true} is VALID [2018-11-23 12:17:53,115 INFO L273 TraceCheckUtils]: 131: Hoare triple {43832#true} assume true; {43832#true} is VALID [2018-11-23 12:17:53,115 INFO L268 TraceCheckUtils]: 132: Hoare quadruple {43832#true} {43832#true} #77#return; {43832#true} is VALID [2018-11-23 12:17:53,115 INFO L273 TraceCheckUtils]: 133: Hoare triple {43832#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {43832#true} is VALID [2018-11-23 12:17:53,115 INFO L256 TraceCheckUtils]: 134: Hoare triple {43832#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {43832#true} is VALID [2018-11-23 12:17:53,115 INFO L273 TraceCheckUtils]: 135: Hoare triple {43832#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {43832#true} is VALID [2018-11-23 12:17:53,116 INFO L273 TraceCheckUtils]: 136: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,116 INFO L273 TraceCheckUtils]: 137: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,116 INFO L273 TraceCheckUtils]: 138: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,116 INFO L273 TraceCheckUtils]: 139: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,116 INFO L273 TraceCheckUtils]: 140: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,116 INFO L273 TraceCheckUtils]: 141: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,116 INFO L273 TraceCheckUtils]: 142: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,116 INFO L273 TraceCheckUtils]: 143: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,116 INFO L273 TraceCheckUtils]: 144: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,116 INFO L273 TraceCheckUtils]: 145: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,117 INFO L273 TraceCheckUtils]: 146: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,117 INFO L273 TraceCheckUtils]: 147: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,117 INFO L273 TraceCheckUtils]: 148: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,117 INFO L273 TraceCheckUtils]: 149: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,117 INFO L273 TraceCheckUtils]: 150: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,117 INFO L273 TraceCheckUtils]: 151: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,117 INFO L273 TraceCheckUtils]: 152: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,117 INFO L273 TraceCheckUtils]: 153: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,117 INFO L273 TraceCheckUtils]: 154: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,117 INFO L273 TraceCheckUtils]: 155: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,118 INFO L273 TraceCheckUtils]: 156: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,118 INFO L273 TraceCheckUtils]: 157: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,118 INFO L273 TraceCheckUtils]: 158: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,118 INFO L273 TraceCheckUtils]: 159: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,118 INFO L273 TraceCheckUtils]: 160: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,118 INFO L273 TraceCheckUtils]: 161: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,118 INFO L273 TraceCheckUtils]: 162: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,118 INFO L273 TraceCheckUtils]: 163: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,118 INFO L273 TraceCheckUtils]: 164: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,118 INFO L273 TraceCheckUtils]: 165: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,119 INFO L273 TraceCheckUtils]: 166: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,119 INFO L273 TraceCheckUtils]: 167: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,119 INFO L273 TraceCheckUtils]: 168: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,119 INFO L273 TraceCheckUtils]: 169: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,119 INFO L273 TraceCheckUtils]: 170: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,119 INFO L273 TraceCheckUtils]: 171: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,119 INFO L273 TraceCheckUtils]: 172: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,119 INFO L273 TraceCheckUtils]: 173: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,119 INFO L273 TraceCheckUtils]: 174: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,119 INFO L273 TraceCheckUtils]: 175: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,120 INFO L273 TraceCheckUtils]: 176: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,120 INFO L273 TraceCheckUtils]: 177: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,120 INFO L273 TraceCheckUtils]: 178: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,120 INFO L273 TraceCheckUtils]: 179: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,120 INFO L273 TraceCheckUtils]: 180: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,120 INFO L273 TraceCheckUtils]: 181: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,120 INFO L273 TraceCheckUtils]: 182: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,120 INFO L273 TraceCheckUtils]: 183: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,120 INFO L273 TraceCheckUtils]: 184: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,120 INFO L273 TraceCheckUtils]: 185: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,121 INFO L273 TraceCheckUtils]: 186: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,121 INFO L273 TraceCheckUtils]: 187: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,121 INFO L273 TraceCheckUtils]: 188: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,121 INFO L273 TraceCheckUtils]: 189: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,121 INFO L273 TraceCheckUtils]: 190: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,121 INFO L273 TraceCheckUtils]: 191: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,121 INFO L273 TraceCheckUtils]: 192: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,121 INFO L273 TraceCheckUtils]: 193: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,121 INFO L273 TraceCheckUtils]: 194: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,121 INFO L273 TraceCheckUtils]: 195: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,122 INFO L273 TraceCheckUtils]: 196: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,122 INFO L273 TraceCheckUtils]: 197: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,122 INFO L273 TraceCheckUtils]: 198: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,122 INFO L273 TraceCheckUtils]: 199: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,122 INFO L273 TraceCheckUtils]: 200: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,122 INFO L273 TraceCheckUtils]: 201: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,122 INFO L273 TraceCheckUtils]: 202: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,122 INFO L273 TraceCheckUtils]: 203: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,122 INFO L273 TraceCheckUtils]: 204: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,122 INFO L273 TraceCheckUtils]: 205: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,123 INFO L273 TraceCheckUtils]: 206: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,123 INFO L273 TraceCheckUtils]: 207: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,123 INFO L273 TraceCheckUtils]: 208: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,123 INFO L273 TraceCheckUtils]: 209: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,123 INFO L273 TraceCheckUtils]: 210: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,123 INFO L273 TraceCheckUtils]: 211: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,123 INFO L273 TraceCheckUtils]: 212: Hoare triple {43832#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43832#true} is VALID [2018-11-23 12:17:53,123 INFO L273 TraceCheckUtils]: 213: Hoare triple {43832#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43832#true} is VALID [2018-11-23 12:17:53,123 INFO L273 TraceCheckUtils]: 214: Hoare triple {43832#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43832#true} is VALID [2018-11-23 12:17:53,124 INFO L273 TraceCheckUtils]: 215: Hoare triple {43832#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43832#true} is VALID [2018-11-23 12:17:53,124 INFO L273 TraceCheckUtils]: 216: Hoare triple {43832#true} assume !(~i~0 < 20); {43832#true} is VALID [2018-11-23 12:17:53,124 INFO L273 TraceCheckUtils]: 217: Hoare triple {43832#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {43832#true} is VALID [2018-11-23 12:17:53,124 INFO L273 TraceCheckUtils]: 218: Hoare triple {43832#true} assume true; {43832#true} is VALID [2018-11-23 12:17:53,124 INFO L268 TraceCheckUtils]: 219: Hoare quadruple {43832#true} {43832#true} #79#return; {43832#true} is VALID [2018-11-23 12:17:53,126 INFO L273 TraceCheckUtils]: 220: Hoare triple {43832#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {44513#(<= main_~i~2 0)} is VALID [2018-11-23 12:17:53,128 INFO L273 TraceCheckUtils]: 221: Hoare triple {44513#(<= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {44513#(<= main_~i~2 0)} is VALID [2018-11-23 12:17:53,129 INFO L273 TraceCheckUtils]: 222: Hoare triple {44513#(<= main_~i~2 0)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43835#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:53,129 INFO L273 TraceCheckUtils]: 223: Hoare triple {43835#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43835#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:53,131 INFO L273 TraceCheckUtils]: 224: Hoare triple {43835#(<= main_~i~2 1)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43836#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:53,131 INFO L273 TraceCheckUtils]: 225: Hoare triple {43836#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43836#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:53,133 INFO L273 TraceCheckUtils]: 226: Hoare triple {43836#(<= main_~i~2 2)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43837#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:53,133 INFO L273 TraceCheckUtils]: 227: Hoare triple {43837#(<= main_~i~2 3)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43837#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:53,135 INFO L273 TraceCheckUtils]: 228: Hoare triple {43837#(<= main_~i~2 3)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43838#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:53,135 INFO L273 TraceCheckUtils]: 229: Hoare triple {43838#(<= main_~i~2 4)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43838#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:53,137 INFO L273 TraceCheckUtils]: 230: Hoare triple {43838#(<= main_~i~2 4)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43839#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:53,137 INFO L273 TraceCheckUtils]: 231: Hoare triple {43839#(<= main_~i~2 5)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43839#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:53,139 INFO L273 TraceCheckUtils]: 232: Hoare triple {43839#(<= main_~i~2 5)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43840#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:53,139 INFO L273 TraceCheckUtils]: 233: Hoare triple {43840#(<= main_~i~2 6)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43840#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:53,141 INFO L273 TraceCheckUtils]: 234: Hoare triple {43840#(<= main_~i~2 6)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43841#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:53,141 INFO L273 TraceCheckUtils]: 235: Hoare triple {43841#(<= main_~i~2 7)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43841#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:53,141 INFO L273 TraceCheckUtils]: 236: Hoare triple {43841#(<= main_~i~2 7)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43842#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:53,142 INFO L273 TraceCheckUtils]: 237: Hoare triple {43842#(<= main_~i~2 8)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43842#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:53,142 INFO L273 TraceCheckUtils]: 238: Hoare triple {43842#(<= main_~i~2 8)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43843#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:53,142 INFO L273 TraceCheckUtils]: 239: Hoare triple {43843#(<= main_~i~2 9)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43843#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:53,143 INFO L273 TraceCheckUtils]: 240: Hoare triple {43843#(<= main_~i~2 9)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43844#(<= main_~i~2 10)} is VALID [2018-11-23 12:17:53,143 INFO L273 TraceCheckUtils]: 241: Hoare triple {43844#(<= main_~i~2 10)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43844#(<= main_~i~2 10)} is VALID [2018-11-23 12:17:53,144 INFO L273 TraceCheckUtils]: 242: Hoare triple {43844#(<= main_~i~2 10)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43845#(<= main_~i~2 11)} is VALID [2018-11-23 12:17:53,144 INFO L273 TraceCheckUtils]: 243: Hoare triple {43845#(<= main_~i~2 11)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43845#(<= main_~i~2 11)} is VALID [2018-11-23 12:17:53,144 INFO L273 TraceCheckUtils]: 244: Hoare triple {43845#(<= main_~i~2 11)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43846#(<= main_~i~2 12)} is VALID [2018-11-23 12:17:53,145 INFO L273 TraceCheckUtils]: 245: Hoare triple {43846#(<= main_~i~2 12)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43846#(<= main_~i~2 12)} is VALID [2018-11-23 12:17:53,146 INFO L273 TraceCheckUtils]: 246: Hoare triple {43846#(<= main_~i~2 12)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43847#(<= main_~i~2 13)} is VALID [2018-11-23 12:17:53,146 INFO L273 TraceCheckUtils]: 247: Hoare triple {43847#(<= main_~i~2 13)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43847#(<= main_~i~2 13)} is VALID [2018-11-23 12:17:53,147 INFO L273 TraceCheckUtils]: 248: Hoare triple {43847#(<= main_~i~2 13)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43848#(<= main_~i~2 14)} is VALID [2018-11-23 12:17:53,147 INFO L273 TraceCheckUtils]: 249: Hoare triple {43848#(<= main_~i~2 14)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {43848#(<= main_~i~2 14)} is VALID [2018-11-23 12:17:53,148 INFO L273 TraceCheckUtils]: 250: Hoare triple {43848#(<= main_~i~2 14)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {43849#(<= main_~i~2 15)} is VALID [2018-11-23 12:17:53,149 INFO L273 TraceCheckUtils]: 251: Hoare triple {43849#(<= main_~i~2 15)} assume !(~i~2 < 19); {43833#false} is VALID [2018-11-23 12:17:53,149 INFO L273 TraceCheckUtils]: 252: Hoare triple {43833#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {43833#false} is VALID [2018-11-23 12:17:53,149 INFO L256 TraceCheckUtils]: 253: Hoare triple {43833#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {43833#false} is VALID [2018-11-23 12:17:53,149 INFO L273 TraceCheckUtils]: 254: Hoare triple {43833#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {43833#false} is VALID [2018-11-23 12:17:53,149 INFO L273 TraceCheckUtils]: 255: Hoare triple {43833#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43833#false} is VALID [2018-11-23 12:17:53,150 INFO L273 TraceCheckUtils]: 256: Hoare triple {43833#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43833#false} is VALID [2018-11-23 12:17:53,150 INFO L273 TraceCheckUtils]: 257: Hoare triple {43833#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43833#false} is VALID [2018-11-23 12:17:53,150 INFO L273 TraceCheckUtils]: 258: Hoare triple {43833#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43833#false} is VALID [2018-11-23 12:17:53,150 INFO L273 TraceCheckUtils]: 259: Hoare triple {43833#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43833#false} is VALID [2018-11-23 12:17:53,150 INFO L273 TraceCheckUtils]: 260: Hoare triple {43833#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43833#false} is VALID [2018-11-23 12:17:53,151 INFO L273 TraceCheckUtils]: 261: Hoare triple {43833#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43833#false} is VALID [2018-11-23 12:17:53,151 INFO L273 TraceCheckUtils]: 262: Hoare triple {43833#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43833#false} is VALID [2018-11-23 12:17:53,151 INFO L273 TraceCheckUtils]: 263: Hoare triple {43833#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43833#false} is VALID [2018-11-23 12:17:53,151 INFO L273 TraceCheckUtils]: 264: Hoare triple {43833#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43833#false} is VALID [2018-11-23 12:17:53,151 INFO L273 TraceCheckUtils]: 265: Hoare triple {43833#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43833#false} is VALID [2018-11-23 12:17:53,151 INFO L273 TraceCheckUtils]: 266: Hoare triple {43833#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43833#false} is VALID [2018-11-23 12:17:53,152 INFO L273 TraceCheckUtils]: 267: Hoare triple {43833#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43833#false} is VALID [2018-11-23 12:17:53,152 INFO L273 TraceCheckUtils]: 268: Hoare triple {43833#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43833#false} is VALID [2018-11-23 12:17:53,152 INFO L273 TraceCheckUtils]: 269: Hoare triple {43833#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43833#false} is VALID [2018-11-23 12:17:53,152 INFO L273 TraceCheckUtils]: 270: Hoare triple {43833#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43833#false} is VALID [2018-11-23 12:17:53,152 INFO L273 TraceCheckUtils]: 271: Hoare triple {43833#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43833#false} is VALID [2018-11-23 12:17:53,152 INFO L273 TraceCheckUtils]: 272: Hoare triple {43833#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43833#false} is VALID [2018-11-23 12:17:53,153 INFO L273 TraceCheckUtils]: 273: Hoare triple {43833#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43833#false} is VALID [2018-11-23 12:17:53,153 INFO L273 TraceCheckUtils]: 274: Hoare triple {43833#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43833#false} is VALID [2018-11-23 12:17:53,153 INFO L273 TraceCheckUtils]: 275: Hoare triple {43833#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43833#false} is VALID [2018-11-23 12:17:53,153 INFO L273 TraceCheckUtils]: 276: Hoare triple {43833#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43833#false} is VALID [2018-11-23 12:17:53,153 INFO L273 TraceCheckUtils]: 277: Hoare triple {43833#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43833#false} is VALID [2018-11-23 12:17:53,153 INFO L273 TraceCheckUtils]: 278: Hoare triple {43833#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43833#false} is VALID [2018-11-23 12:17:53,154 INFO L273 TraceCheckUtils]: 279: Hoare triple {43833#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43833#false} is VALID [2018-11-23 12:17:53,154 INFO L273 TraceCheckUtils]: 280: Hoare triple {43833#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43833#false} is VALID [2018-11-23 12:17:53,154 INFO L273 TraceCheckUtils]: 281: Hoare triple {43833#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43833#false} is VALID [2018-11-23 12:17:53,154 INFO L273 TraceCheckUtils]: 282: Hoare triple {43833#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43833#false} is VALID [2018-11-23 12:17:53,154 INFO L273 TraceCheckUtils]: 283: Hoare triple {43833#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43833#false} is VALID [2018-11-23 12:17:53,154 INFO L273 TraceCheckUtils]: 284: Hoare triple {43833#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43833#false} is VALID [2018-11-23 12:17:53,154 INFO L273 TraceCheckUtils]: 285: Hoare triple {43833#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43833#false} is VALID [2018-11-23 12:17:53,155 INFO L273 TraceCheckUtils]: 286: Hoare triple {43833#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43833#false} is VALID [2018-11-23 12:17:53,155 INFO L273 TraceCheckUtils]: 287: Hoare triple {43833#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43833#false} is VALID [2018-11-23 12:17:53,155 INFO L273 TraceCheckUtils]: 288: Hoare triple {43833#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43833#false} is VALID [2018-11-23 12:17:53,155 INFO L273 TraceCheckUtils]: 289: Hoare triple {43833#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43833#false} is VALID [2018-11-23 12:17:53,155 INFO L273 TraceCheckUtils]: 290: Hoare triple {43833#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43833#false} is VALID [2018-11-23 12:17:53,155 INFO L273 TraceCheckUtils]: 291: Hoare triple {43833#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43833#false} is VALID [2018-11-23 12:17:53,155 INFO L273 TraceCheckUtils]: 292: Hoare triple {43833#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43833#false} is VALID [2018-11-23 12:17:53,155 INFO L273 TraceCheckUtils]: 293: Hoare triple {43833#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43833#false} is VALID [2018-11-23 12:17:53,155 INFO L273 TraceCheckUtils]: 294: Hoare triple {43833#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43833#false} is VALID [2018-11-23 12:17:53,155 INFO L273 TraceCheckUtils]: 295: Hoare triple {43833#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43833#false} is VALID [2018-11-23 12:17:53,156 INFO L273 TraceCheckUtils]: 296: Hoare triple {43833#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43833#false} is VALID [2018-11-23 12:17:53,156 INFO L273 TraceCheckUtils]: 297: Hoare triple {43833#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43833#false} is VALID [2018-11-23 12:17:53,156 INFO L273 TraceCheckUtils]: 298: Hoare triple {43833#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43833#false} is VALID [2018-11-23 12:17:53,156 INFO L273 TraceCheckUtils]: 299: Hoare triple {43833#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43833#false} is VALID [2018-11-23 12:17:53,156 INFO L273 TraceCheckUtils]: 300: Hoare triple {43833#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43833#false} is VALID [2018-11-23 12:17:53,156 INFO L273 TraceCheckUtils]: 301: Hoare triple {43833#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43833#false} is VALID [2018-11-23 12:17:53,156 INFO L273 TraceCheckUtils]: 302: Hoare triple {43833#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43833#false} is VALID [2018-11-23 12:17:53,156 INFO L273 TraceCheckUtils]: 303: Hoare triple {43833#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43833#false} is VALID [2018-11-23 12:17:53,156 INFO L273 TraceCheckUtils]: 304: Hoare triple {43833#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43833#false} is VALID [2018-11-23 12:17:53,156 INFO L273 TraceCheckUtils]: 305: Hoare triple {43833#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43833#false} is VALID [2018-11-23 12:17:53,157 INFO L273 TraceCheckUtils]: 306: Hoare triple {43833#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43833#false} is VALID [2018-11-23 12:17:53,157 INFO L273 TraceCheckUtils]: 307: Hoare triple {43833#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43833#false} is VALID [2018-11-23 12:17:53,157 INFO L273 TraceCheckUtils]: 308: Hoare triple {43833#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43833#false} is VALID [2018-11-23 12:17:53,157 INFO L273 TraceCheckUtils]: 309: Hoare triple {43833#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43833#false} is VALID [2018-11-23 12:17:53,157 INFO L273 TraceCheckUtils]: 310: Hoare triple {43833#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43833#false} is VALID [2018-11-23 12:17:53,157 INFO L273 TraceCheckUtils]: 311: Hoare triple {43833#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43833#false} is VALID [2018-11-23 12:17:53,157 INFO L273 TraceCheckUtils]: 312: Hoare triple {43833#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43833#false} is VALID [2018-11-23 12:17:53,157 INFO L273 TraceCheckUtils]: 313: Hoare triple {43833#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43833#false} is VALID [2018-11-23 12:17:53,157 INFO L273 TraceCheckUtils]: 314: Hoare triple {43833#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43833#false} is VALID [2018-11-23 12:17:53,158 INFO L273 TraceCheckUtils]: 315: Hoare triple {43833#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43833#false} is VALID [2018-11-23 12:17:53,158 INFO L273 TraceCheckUtils]: 316: Hoare triple {43833#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43833#false} is VALID [2018-11-23 12:17:53,158 INFO L273 TraceCheckUtils]: 317: Hoare triple {43833#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43833#false} is VALID [2018-11-23 12:17:53,158 INFO L273 TraceCheckUtils]: 318: Hoare triple {43833#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43833#false} is VALID [2018-11-23 12:17:53,158 INFO L273 TraceCheckUtils]: 319: Hoare triple {43833#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43833#false} is VALID [2018-11-23 12:17:53,158 INFO L273 TraceCheckUtils]: 320: Hoare triple {43833#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43833#false} is VALID [2018-11-23 12:17:53,158 INFO L273 TraceCheckUtils]: 321: Hoare triple {43833#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43833#false} is VALID [2018-11-23 12:17:53,158 INFO L273 TraceCheckUtils]: 322: Hoare triple {43833#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43833#false} is VALID [2018-11-23 12:17:53,158 INFO L273 TraceCheckUtils]: 323: Hoare triple {43833#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43833#false} is VALID [2018-11-23 12:17:53,158 INFO L273 TraceCheckUtils]: 324: Hoare triple {43833#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43833#false} is VALID [2018-11-23 12:17:53,159 INFO L273 TraceCheckUtils]: 325: Hoare triple {43833#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43833#false} is VALID [2018-11-23 12:17:53,159 INFO L273 TraceCheckUtils]: 326: Hoare triple {43833#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43833#false} is VALID [2018-11-23 12:17:53,159 INFO L273 TraceCheckUtils]: 327: Hoare triple {43833#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43833#false} is VALID [2018-11-23 12:17:53,159 INFO L273 TraceCheckUtils]: 328: Hoare triple {43833#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43833#false} is VALID [2018-11-23 12:17:53,159 INFO L273 TraceCheckUtils]: 329: Hoare triple {43833#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43833#false} is VALID [2018-11-23 12:17:53,159 INFO L273 TraceCheckUtils]: 330: Hoare triple {43833#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43833#false} is VALID [2018-11-23 12:17:53,159 INFO L273 TraceCheckUtils]: 331: Hoare triple {43833#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {43833#false} is VALID [2018-11-23 12:17:53,159 INFO L273 TraceCheckUtils]: 332: Hoare triple {43833#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {43833#false} is VALID [2018-11-23 12:17:53,159 INFO L273 TraceCheckUtils]: 333: Hoare triple {43833#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {43833#false} is VALID [2018-11-23 12:17:53,159 INFO L273 TraceCheckUtils]: 334: Hoare triple {43833#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {43833#false} is VALID [2018-11-23 12:17:53,160 INFO L273 TraceCheckUtils]: 335: Hoare triple {43833#false} assume !(~i~0 < 20); {43833#false} is VALID [2018-11-23 12:17:53,160 INFO L273 TraceCheckUtils]: 336: Hoare triple {43833#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {43833#false} is VALID [2018-11-23 12:17:53,160 INFO L273 TraceCheckUtils]: 337: Hoare triple {43833#false} assume true; {43833#false} is VALID [2018-11-23 12:17:53,160 INFO L268 TraceCheckUtils]: 338: Hoare quadruple {43833#false} {43833#false} #81#return; {43833#false} is VALID [2018-11-23 12:17:53,160 INFO L273 TraceCheckUtils]: 339: Hoare triple {43833#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {43833#false} is VALID [2018-11-23 12:17:53,160 INFO L273 TraceCheckUtils]: 340: Hoare triple {43833#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {43833#false} is VALID [2018-11-23 12:17:53,160 INFO L273 TraceCheckUtils]: 341: Hoare triple {43833#false} assume !false; {43833#false} is VALID [2018-11-23 12:17:53,226 INFO L134 CoverageAnalysis]: Checked inductivity of 7900 backedges. 3290 proven. 225 refuted. 0 times theorem prover too weak. 4385 trivial. 0 not checked. [2018-11-23 12:17:53,249 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:17:53,250 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 18] total 19 [2018-11-23 12:17:53,251 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 342 [2018-11-23 12:17:53,251 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:17:53,251 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states. [2018-11-23 12:17:53,327 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:17:53,328 INFO L459 AbstractCegarLoop]: Interpolant automaton has 19 states [2018-11-23 12:17:53,328 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2018-11-23 12:17:53,328 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=171, Invalid=171, Unknown=0, NotChecked=0, Total=342 [2018-11-23 12:17:53,328 INFO L87 Difference]: Start difference. First operand 173 states and 197 transitions. Second operand 19 states. [2018-11-23 12:17:53,704 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:53,705 INFO L93 Difference]: Finished difference Result 267 states and 312 transitions. [2018-11-23 12:17:53,705 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2018-11-23 12:17:53,705 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 342 [2018-11-23 12:17:53,705 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:17:53,705 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-23 12:17:53,706 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 81 transitions. [2018-11-23 12:17:53,706 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-23 12:17:53,706 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 81 transitions. [2018-11-23 12:17:53,706 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states and 81 transitions. [2018-11-23 12:17:53,781 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:17:53,784 INFO L225 Difference]: With dead ends: 267 [2018-11-23 12:17:53,784 INFO L226 Difference]: Without dead ends: 176 [2018-11-23 12:17:53,785 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 359 GetRequests, 342 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 28 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=171, Invalid=171, Unknown=0, NotChecked=0, Total=342 [2018-11-23 12:17:53,785 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 176 states. [2018-11-23 12:17:53,859 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 176 to 175. [2018-11-23 12:17:53,859 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:17:53,859 INFO L82 GeneralOperation]: Start isEquivalent. First operand 176 states. Second operand 175 states. [2018-11-23 12:17:53,859 INFO L74 IsIncluded]: Start isIncluded. First operand 176 states. Second operand 175 states. [2018-11-23 12:17:53,859 INFO L87 Difference]: Start difference. First operand 176 states. Second operand 175 states. [2018-11-23 12:17:53,862 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:53,862 INFO L93 Difference]: Finished difference Result 176 states and 200 transitions. [2018-11-23 12:17:53,863 INFO L276 IsEmpty]: Start isEmpty. Operand 176 states and 200 transitions. [2018-11-23 12:17:53,863 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:53,863 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:53,863 INFO L74 IsIncluded]: Start isIncluded. First operand 175 states. Second operand 176 states. [2018-11-23 12:17:53,863 INFO L87 Difference]: Start difference. First operand 175 states. Second operand 176 states. [2018-11-23 12:17:53,865 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:53,866 INFO L93 Difference]: Finished difference Result 176 states and 200 transitions. [2018-11-23 12:17:53,866 INFO L276 IsEmpty]: Start isEmpty. Operand 176 states and 200 transitions. [2018-11-23 12:17:53,866 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:53,866 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:53,866 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:17:53,866 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:17:53,866 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 175 states. [2018-11-23 12:17:53,868 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 175 states to 175 states and 199 transitions. [2018-11-23 12:17:53,869 INFO L78 Accepts]: Start accepts. Automaton has 175 states and 199 transitions. Word has length 342 [2018-11-23 12:17:53,869 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:17:53,869 INFO L480 AbstractCegarLoop]: Abstraction has 175 states and 199 transitions. [2018-11-23 12:17:53,869 INFO L481 AbstractCegarLoop]: Interpolant automaton has 19 states. [2018-11-23 12:17:53,869 INFO L276 IsEmpty]: Start isEmpty. Operand 175 states and 199 transitions. [2018-11-23 12:17:53,871 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 345 [2018-11-23 12:17:53,871 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:17:53,871 INFO L402 BasicCegarLoop]: trace histogram [60, 60, 60, 60, 20, 20, 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] [2018-11-23 12:17:53,872 INFO L423 AbstractCegarLoop]: === Iteration 43 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:17:53,872 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:17:53,872 INFO L82 PathProgramCache]: Analyzing trace with hash 1933572655, now seen corresponding path program 40 times [2018-11-23 12:17:53,872 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:17:53,872 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:17:53,873 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:53,873 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:17:53,873 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:53,929 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:54,484 INFO L256 TraceCheckUtils]: 0: Hoare triple {45827#true} call ULTIMATE.init(); {45827#true} is VALID [2018-11-23 12:17:54,484 INFO L273 TraceCheckUtils]: 1: Hoare triple {45827#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {45827#true} is VALID [2018-11-23 12:17:54,485 INFO L273 TraceCheckUtils]: 2: Hoare triple {45827#true} assume true; {45827#true} is VALID [2018-11-23 12:17:54,485 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {45827#true} {45827#true} #73#return; {45827#true} is VALID [2018-11-23 12:17:54,485 INFO L256 TraceCheckUtils]: 4: Hoare triple {45827#true} call #t~ret14 := main(); {45827#true} is VALID [2018-11-23 12:17:54,485 INFO L273 TraceCheckUtils]: 5: Hoare triple {45827#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {45827#true} is VALID [2018-11-23 12:17:54,485 INFO L273 TraceCheckUtils]: 6: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:54,486 INFO L273 TraceCheckUtils]: 7: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:54,486 INFO L273 TraceCheckUtils]: 8: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:54,486 INFO L273 TraceCheckUtils]: 9: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:54,486 INFO L273 TraceCheckUtils]: 10: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:54,486 INFO L273 TraceCheckUtils]: 11: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:54,486 INFO L273 TraceCheckUtils]: 12: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:54,486 INFO L273 TraceCheckUtils]: 13: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:54,486 INFO L273 TraceCheckUtils]: 14: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:54,486 INFO L273 TraceCheckUtils]: 15: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:54,487 INFO L273 TraceCheckUtils]: 16: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:54,487 INFO L273 TraceCheckUtils]: 17: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:54,487 INFO L273 TraceCheckUtils]: 18: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:54,487 INFO L273 TraceCheckUtils]: 19: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:54,487 INFO L273 TraceCheckUtils]: 20: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:54,487 INFO L273 TraceCheckUtils]: 21: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:54,487 INFO L273 TraceCheckUtils]: 22: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:54,487 INFO L273 TraceCheckUtils]: 23: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:54,487 INFO L273 TraceCheckUtils]: 24: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:54,487 INFO L273 TraceCheckUtils]: 25: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:54,488 INFO L273 TraceCheckUtils]: 26: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:54,488 INFO L273 TraceCheckUtils]: 27: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:54,488 INFO L273 TraceCheckUtils]: 28: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:54,488 INFO L273 TraceCheckUtils]: 29: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:54,488 INFO L273 TraceCheckUtils]: 30: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:54,488 INFO L273 TraceCheckUtils]: 31: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:54,488 INFO L273 TraceCheckUtils]: 32: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:54,488 INFO L273 TraceCheckUtils]: 33: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:54,488 INFO L273 TraceCheckUtils]: 34: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:54,489 INFO L273 TraceCheckUtils]: 35: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:54,489 INFO L273 TraceCheckUtils]: 36: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:54,489 INFO L273 TraceCheckUtils]: 37: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:54,489 INFO L273 TraceCheckUtils]: 38: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:54,489 INFO L273 TraceCheckUtils]: 39: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:54,489 INFO L273 TraceCheckUtils]: 40: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:54,489 INFO L273 TraceCheckUtils]: 41: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:54,489 INFO L273 TraceCheckUtils]: 42: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:54,489 INFO L273 TraceCheckUtils]: 43: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:54,489 INFO L273 TraceCheckUtils]: 44: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:54,490 INFO L273 TraceCheckUtils]: 45: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:54,490 INFO L273 TraceCheckUtils]: 46: Hoare triple {45827#true} assume !(~i~1 < 20); {45827#true} is VALID [2018-11-23 12:17:54,490 INFO L256 TraceCheckUtils]: 47: Hoare triple {45827#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {45827#true} is VALID [2018-11-23 12:17:54,490 INFO L273 TraceCheckUtils]: 48: Hoare triple {45827#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {45827#true} is VALID [2018-11-23 12:17:54,490 INFO L273 TraceCheckUtils]: 49: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,490 INFO L273 TraceCheckUtils]: 50: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,490 INFO L273 TraceCheckUtils]: 51: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,490 INFO L273 TraceCheckUtils]: 52: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,490 INFO L273 TraceCheckUtils]: 53: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,490 INFO L273 TraceCheckUtils]: 54: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,491 INFO L273 TraceCheckUtils]: 55: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,491 INFO L273 TraceCheckUtils]: 56: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,491 INFO L273 TraceCheckUtils]: 57: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,491 INFO L273 TraceCheckUtils]: 58: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,491 INFO L273 TraceCheckUtils]: 59: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,491 INFO L273 TraceCheckUtils]: 60: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,491 INFO L273 TraceCheckUtils]: 61: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,491 INFO L273 TraceCheckUtils]: 62: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,491 INFO L273 TraceCheckUtils]: 63: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,492 INFO L273 TraceCheckUtils]: 64: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,492 INFO L273 TraceCheckUtils]: 65: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,492 INFO L273 TraceCheckUtils]: 66: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,492 INFO L273 TraceCheckUtils]: 67: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,492 INFO L273 TraceCheckUtils]: 68: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,492 INFO L273 TraceCheckUtils]: 69: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,492 INFO L273 TraceCheckUtils]: 70: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,492 INFO L273 TraceCheckUtils]: 71: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,492 INFO L273 TraceCheckUtils]: 72: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,492 INFO L273 TraceCheckUtils]: 73: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,493 INFO L273 TraceCheckUtils]: 74: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,493 INFO L273 TraceCheckUtils]: 75: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,493 INFO L273 TraceCheckUtils]: 76: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,493 INFO L273 TraceCheckUtils]: 77: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,493 INFO L273 TraceCheckUtils]: 78: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,493 INFO L273 TraceCheckUtils]: 79: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,493 INFO L273 TraceCheckUtils]: 80: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,493 INFO L273 TraceCheckUtils]: 81: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,493 INFO L273 TraceCheckUtils]: 82: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,493 INFO L273 TraceCheckUtils]: 83: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,494 INFO L273 TraceCheckUtils]: 84: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,494 INFO L273 TraceCheckUtils]: 85: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,494 INFO L273 TraceCheckUtils]: 86: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,494 INFO L273 TraceCheckUtils]: 87: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,494 INFO L273 TraceCheckUtils]: 88: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,494 INFO L273 TraceCheckUtils]: 89: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,494 INFO L273 TraceCheckUtils]: 90: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,494 INFO L273 TraceCheckUtils]: 91: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,494 INFO L273 TraceCheckUtils]: 92: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,494 INFO L273 TraceCheckUtils]: 93: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,495 INFO L273 TraceCheckUtils]: 94: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,495 INFO L273 TraceCheckUtils]: 95: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,495 INFO L273 TraceCheckUtils]: 96: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,495 INFO L273 TraceCheckUtils]: 97: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,495 INFO L273 TraceCheckUtils]: 98: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,495 INFO L273 TraceCheckUtils]: 99: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,495 INFO L273 TraceCheckUtils]: 100: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,495 INFO L273 TraceCheckUtils]: 101: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,495 INFO L273 TraceCheckUtils]: 102: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,496 INFO L273 TraceCheckUtils]: 103: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,496 INFO L273 TraceCheckUtils]: 104: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,496 INFO L273 TraceCheckUtils]: 105: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,496 INFO L273 TraceCheckUtils]: 106: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,496 INFO L273 TraceCheckUtils]: 107: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,496 INFO L273 TraceCheckUtils]: 108: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,496 INFO L273 TraceCheckUtils]: 109: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,496 INFO L273 TraceCheckUtils]: 110: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,496 INFO L273 TraceCheckUtils]: 111: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,496 INFO L273 TraceCheckUtils]: 112: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,497 INFO L273 TraceCheckUtils]: 113: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,497 INFO L273 TraceCheckUtils]: 114: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,497 INFO L273 TraceCheckUtils]: 115: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,497 INFO L273 TraceCheckUtils]: 116: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,497 INFO L273 TraceCheckUtils]: 117: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,497 INFO L273 TraceCheckUtils]: 118: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,497 INFO L273 TraceCheckUtils]: 119: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,497 INFO L273 TraceCheckUtils]: 120: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,497 INFO L273 TraceCheckUtils]: 121: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,497 INFO L273 TraceCheckUtils]: 122: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,498 INFO L273 TraceCheckUtils]: 123: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,498 INFO L273 TraceCheckUtils]: 124: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,498 INFO L273 TraceCheckUtils]: 125: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,498 INFO L273 TraceCheckUtils]: 126: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,498 INFO L273 TraceCheckUtils]: 127: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,498 INFO L273 TraceCheckUtils]: 128: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,498 INFO L273 TraceCheckUtils]: 129: Hoare triple {45827#true} assume !(~i~0 < 20); {45827#true} is VALID [2018-11-23 12:17:54,498 INFO L273 TraceCheckUtils]: 130: Hoare triple {45827#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {45827#true} is VALID [2018-11-23 12:17:54,498 INFO L273 TraceCheckUtils]: 131: Hoare triple {45827#true} assume true; {45827#true} is VALID [2018-11-23 12:17:54,498 INFO L268 TraceCheckUtils]: 132: Hoare quadruple {45827#true} {45827#true} #77#return; {45827#true} is VALID [2018-11-23 12:17:54,499 INFO L273 TraceCheckUtils]: 133: Hoare triple {45827#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {45827#true} is VALID [2018-11-23 12:17:54,499 INFO L256 TraceCheckUtils]: 134: Hoare triple {45827#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {45827#true} is VALID [2018-11-23 12:17:54,499 INFO L273 TraceCheckUtils]: 135: Hoare triple {45827#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {45827#true} is VALID [2018-11-23 12:17:54,499 INFO L273 TraceCheckUtils]: 136: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,499 INFO L273 TraceCheckUtils]: 137: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,499 INFO L273 TraceCheckUtils]: 138: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,499 INFO L273 TraceCheckUtils]: 139: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,499 INFO L273 TraceCheckUtils]: 140: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,499 INFO L273 TraceCheckUtils]: 141: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,499 INFO L273 TraceCheckUtils]: 142: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,500 INFO L273 TraceCheckUtils]: 143: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,500 INFO L273 TraceCheckUtils]: 144: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,500 INFO L273 TraceCheckUtils]: 145: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,500 INFO L273 TraceCheckUtils]: 146: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,500 INFO L273 TraceCheckUtils]: 147: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,500 INFO L273 TraceCheckUtils]: 148: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,500 INFO L273 TraceCheckUtils]: 149: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,500 INFO L273 TraceCheckUtils]: 150: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,500 INFO L273 TraceCheckUtils]: 151: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,500 INFO L273 TraceCheckUtils]: 152: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,501 INFO L273 TraceCheckUtils]: 153: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,501 INFO L273 TraceCheckUtils]: 154: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,501 INFO L273 TraceCheckUtils]: 155: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,501 INFO L273 TraceCheckUtils]: 156: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,501 INFO L273 TraceCheckUtils]: 157: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,501 INFO L273 TraceCheckUtils]: 158: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,501 INFO L273 TraceCheckUtils]: 159: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,501 INFO L273 TraceCheckUtils]: 160: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,501 INFO L273 TraceCheckUtils]: 161: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,502 INFO L273 TraceCheckUtils]: 162: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,502 INFO L273 TraceCheckUtils]: 163: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,502 INFO L273 TraceCheckUtils]: 164: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,502 INFO L273 TraceCheckUtils]: 165: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,502 INFO L273 TraceCheckUtils]: 166: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,502 INFO L273 TraceCheckUtils]: 167: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,502 INFO L273 TraceCheckUtils]: 168: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,502 INFO L273 TraceCheckUtils]: 169: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,502 INFO L273 TraceCheckUtils]: 170: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,502 INFO L273 TraceCheckUtils]: 171: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,503 INFO L273 TraceCheckUtils]: 172: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,503 INFO L273 TraceCheckUtils]: 173: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,503 INFO L273 TraceCheckUtils]: 174: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,503 INFO L273 TraceCheckUtils]: 175: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,503 INFO L273 TraceCheckUtils]: 176: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,503 INFO L273 TraceCheckUtils]: 177: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,503 INFO L273 TraceCheckUtils]: 178: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,503 INFO L273 TraceCheckUtils]: 179: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,503 INFO L273 TraceCheckUtils]: 180: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,503 INFO L273 TraceCheckUtils]: 181: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,504 INFO L273 TraceCheckUtils]: 182: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,504 INFO L273 TraceCheckUtils]: 183: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,504 INFO L273 TraceCheckUtils]: 184: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,504 INFO L273 TraceCheckUtils]: 185: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,504 INFO L273 TraceCheckUtils]: 186: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,504 INFO L273 TraceCheckUtils]: 187: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,504 INFO L273 TraceCheckUtils]: 188: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,504 INFO L273 TraceCheckUtils]: 189: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,504 INFO L273 TraceCheckUtils]: 190: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,504 INFO L273 TraceCheckUtils]: 191: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,505 INFO L273 TraceCheckUtils]: 192: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,505 INFO L273 TraceCheckUtils]: 193: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,505 INFO L273 TraceCheckUtils]: 194: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,505 INFO L273 TraceCheckUtils]: 195: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,505 INFO L273 TraceCheckUtils]: 196: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,505 INFO L273 TraceCheckUtils]: 197: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,505 INFO L273 TraceCheckUtils]: 198: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,505 INFO L273 TraceCheckUtils]: 199: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,505 INFO L273 TraceCheckUtils]: 200: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,505 INFO L273 TraceCheckUtils]: 201: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,506 INFO L273 TraceCheckUtils]: 202: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,506 INFO L273 TraceCheckUtils]: 203: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,506 INFO L273 TraceCheckUtils]: 204: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,506 INFO L273 TraceCheckUtils]: 205: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,506 INFO L273 TraceCheckUtils]: 206: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,506 INFO L273 TraceCheckUtils]: 207: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,506 INFO L273 TraceCheckUtils]: 208: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,506 INFO L273 TraceCheckUtils]: 209: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,506 INFO L273 TraceCheckUtils]: 210: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,506 INFO L273 TraceCheckUtils]: 211: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,507 INFO L273 TraceCheckUtils]: 212: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,507 INFO L273 TraceCheckUtils]: 213: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,507 INFO L273 TraceCheckUtils]: 214: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,507 INFO L273 TraceCheckUtils]: 215: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,507 INFO L273 TraceCheckUtils]: 216: Hoare triple {45827#true} assume !(~i~0 < 20); {45827#true} is VALID [2018-11-23 12:17:54,507 INFO L273 TraceCheckUtils]: 217: Hoare triple {45827#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {45827#true} is VALID [2018-11-23 12:17:54,507 INFO L273 TraceCheckUtils]: 218: Hoare triple {45827#true} assume true; {45827#true} is VALID [2018-11-23 12:17:54,507 INFO L268 TraceCheckUtils]: 219: Hoare quadruple {45827#true} {45827#true} #79#return; {45827#true} is VALID [2018-11-23 12:17:54,508 INFO L273 TraceCheckUtils]: 220: Hoare triple {45827#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {45829#(= main_~i~2 0)} is VALID [2018-11-23 12:17:54,509 INFO L273 TraceCheckUtils]: 221: Hoare triple {45829#(= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45829#(= main_~i~2 0)} is VALID [2018-11-23 12:17:54,509 INFO L273 TraceCheckUtils]: 222: Hoare triple {45829#(= main_~i~2 0)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45830#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:54,511 INFO L273 TraceCheckUtils]: 223: Hoare triple {45830#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45830#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:54,511 INFO L273 TraceCheckUtils]: 224: Hoare triple {45830#(<= main_~i~2 1)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45831#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:54,513 INFO L273 TraceCheckUtils]: 225: Hoare triple {45831#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45831#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:54,513 INFO L273 TraceCheckUtils]: 226: Hoare triple {45831#(<= main_~i~2 2)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45832#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:54,515 INFO L273 TraceCheckUtils]: 227: Hoare triple {45832#(<= main_~i~2 3)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45832#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:54,515 INFO L273 TraceCheckUtils]: 228: Hoare triple {45832#(<= main_~i~2 3)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45833#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:54,517 INFO L273 TraceCheckUtils]: 229: Hoare triple {45833#(<= main_~i~2 4)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45833#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:54,517 INFO L273 TraceCheckUtils]: 230: Hoare triple {45833#(<= main_~i~2 4)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45834#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:54,519 INFO L273 TraceCheckUtils]: 231: Hoare triple {45834#(<= main_~i~2 5)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45834#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:54,519 INFO L273 TraceCheckUtils]: 232: Hoare triple {45834#(<= main_~i~2 5)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45835#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:54,521 INFO L273 TraceCheckUtils]: 233: Hoare triple {45835#(<= main_~i~2 6)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45835#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:54,521 INFO L273 TraceCheckUtils]: 234: Hoare triple {45835#(<= main_~i~2 6)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45836#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:54,523 INFO L273 TraceCheckUtils]: 235: Hoare triple {45836#(<= main_~i~2 7)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45836#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:54,523 INFO L273 TraceCheckUtils]: 236: Hoare triple {45836#(<= main_~i~2 7)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45837#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:54,525 INFO L273 TraceCheckUtils]: 237: Hoare triple {45837#(<= main_~i~2 8)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45837#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:54,525 INFO L273 TraceCheckUtils]: 238: Hoare triple {45837#(<= main_~i~2 8)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45838#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:54,527 INFO L273 TraceCheckUtils]: 239: Hoare triple {45838#(<= main_~i~2 9)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45838#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:54,527 INFO L273 TraceCheckUtils]: 240: Hoare triple {45838#(<= main_~i~2 9)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45839#(<= main_~i~2 10)} is VALID [2018-11-23 12:17:54,529 INFO L273 TraceCheckUtils]: 241: Hoare triple {45839#(<= main_~i~2 10)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45839#(<= main_~i~2 10)} is VALID [2018-11-23 12:17:54,529 INFO L273 TraceCheckUtils]: 242: Hoare triple {45839#(<= main_~i~2 10)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45840#(<= main_~i~2 11)} is VALID [2018-11-23 12:17:54,531 INFO L273 TraceCheckUtils]: 243: Hoare triple {45840#(<= main_~i~2 11)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45840#(<= main_~i~2 11)} is VALID [2018-11-23 12:17:54,531 INFO L273 TraceCheckUtils]: 244: Hoare triple {45840#(<= main_~i~2 11)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45841#(<= main_~i~2 12)} is VALID [2018-11-23 12:17:54,533 INFO L273 TraceCheckUtils]: 245: Hoare triple {45841#(<= main_~i~2 12)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45841#(<= main_~i~2 12)} is VALID [2018-11-23 12:17:54,533 INFO L273 TraceCheckUtils]: 246: Hoare triple {45841#(<= main_~i~2 12)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45842#(<= main_~i~2 13)} is VALID [2018-11-23 12:17:54,535 INFO L273 TraceCheckUtils]: 247: Hoare triple {45842#(<= main_~i~2 13)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45842#(<= main_~i~2 13)} is VALID [2018-11-23 12:17:54,535 INFO L273 TraceCheckUtils]: 248: Hoare triple {45842#(<= main_~i~2 13)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45843#(<= main_~i~2 14)} is VALID [2018-11-23 12:17:54,537 INFO L273 TraceCheckUtils]: 249: Hoare triple {45843#(<= main_~i~2 14)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45843#(<= main_~i~2 14)} is VALID [2018-11-23 12:17:54,537 INFO L273 TraceCheckUtils]: 250: Hoare triple {45843#(<= main_~i~2 14)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45844#(<= main_~i~2 15)} is VALID [2018-11-23 12:17:54,539 INFO L273 TraceCheckUtils]: 251: Hoare triple {45844#(<= main_~i~2 15)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45844#(<= main_~i~2 15)} is VALID [2018-11-23 12:17:54,539 INFO L273 TraceCheckUtils]: 252: Hoare triple {45844#(<= main_~i~2 15)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45845#(<= main_~i~2 16)} is VALID [2018-11-23 12:17:54,541 INFO L273 TraceCheckUtils]: 253: Hoare triple {45845#(<= main_~i~2 16)} assume !(~i~2 < 19); {45828#false} is VALID [2018-11-23 12:17:54,541 INFO L273 TraceCheckUtils]: 254: Hoare triple {45828#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {45828#false} is VALID [2018-11-23 12:17:54,541 INFO L256 TraceCheckUtils]: 255: Hoare triple {45828#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {45827#true} is VALID [2018-11-23 12:17:54,541 INFO L273 TraceCheckUtils]: 256: Hoare triple {45827#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {45827#true} is VALID [2018-11-23 12:17:54,541 INFO L273 TraceCheckUtils]: 257: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,541 INFO L273 TraceCheckUtils]: 258: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,541 INFO L273 TraceCheckUtils]: 259: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,541 INFO L273 TraceCheckUtils]: 260: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,542 INFO L273 TraceCheckUtils]: 261: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,542 INFO L273 TraceCheckUtils]: 262: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,542 INFO L273 TraceCheckUtils]: 263: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,542 INFO L273 TraceCheckUtils]: 264: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,542 INFO L273 TraceCheckUtils]: 265: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,542 INFO L273 TraceCheckUtils]: 266: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,542 INFO L273 TraceCheckUtils]: 267: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,542 INFO L273 TraceCheckUtils]: 268: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,542 INFO L273 TraceCheckUtils]: 269: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,542 INFO L273 TraceCheckUtils]: 270: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,543 INFO L273 TraceCheckUtils]: 271: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,543 INFO L273 TraceCheckUtils]: 272: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,543 INFO L273 TraceCheckUtils]: 273: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,543 INFO L273 TraceCheckUtils]: 274: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,543 INFO L273 TraceCheckUtils]: 275: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,543 INFO L273 TraceCheckUtils]: 276: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,543 INFO L273 TraceCheckUtils]: 277: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,543 INFO L273 TraceCheckUtils]: 278: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,543 INFO L273 TraceCheckUtils]: 279: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,543 INFO L273 TraceCheckUtils]: 280: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,544 INFO L273 TraceCheckUtils]: 281: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,544 INFO L273 TraceCheckUtils]: 282: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,544 INFO L273 TraceCheckUtils]: 283: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,544 INFO L273 TraceCheckUtils]: 284: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,544 INFO L273 TraceCheckUtils]: 285: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,544 INFO L273 TraceCheckUtils]: 286: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,544 INFO L273 TraceCheckUtils]: 287: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,544 INFO L273 TraceCheckUtils]: 288: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,544 INFO L273 TraceCheckUtils]: 289: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,544 INFO L273 TraceCheckUtils]: 290: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,545 INFO L273 TraceCheckUtils]: 291: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,545 INFO L273 TraceCheckUtils]: 292: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,545 INFO L273 TraceCheckUtils]: 293: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,545 INFO L273 TraceCheckUtils]: 294: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,545 INFO L273 TraceCheckUtils]: 295: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,545 INFO L273 TraceCheckUtils]: 296: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,545 INFO L273 TraceCheckUtils]: 297: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,545 INFO L273 TraceCheckUtils]: 298: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,545 INFO L273 TraceCheckUtils]: 299: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,545 INFO L273 TraceCheckUtils]: 300: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,546 INFO L273 TraceCheckUtils]: 301: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,546 INFO L273 TraceCheckUtils]: 302: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,546 INFO L273 TraceCheckUtils]: 303: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,546 INFO L273 TraceCheckUtils]: 304: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,546 INFO L273 TraceCheckUtils]: 305: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,546 INFO L273 TraceCheckUtils]: 306: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,546 INFO L273 TraceCheckUtils]: 307: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,546 INFO L273 TraceCheckUtils]: 308: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,546 INFO L273 TraceCheckUtils]: 309: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,547 INFO L273 TraceCheckUtils]: 310: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,547 INFO L273 TraceCheckUtils]: 311: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,547 INFO L273 TraceCheckUtils]: 312: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,547 INFO L273 TraceCheckUtils]: 313: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,547 INFO L273 TraceCheckUtils]: 314: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,547 INFO L273 TraceCheckUtils]: 315: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,547 INFO L273 TraceCheckUtils]: 316: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,547 INFO L273 TraceCheckUtils]: 317: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,547 INFO L273 TraceCheckUtils]: 318: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,547 INFO L273 TraceCheckUtils]: 319: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,548 INFO L273 TraceCheckUtils]: 320: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,548 INFO L273 TraceCheckUtils]: 321: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,548 INFO L273 TraceCheckUtils]: 322: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,548 INFO L273 TraceCheckUtils]: 323: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,548 INFO L273 TraceCheckUtils]: 324: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,548 INFO L273 TraceCheckUtils]: 325: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,548 INFO L273 TraceCheckUtils]: 326: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,548 INFO L273 TraceCheckUtils]: 327: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,548 INFO L273 TraceCheckUtils]: 328: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,548 INFO L273 TraceCheckUtils]: 329: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,549 INFO L273 TraceCheckUtils]: 330: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,549 INFO L273 TraceCheckUtils]: 331: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,549 INFO L273 TraceCheckUtils]: 332: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,549 INFO L273 TraceCheckUtils]: 333: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:54,549 INFO L273 TraceCheckUtils]: 334: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:54,549 INFO L273 TraceCheckUtils]: 335: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:54,549 INFO L273 TraceCheckUtils]: 336: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:54,549 INFO L273 TraceCheckUtils]: 337: Hoare triple {45827#true} assume !(~i~0 < 20); {45827#true} is VALID [2018-11-23 12:17:54,549 INFO L273 TraceCheckUtils]: 338: Hoare triple {45827#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {45827#true} is VALID [2018-11-23 12:17:54,549 INFO L273 TraceCheckUtils]: 339: Hoare triple {45827#true} assume true; {45827#true} is VALID [2018-11-23 12:17:54,550 INFO L268 TraceCheckUtils]: 340: Hoare quadruple {45827#true} {45828#false} #81#return; {45828#false} is VALID [2018-11-23 12:17:54,550 INFO L273 TraceCheckUtils]: 341: Hoare triple {45828#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {45828#false} is VALID [2018-11-23 12:17:54,550 INFO L273 TraceCheckUtils]: 342: Hoare triple {45828#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {45828#false} is VALID [2018-11-23 12:17:54,550 INFO L273 TraceCheckUtils]: 343: Hoare triple {45828#false} assume !false; {45828#false} is VALID [2018-11-23 12:17:54,589 INFO L134 CoverageAnalysis]: Checked inductivity of 7931 backedges. 0 proven. 256 refuted. 0 times theorem prover too weak. 7675 trivial. 0 not checked. [2018-11-23 12:17:54,589 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:17:54,589 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 -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 42 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:17:54,599 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 12:17:54,768 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 12:17:54,769 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:17:54,834 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:54,836 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:17:55,147 INFO L256 TraceCheckUtils]: 0: Hoare triple {45827#true} call ULTIMATE.init(); {45827#true} is VALID [2018-11-23 12:17:55,147 INFO L273 TraceCheckUtils]: 1: Hoare triple {45827#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {45827#true} is VALID [2018-11-23 12:17:55,147 INFO L273 TraceCheckUtils]: 2: Hoare triple {45827#true} assume true; {45827#true} is VALID [2018-11-23 12:17:55,147 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {45827#true} {45827#true} #73#return; {45827#true} is VALID [2018-11-23 12:17:55,147 INFO L256 TraceCheckUtils]: 4: Hoare triple {45827#true} call #t~ret14 := main(); {45827#true} is VALID [2018-11-23 12:17:55,148 INFO L273 TraceCheckUtils]: 5: Hoare triple {45827#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {45827#true} is VALID [2018-11-23 12:17:55,148 INFO L273 TraceCheckUtils]: 6: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:55,148 INFO L273 TraceCheckUtils]: 7: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:55,148 INFO L273 TraceCheckUtils]: 8: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:55,148 INFO L273 TraceCheckUtils]: 9: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:55,149 INFO L273 TraceCheckUtils]: 10: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:55,149 INFO L273 TraceCheckUtils]: 11: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:55,149 INFO L273 TraceCheckUtils]: 12: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:55,149 INFO L273 TraceCheckUtils]: 13: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:55,149 INFO L273 TraceCheckUtils]: 14: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:55,149 INFO L273 TraceCheckUtils]: 15: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:55,149 INFO L273 TraceCheckUtils]: 16: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:55,149 INFO L273 TraceCheckUtils]: 17: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:55,150 INFO L273 TraceCheckUtils]: 18: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:55,150 INFO L273 TraceCheckUtils]: 19: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:55,150 INFO L273 TraceCheckUtils]: 20: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:55,150 INFO L273 TraceCheckUtils]: 21: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:55,150 INFO L273 TraceCheckUtils]: 22: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:55,150 INFO L273 TraceCheckUtils]: 23: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:55,150 INFO L273 TraceCheckUtils]: 24: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:55,150 INFO L273 TraceCheckUtils]: 25: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:55,150 INFO L273 TraceCheckUtils]: 26: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:55,150 INFO L273 TraceCheckUtils]: 27: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:55,151 INFO L273 TraceCheckUtils]: 28: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:55,151 INFO L273 TraceCheckUtils]: 29: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:55,151 INFO L273 TraceCheckUtils]: 30: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:55,151 INFO L273 TraceCheckUtils]: 31: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:55,151 INFO L273 TraceCheckUtils]: 32: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:55,151 INFO L273 TraceCheckUtils]: 33: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:55,151 INFO L273 TraceCheckUtils]: 34: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:55,151 INFO L273 TraceCheckUtils]: 35: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:55,151 INFO L273 TraceCheckUtils]: 36: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:55,151 INFO L273 TraceCheckUtils]: 37: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:55,152 INFO L273 TraceCheckUtils]: 38: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:55,152 INFO L273 TraceCheckUtils]: 39: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:55,152 INFO L273 TraceCheckUtils]: 40: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:55,152 INFO L273 TraceCheckUtils]: 41: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:55,152 INFO L273 TraceCheckUtils]: 42: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:55,152 INFO L273 TraceCheckUtils]: 43: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:55,152 INFO L273 TraceCheckUtils]: 44: Hoare triple {45827#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {45827#true} is VALID [2018-11-23 12:17:55,152 INFO L273 TraceCheckUtils]: 45: Hoare triple {45827#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {45827#true} is VALID [2018-11-23 12:17:55,152 INFO L273 TraceCheckUtils]: 46: Hoare triple {45827#true} assume !(~i~1 < 20); {45827#true} is VALID [2018-11-23 12:17:55,152 INFO L256 TraceCheckUtils]: 47: Hoare triple {45827#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {45827#true} is VALID [2018-11-23 12:17:55,153 INFO L273 TraceCheckUtils]: 48: Hoare triple {45827#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {45827#true} is VALID [2018-11-23 12:17:55,153 INFO L273 TraceCheckUtils]: 49: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,153 INFO L273 TraceCheckUtils]: 50: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,153 INFO L273 TraceCheckUtils]: 51: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,153 INFO L273 TraceCheckUtils]: 52: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,153 INFO L273 TraceCheckUtils]: 53: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,153 INFO L273 TraceCheckUtils]: 54: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,153 INFO L273 TraceCheckUtils]: 55: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,153 INFO L273 TraceCheckUtils]: 56: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,153 INFO L273 TraceCheckUtils]: 57: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,154 INFO L273 TraceCheckUtils]: 58: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,154 INFO L273 TraceCheckUtils]: 59: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,154 INFO L273 TraceCheckUtils]: 60: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,154 INFO L273 TraceCheckUtils]: 61: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,154 INFO L273 TraceCheckUtils]: 62: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,154 INFO L273 TraceCheckUtils]: 63: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,154 INFO L273 TraceCheckUtils]: 64: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,154 INFO L273 TraceCheckUtils]: 65: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,154 INFO L273 TraceCheckUtils]: 66: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,154 INFO L273 TraceCheckUtils]: 67: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,155 INFO L273 TraceCheckUtils]: 68: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,155 INFO L273 TraceCheckUtils]: 69: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,155 INFO L273 TraceCheckUtils]: 70: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,155 INFO L273 TraceCheckUtils]: 71: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,155 INFO L273 TraceCheckUtils]: 72: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,155 INFO L273 TraceCheckUtils]: 73: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,155 INFO L273 TraceCheckUtils]: 74: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,155 INFO L273 TraceCheckUtils]: 75: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,155 INFO L273 TraceCheckUtils]: 76: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,155 INFO L273 TraceCheckUtils]: 77: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,156 INFO L273 TraceCheckUtils]: 78: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,156 INFO L273 TraceCheckUtils]: 79: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,156 INFO L273 TraceCheckUtils]: 80: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,156 INFO L273 TraceCheckUtils]: 81: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,156 INFO L273 TraceCheckUtils]: 82: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,156 INFO L273 TraceCheckUtils]: 83: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,156 INFO L273 TraceCheckUtils]: 84: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,156 INFO L273 TraceCheckUtils]: 85: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,156 INFO L273 TraceCheckUtils]: 86: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,157 INFO L273 TraceCheckUtils]: 87: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,157 INFO L273 TraceCheckUtils]: 88: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,157 INFO L273 TraceCheckUtils]: 89: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,157 INFO L273 TraceCheckUtils]: 90: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,157 INFO L273 TraceCheckUtils]: 91: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,157 INFO L273 TraceCheckUtils]: 92: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,157 INFO L273 TraceCheckUtils]: 93: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,157 INFO L273 TraceCheckUtils]: 94: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,157 INFO L273 TraceCheckUtils]: 95: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,157 INFO L273 TraceCheckUtils]: 96: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,158 INFO L273 TraceCheckUtils]: 97: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,158 INFO L273 TraceCheckUtils]: 98: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,158 INFO L273 TraceCheckUtils]: 99: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,158 INFO L273 TraceCheckUtils]: 100: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,158 INFO L273 TraceCheckUtils]: 101: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,158 INFO L273 TraceCheckUtils]: 102: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,158 INFO L273 TraceCheckUtils]: 103: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,158 INFO L273 TraceCheckUtils]: 104: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,158 INFO L273 TraceCheckUtils]: 105: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,158 INFO L273 TraceCheckUtils]: 106: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,159 INFO L273 TraceCheckUtils]: 107: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,159 INFO L273 TraceCheckUtils]: 108: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,159 INFO L273 TraceCheckUtils]: 109: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,159 INFO L273 TraceCheckUtils]: 110: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,159 INFO L273 TraceCheckUtils]: 111: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,159 INFO L273 TraceCheckUtils]: 112: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,159 INFO L273 TraceCheckUtils]: 113: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,159 INFO L273 TraceCheckUtils]: 114: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,159 INFO L273 TraceCheckUtils]: 115: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,159 INFO L273 TraceCheckUtils]: 116: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,160 INFO L273 TraceCheckUtils]: 117: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,160 INFO L273 TraceCheckUtils]: 118: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,160 INFO L273 TraceCheckUtils]: 119: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,160 INFO L273 TraceCheckUtils]: 120: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,160 INFO L273 TraceCheckUtils]: 121: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,160 INFO L273 TraceCheckUtils]: 122: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,160 INFO L273 TraceCheckUtils]: 123: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,160 INFO L273 TraceCheckUtils]: 124: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,160 INFO L273 TraceCheckUtils]: 125: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,160 INFO L273 TraceCheckUtils]: 126: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,161 INFO L273 TraceCheckUtils]: 127: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,161 INFO L273 TraceCheckUtils]: 128: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,161 INFO L273 TraceCheckUtils]: 129: Hoare triple {45827#true} assume !(~i~0 < 20); {45827#true} is VALID [2018-11-23 12:17:55,161 INFO L273 TraceCheckUtils]: 130: Hoare triple {45827#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {45827#true} is VALID [2018-11-23 12:17:55,161 INFO L273 TraceCheckUtils]: 131: Hoare triple {45827#true} assume true; {45827#true} is VALID [2018-11-23 12:17:55,161 INFO L268 TraceCheckUtils]: 132: Hoare quadruple {45827#true} {45827#true} #77#return; {45827#true} is VALID [2018-11-23 12:17:55,161 INFO L273 TraceCheckUtils]: 133: Hoare triple {45827#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {45827#true} is VALID [2018-11-23 12:17:55,161 INFO L256 TraceCheckUtils]: 134: Hoare triple {45827#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {45827#true} is VALID [2018-11-23 12:17:55,161 INFO L273 TraceCheckUtils]: 135: Hoare triple {45827#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {45827#true} is VALID [2018-11-23 12:17:55,161 INFO L273 TraceCheckUtils]: 136: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,162 INFO L273 TraceCheckUtils]: 137: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,162 INFO L273 TraceCheckUtils]: 138: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,162 INFO L273 TraceCheckUtils]: 139: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,162 INFO L273 TraceCheckUtils]: 140: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,162 INFO L273 TraceCheckUtils]: 141: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,162 INFO L273 TraceCheckUtils]: 142: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,162 INFO L273 TraceCheckUtils]: 143: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,162 INFO L273 TraceCheckUtils]: 144: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,162 INFO L273 TraceCheckUtils]: 145: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,162 INFO L273 TraceCheckUtils]: 146: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,163 INFO L273 TraceCheckUtils]: 147: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,163 INFO L273 TraceCheckUtils]: 148: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,163 INFO L273 TraceCheckUtils]: 149: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,163 INFO L273 TraceCheckUtils]: 150: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,163 INFO L273 TraceCheckUtils]: 151: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,163 INFO L273 TraceCheckUtils]: 152: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,163 INFO L273 TraceCheckUtils]: 153: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,163 INFO L273 TraceCheckUtils]: 154: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,163 INFO L273 TraceCheckUtils]: 155: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,163 INFO L273 TraceCheckUtils]: 156: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,164 INFO L273 TraceCheckUtils]: 157: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,164 INFO L273 TraceCheckUtils]: 158: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,164 INFO L273 TraceCheckUtils]: 159: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,164 INFO L273 TraceCheckUtils]: 160: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,164 INFO L273 TraceCheckUtils]: 161: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,164 INFO L273 TraceCheckUtils]: 162: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,164 INFO L273 TraceCheckUtils]: 163: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,164 INFO L273 TraceCheckUtils]: 164: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,164 INFO L273 TraceCheckUtils]: 165: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,164 INFO L273 TraceCheckUtils]: 166: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,165 INFO L273 TraceCheckUtils]: 167: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,165 INFO L273 TraceCheckUtils]: 168: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,165 INFO L273 TraceCheckUtils]: 169: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,165 INFO L273 TraceCheckUtils]: 170: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,165 INFO L273 TraceCheckUtils]: 171: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,165 INFO L273 TraceCheckUtils]: 172: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,165 INFO L273 TraceCheckUtils]: 173: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,165 INFO L273 TraceCheckUtils]: 174: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,165 INFO L273 TraceCheckUtils]: 175: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,165 INFO L273 TraceCheckUtils]: 176: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,166 INFO L273 TraceCheckUtils]: 177: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,166 INFO L273 TraceCheckUtils]: 178: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,166 INFO L273 TraceCheckUtils]: 179: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,166 INFO L273 TraceCheckUtils]: 180: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,166 INFO L273 TraceCheckUtils]: 181: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,166 INFO L273 TraceCheckUtils]: 182: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,166 INFO L273 TraceCheckUtils]: 183: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,166 INFO L273 TraceCheckUtils]: 184: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,166 INFO L273 TraceCheckUtils]: 185: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,166 INFO L273 TraceCheckUtils]: 186: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,167 INFO L273 TraceCheckUtils]: 187: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,167 INFO L273 TraceCheckUtils]: 188: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,167 INFO L273 TraceCheckUtils]: 189: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,167 INFO L273 TraceCheckUtils]: 190: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,167 INFO L273 TraceCheckUtils]: 191: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,167 INFO L273 TraceCheckUtils]: 192: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,167 INFO L273 TraceCheckUtils]: 193: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,167 INFO L273 TraceCheckUtils]: 194: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,167 INFO L273 TraceCheckUtils]: 195: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,168 INFO L273 TraceCheckUtils]: 196: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,168 INFO L273 TraceCheckUtils]: 197: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,168 INFO L273 TraceCheckUtils]: 198: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,168 INFO L273 TraceCheckUtils]: 199: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,168 INFO L273 TraceCheckUtils]: 200: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,168 INFO L273 TraceCheckUtils]: 201: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,168 INFO L273 TraceCheckUtils]: 202: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,168 INFO L273 TraceCheckUtils]: 203: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,168 INFO L273 TraceCheckUtils]: 204: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,168 INFO L273 TraceCheckUtils]: 205: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,169 INFO L273 TraceCheckUtils]: 206: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,169 INFO L273 TraceCheckUtils]: 207: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,169 INFO L273 TraceCheckUtils]: 208: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,169 INFO L273 TraceCheckUtils]: 209: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,169 INFO L273 TraceCheckUtils]: 210: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,169 INFO L273 TraceCheckUtils]: 211: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,169 INFO L273 TraceCheckUtils]: 212: Hoare triple {45827#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45827#true} is VALID [2018-11-23 12:17:55,169 INFO L273 TraceCheckUtils]: 213: Hoare triple {45827#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45827#true} is VALID [2018-11-23 12:17:55,169 INFO L273 TraceCheckUtils]: 214: Hoare triple {45827#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45827#true} is VALID [2018-11-23 12:17:55,169 INFO L273 TraceCheckUtils]: 215: Hoare triple {45827#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45827#true} is VALID [2018-11-23 12:17:55,170 INFO L273 TraceCheckUtils]: 216: Hoare triple {45827#true} assume !(~i~0 < 20); {45827#true} is VALID [2018-11-23 12:17:55,170 INFO L273 TraceCheckUtils]: 217: Hoare triple {45827#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {45827#true} is VALID [2018-11-23 12:17:55,170 INFO L273 TraceCheckUtils]: 218: Hoare triple {45827#true} assume true; {45827#true} is VALID [2018-11-23 12:17:55,170 INFO L268 TraceCheckUtils]: 219: Hoare quadruple {45827#true} {45827#true} #79#return; {45827#true} is VALID [2018-11-23 12:17:55,170 INFO L273 TraceCheckUtils]: 220: Hoare triple {45827#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {46509#(<= main_~i~2 0)} is VALID [2018-11-23 12:17:55,172 INFO L273 TraceCheckUtils]: 221: Hoare triple {46509#(<= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {46509#(<= main_~i~2 0)} is VALID [2018-11-23 12:17:55,172 INFO L273 TraceCheckUtils]: 222: Hoare triple {46509#(<= main_~i~2 0)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45830#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:55,172 INFO L273 TraceCheckUtils]: 223: Hoare triple {45830#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45830#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:55,173 INFO L273 TraceCheckUtils]: 224: Hoare triple {45830#(<= main_~i~2 1)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45831#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:55,174 INFO L273 TraceCheckUtils]: 225: Hoare triple {45831#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45831#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:55,174 INFO L273 TraceCheckUtils]: 226: Hoare triple {45831#(<= main_~i~2 2)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45832#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:55,176 INFO L273 TraceCheckUtils]: 227: Hoare triple {45832#(<= main_~i~2 3)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45832#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:55,176 INFO L273 TraceCheckUtils]: 228: Hoare triple {45832#(<= main_~i~2 3)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45833#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:55,177 INFO L273 TraceCheckUtils]: 229: Hoare triple {45833#(<= main_~i~2 4)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45833#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:55,177 INFO L273 TraceCheckUtils]: 230: Hoare triple {45833#(<= main_~i~2 4)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45834#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:55,182 INFO L273 TraceCheckUtils]: 231: Hoare triple {45834#(<= main_~i~2 5)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45834#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:55,182 INFO L273 TraceCheckUtils]: 232: Hoare triple {45834#(<= main_~i~2 5)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45835#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:55,183 INFO L273 TraceCheckUtils]: 233: Hoare triple {45835#(<= main_~i~2 6)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45835#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:55,183 INFO L273 TraceCheckUtils]: 234: Hoare triple {45835#(<= main_~i~2 6)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45836#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:55,183 INFO L273 TraceCheckUtils]: 235: Hoare triple {45836#(<= main_~i~2 7)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45836#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:55,184 INFO L273 TraceCheckUtils]: 236: Hoare triple {45836#(<= main_~i~2 7)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45837#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:55,184 INFO L273 TraceCheckUtils]: 237: Hoare triple {45837#(<= main_~i~2 8)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45837#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:55,185 INFO L273 TraceCheckUtils]: 238: Hoare triple {45837#(<= main_~i~2 8)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45838#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:55,185 INFO L273 TraceCheckUtils]: 239: Hoare triple {45838#(<= main_~i~2 9)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45838#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:55,186 INFO L273 TraceCheckUtils]: 240: Hoare triple {45838#(<= main_~i~2 9)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45839#(<= main_~i~2 10)} is VALID [2018-11-23 12:17:55,186 INFO L273 TraceCheckUtils]: 241: Hoare triple {45839#(<= main_~i~2 10)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45839#(<= main_~i~2 10)} is VALID [2018-11-23 12:17:55,187 INFO L273 TraceCheckUtils]: 242: Hoare triple {45839#(<= main_~i~2 10)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45840#(<= main_~i~2 11)} is VALID [2018-11-23 12:17:55,188 INFO L273 TraceCheckUtils]: 243: Hoare triple {45840#(<= main_~i~2 11)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45840#(<= main_~i~2 11)} is VALID [2018-11-23 12:17:55,188 INFO L273 TraceCheckUtils]: 244: Hoare triple {45840#(<= main_~i~2 11)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45841#(<= main_~i~2 12)} is VALID [2018-11-23 12:17:55,189 INFO L273 TraceCheckUtils]: 245: Hoare triple {45841#(<= main_~i~2 12)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45841#(<= main_~i~2 12)} is VALID [2018-11-23 12:17:55,190 INFO L273 TraceCheckUtils]: 246: Hoare triple {45841#(<= main_~i~2 12)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45842#(<= main_~i~2 13)} is VALID [2018-11-23 12:17:55,190 INFO L273 TraceCheckUtils]: 247: Hoare triple {45842#(<= main_~i~2 13)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45842#(<= main_~i~2 13)} is VALID [2018-11-23 12:17:55,191 INFO L273 TraceCheckUtils]: 248: Hoare triple {45842#(<= main_~i~2 13)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45843#(<= main_~i~2 14)} is VALID [2018-11-23 12:17:55,191 INFO L273 TraceCheckUtils]: 249: Hoare triple {45843#(<= main_~i~2 14)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45843#(<= main_~i~2 14)} is VALID [2018-11-23 12:17:55,192 INFO L273 TraceCheckUtils]: 250: Hoare triple {45843#(<= main_~i~2 14)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45844#(<= main_~i~2 15)} is VALID [2018-11-23 12:17:55,193 INFO L273 TraceCheckUtils]: 251: Hoare triple {45844#(<= main_~i~2 15)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {45844#(<= main_~i~2 15)} is VALID [2018-11-23 12:17:55,193 INFO L273 TraceCheckUtils]: 252: Hoare triple {45844#(<= main_~i~2 15)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {45845#(<= main_~i~2 16)} is VALID [2018-11-23 12:17:55,194 INFO L273 TraceCheckUtils]: 253: Hoare triple {45845#(<= main_~i~2 16)} assume !(~i~2 < 19); {45828#false} is VALID [2018-11-23 12:17:55,194 INFO L273 TraceCheckUtils]: 254: Hoare triple {45828#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {45828#false} is VALID [2018-11-23 12:17:55,194 INFO L256 TraceCheckUtils]: 255: Hoare triple {45828#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {45828#false} is VALID [2018-11-23 12:17:55,195 INFO L273 TraceCheckUtils]: 256: Hoare triple {45828#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {45828#false} is VALID [2018-11-23 12:17:55,195 INFO L273 TraceCheckUtils]: 257: Hoare triple {45828#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45828#false} is VALID [2018-11-23 12:17:55,195 INFO L273 TraceCheckUtils]: 258: Hoare triple {45828#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45828#false} is VALID [2018-11-23 12:17:55,195 INFO L273 TraceCheckUtils]: 259: Hoare triple {45828#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45828#false} is VALID [2018-11-23 12:17:55,195 INFO L273 TraceCheckUtils]: 260: Hoare triple {45828#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45828#false} is VALID [2018-11-23 12:17:55,195 INFO L273 TraceCheckUtils]: 261: Hoare triple {45828#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45828#false} is VALID [2018-11-23 12:17:55,196 INFO L273 TraceCheckUtils]: 262: Hoare triple {45828#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45828#false} is VALID [2018-11-23 12:17:55,196 INFO L273 TraceCheckUtils]: 263: Hoare triple {45828#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45828#false} is VALID [2018-11-23 12:17:55,196 INFO L273 TraceCheckUtils]: 264: Hoare triple {45828#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45828#false} is VALID [2018-11-23 12:17:55,196 INFO L273 TraceCheckUtils]: 265: Hoare triple {45828#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45828#false} is VALID [2018-11-23 12:17:55,196 INFO L273 TraceCheckUtils]: 266: Hoare triple {45828#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45828#false} is VALID [2018-11-23 12:17:55,196 INFO L273 TraceCheckUtils]: 267: Hoare triple {45828#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45828#false} is VALID [2018-11-23 12:17:55,197 INFO L273 TraceCheckUtils]: 268: Hoare triple {45828#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45828#false} is VALID [2018-11-23 12:17:55,197 INFO L273 TraceCheckUtils]: 269: Hoare triple {45828#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45828#false} is VALID [2018-11-23 12:17:55,197 INFO L273 TraceCheckUtils]: 270: Hoare triple {45828#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45828#false} is VALID [2018-11-23 12:17:55,197 INFO L273 TraceCheckUtils]: 271: Hoare triple {45828#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45828#false} is VALID [2018-11-23 12:17:55,197 INFO L273 TraceCheckUtils]: 272: Hoare triple {45828#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45828#false} is VALID [2018-11-23 12:17:55,197 INFO L273 TraceCheckUtils]: 273: Hoare triple {45828#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45828#false} is VALID [2018-11-23 12:17:55,197 INFO L273 TraceCheckUtils]: 274: Hoare triple {45828#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45828#false} is VALID [2018-11-23 12:17:55,198 INFO L273 TraceCheckUtils]: 275: Hoare triple {45828#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45828#false} is VALID [2018-11-23 12:17:55,198 INFO L273 TraceCheckUtils]: 276: Hoare triple {45828#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45828#false} is VALID [2018-11-23 12:17:55,198 INFO L273 TraceCheckUtils]: 277: Hoare triple {45828#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45828#false} is VALID [2018-11-23 12:17:55,198 INFO L273 TraceCheckUtils]: 278: Hoare triple {45828#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45828#false} is VALID [2018-11-23 12:17:55,198 INFO L273 TraceCheckUtils]: 279: Hoare triple {45828#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45828#false} is VALID [2018-11-23 12:17:55,198 INFO L273 TraceCheckUtils]: 280: Hoare triple {45828#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45828#false} is VALID [2018-11-23 12:17:55,198 INFO L273 TraceCheckUtils]: 281: Hoare triple {45828#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45828#false} is VALID [2018-11-23 12:17:55,198 INFO L273 TraceCheckUtils]: 282: Hoare triple {45828#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45828#false} is VALID [2018-11-23 12:17:55,198 INFO L273 TraceCheckUtils]: 283: Hoare triple {45828#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45828#false} is VALID [2018-11-23 12:17:55,198 INFO L273 TraceCheckUtils]: 284: Hoare triple {45828#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45828#false} is VALID [2018-11-23 12:17:55,199 INFO L273 TraceCheckUtils]: 285: Hoare triple {45828#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45828#false} is VALID [2018-11-23 12:17:55,199 INFO L273 TraceCheckUtils]: 286: Hoare triple {45828#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45828#false} is VALID [2018-11-23 12:17:55,199 INFO L273 TraceCheckUtils]: 287: Hoare triple {45828#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45828#false} is VALID [2018-11-23 12:17:55,199 INFO L273 TraceCheckUtils]: 288: Hoare triple {45828#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45828#false} is VALID [2018-11-23 12:17:55,199 INFO L273 TraceCheckUtils]: 289: Hoare triple {45828#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45828#false} is VALID [2018-11-23 12:17:55,199 INFO L273 TraceCheckUtils]: 290: Hoare triple {45828#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45828#false} is VALID [2018-11-23 12:17:55,199 INFO L273 TraceCheckUtils]: 291: Hoare triple {45828#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45828#false} is VALID [2018-11-23 12:17:55,199 INFO L273 TraceCheckUtils]: 292: Hoare triple {45828#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45828#false} is VALID [2018-11-23 12:17:55,199 INFO L273 TraceCheckUtils]: 293: Hoare triple {45828#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45828#false} is VALID [2018-11-23 12:17:55,199 INFO L273 TraceCheckUtils]: 294: Hoare triple {45828#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45828#false} is VALID [2018-11-23 12:17:55,200 INFO L273 TraceCheckUtils]: 295: Hoare triple {45828#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45828#false} is VALID [2018-11-23 12:17:55,200 INFO L273 TraceCheckUtils]: 296: Hoare triple {45828#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45828#false} is VALID [2018-11-23 12:17:55,200 INFO L273 TraceCheckUtils]: 297: Hoare triple {45828#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45828#false} is VALID [2018-11-23 12:17:55,200 INFO L273 TraceCheckUtils]: 298: Hoare triple {45828#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45828#false} is VALID [2018-11-23 12:17:55,200 INFO L273 TraceCheckUtils]: 299: Hoare triple {45828#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45828#false} is VALID [2018-11-23 12:17:55,200 INFO L273 TraceCheckUtils]: 300: Hoare triple {45828#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45828#false} is VALID [2018-11-23 12:17:55,200 INFO L273 TraceCheckUtils]: 301: Hoare triple {45828#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45828#false} is VALID [2018-11-23 12:17:55,200 INFO L273 TraceCheckUtils]: 302: Hoare triple {45828#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45828#false} is VALID [2018-11-23 12:17:55,200 INFO L273 TraceCheckUtils]: 303: Hoare triple {45828#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45828#false} is VALID [2018-11-23 12:17:55,200 INFO L273 TraceCheckUtils]: 304: Hoare triple {45828#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45828#false} is VALID [2018-11-23 12:17:55,201 INFO L273 TraceCheckUtils]: 305: Hoare triple {45828#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45828#false} is VALID [2018-11-23 12:17:55,201 INFO L273 TraceCheckUtils]: 306: Hoare triple {45828#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45828#false} is VALID [2018-11-23 12:17:55,201 INFO L273 TraceCheckUtils]: 307: Hoare triple {45828#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45828#false} is VALID [2018-11-23 12:17:55,201 INFO L273 TraceCheckUtils]: 308: Hoare triple {45828#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45828#false} is VALID [2018-11-23 12:17:55,201 INFO L273 TraceCheckUtils]: 309: Hoare triple {45828#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45828#false} is VALID [2018-11-23 12:17:55,201 INFO L273 TraceCheckUtils]: 310: Hoare triple {45828#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45828#false} is VALID [2018-11-23 12:17:55,201 INFO L273 TraceCheckUtils]: 311: Hoare triple {45828#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45828#false} is VALID [2018-11-23 12:17:55,201 INFO L273 TraceCheckUtils]: 312: Hoare triple {45828#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45828#false} is VALID [2018-11-23 12:17:55,201 INFO L273 TraceCheckUtils]: 313: Hoare triple {45828#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45828#false} is VALID [2018-11-23 12:17:55,202 INFO L273 TraceCheckUtils]: 314: Hoare triple {45828#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45828#false} is VALID [2018-11-23 12:17:55,202 INFO L273 TraceCheckUtils]: 315: Hoare triple {45828#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45828#false} is VALID [2018-11-23 12:17:55,202 INFO L273 TraceCheckUtils]: 316: Hoare triple {45828#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45828#false} is VALID [2018-11-23 12:17:55,202 INFO L273 TraceCheckUtils]: 317: Hoare triple {45828#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45828#false} is VALID [2018-11-23 12:17:55,202 INFO L273 TraceCheckUtils]: 318: Hoare triple {45828#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45828#false} is VALID [2018-11-23 12:17:55,202 INFO L273 TraceCheckUtils]: 319: Hoare triple {45828#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45828#false} is VALID [2018-11-23 12:17:55,202 INFO L273 TraceCheckUtils]: 320: Hoare triple {45828#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45828#false} is VALID [2018-11-23 12:17:55,202 INFO L273 TraceCheckUtils]: 321: Hoare triple {45828#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45828#false} is VALID [2018-11-23 12:17:55,202 INFO L273 TraceCheckUtils]: 322: Hoare triple {45828#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45828#false} is VALID [2018-11-23 12:17:55,202 INFO L273 TraceCheckUtils]: 323: Hoare triple {45828#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45828#false} is VALID [2018-11-23 12:17:55,203 INFO L273 TraceCheckUtils]: 324: Hoare triple {45828#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45828#false} is VALID [2018-11-23 12:17:55,203 INFO L273 TraceCheckUtils]: 325: Hoare triple {45828#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45828#false} is VALID [2018-11-23 12:17:55,203 INFO L273 TraceCheckUtils]: 326: Hoare triple {45828#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45828#false} is VALID [2018-11-23 12:17:55,203 INFO L273 TraceCheckUtils]: 327: Hoare triple {45828#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45828#false} is VALID [2018-11-23 12:17:55,203 INFO L273 TraceCheckUtils]: 328: Hoare triple {45828#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45828#false} is VALID [2018-11-23 12:17:55,203 INFO L273 TraceCheckUtils]: 329: Hoare triple {45828#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45828#false} is VALID [2018-11-23 12:17:55,203 INFO L273 TraceCheckUtils]: 330: Hoare triple {45828#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45828#false} is VALID [2018-11-23 12:17:55,203 INFO L273 TraceCheckUtils]: 331: Hoare triple {45828#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45828#false} is VALID [2018-11-23 12:17:55,203 INFO L273 TraceCheckUtils]: 332: Hoare triple {45828#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45828#false} is VALID [2018-11-23 12:17:55,203 INFO L273 TraceCheckUtils]: 333: Hoare triple {45828#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {45828#false} is VALID [2018-11-23 12:17:55,204 INFO L273 TraceCheckUtils]: 334: Hoare triple {45828#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {45828#false} is VALID [2018-11-23 12:17:55,204 INFO L273 TraceCheckUtils]: 335: Hoare triple {45828#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {45828#false} is VALID [2018-11-23 12:17:55,204 INFO L273 TraceCheckUtils]: 336: Hoare triple {45828#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {45828#false} is VALID [2018-11-23 12:17:55,204 INFO L273 TraceCheckUtils]: 337: Hoare triple {45828#false} assume !(~i~0 < 20); {45828#false} is VALID [2018-11-23 12:17:55,204 INFO L273 TraceCheckUtils]: 338: Hoare triple {45828#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {45828#false} is VALID [2018-11-23 12:17:55,204 INFO L273 TraceCheckUtils]: 339: Hoare triple {45828#false} assume true; {45828#false} is VALID [2018-11-23 12:17:55,204 INFO L268 TraceCheckUtils]: 340: Hoare quadruple {45828#false} {45828#false} #81#return; {45828#false} is VALID [2018-11-23 12:17:55,204 INFO L273 TraceCheckUtils]: 341: Hoare triple {45828#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {45828#false} is VALID [2018-11-23 12:17:55,204 INFO L273 TraceCheckUtils]: 342: Hoare triple {45828#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {45828#false} is VALID [2018-11-23 12:17:55,204 INFO L273 TraceCheckUtils]: 343: Hoare triple {45828#false} assume !false; {45828#false} is VALID [2018-11-23 12:17:55,245 INFO L134 CoverageAnalysis]: Checked inductivity of 7931 backedges. 3290 proven. 256 refuted. 0 times theorem prover too weak. 4385 trivial. 0 not checked. [2018-11-23 12:17:55,264 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:17:55,264 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 19] total 20 [2018-11-23 12:17:55,265 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 344 [2018-11-23 12:17:55,265 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:17:55,265 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states. [2018-11-23 12:17:55,343 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:17:55,343 INFO L459 AbstractCegarLoop]: Interpolant automaton has 20 states [2018-11-23 12:17:55,343 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2018-11-23 12:17:55,344 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=190, Invalid=190, Unknown=0, NotChecked=0, Total=380 [2018-11-23 12:17:55,344 INFO L87 Difference]: Start difference. First operand 175 states and 199 transitions. Second operand 20 states. [2018-11-23 12:17:55,897 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:55,897 INFO L93 Difference]: Finished difference Result 269 states and 314 transitions. [2018-11-23 12:17:55,897 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2018-11-23 12:17:55,897 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 344 [2018-11-23 12:17:55,897 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:17:55,898 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2018-11-23 12:17:55,898 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 83 transitions. [2018-11-23 12:17:55,898 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2018-11-23 12:17:55,899 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 83 transitions. [2018-11-23 12:17:55,899 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states and 83 transitions. [2018-11-23 12:17:55,976 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:17:55,980 INFO L225 Difference]: With dead ends: 269 [2018-11-23 12:17:55,980 INFO L226 Difference]: Without dead ends: 178 [2018-11-23 12:17:55,980 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 362 GetRequests, 344 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 30 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=190, Invalid=190, Unknown=0, NotChecked=0, Total=380 [2018-11-23 12:17:55,981 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 178 states. [2018-11-23 12:17:56,089 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 178 to 177. [2018-11-23 12:17:56,090 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:17:56,090 INFO L82 GeneralOperation]: Start isEquivalent. First operand 178 states. Second operand 177 states. [2018-11-23 12:17:56,090 INFO L74 IsIncluded]: Start isIncluded. First operand 178 states. Second operand 177 states. [2018-11-23 12:17:56,090 INFO L87 Difference]: Start difference. First operand 178 states. Second operand 177 states. [2018-11-23 12:17:56,093 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:56,094 INFO L93 Difference]: Finished difference Result 178 states and 202 transitions. [2018-11-23 12:17:56,094 INFO L276 IsEmpty]: Start isEmpty. Operand 178 states and 202 transitions. [2018-11-23 12:17:56,094 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:56,094 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:56,094 INFO L74 IsIncluded]: Start isIncluded. First operand 177 states. Second operand 178 states. [2018-11-23 12:17:56,094 INFO L87 Difference]: Start difference. First operand 177 states. Second operand 178 states. [2018-11-23 12:17:56,097 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:56,097 INFO L93 Difference]: Finished difference Result 178 states and 202 transitions. [2018-11-23 12:17:56,097 INFO L276 IsEmpty]: Start isEmpty. Operand 178 states and 202 transitions. [2018-11-23 12:17:56,097 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:56,097 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:56,098 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:17:56,098 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:17:56,098 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 177 states. [2018-11-23 12:17:56,100 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 177 states to 177 states and 201 transitions. [2018-11-23 12:17:56,101 INFO L78 Accepts]: Start accepts. Automaton has 177 states and 201 transitions. Word has length 344 [2018-11-23 12:17:56,101 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:17:56,101 INFO L480 AbstractCegarLoop]: Abstraction has 177 states and 201 transitions. [2018-11-23 12:17:56,101 INFO L481 AbstractCegarLoop]: Interpolant automaton has 20 states. [2018-11-23 12:17:56,101 INFO L276 IsEmpty]: Start isEmpty. Operand 177 states and 201 transitions. [2018-11-23 12:17:56,103 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 347 [2018-11-23 12:17:56,103 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:17:56,104 INFO L402 BasicCegarLoop]: trace histogram [60, 60, 60, 60, 20, 20, 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] [2018-11-23 12:17:56,104 INFO L423 AbstractCegarLoop]: === Iteration 44 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:17:56,104 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:17:56,105 INFO L82 PathProgramCache]: Analyzing trace with hash 908962957, now seen corresponding path program 41 times [2018-11-23 12:17:56,105 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:17:56,105 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:17:56,105 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:56,106 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:17:56,106 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:56,164 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:56,641 INFO L256 TraceCheckUtils]: 0: Hoare triple {47839#true} call ULTIMATE.init(); {47839#true} is VALID [2018-11-23 12:17:56,642 INFO L273 TraceCheckUtils]: 1: Hoare triple {47839#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {47839#true} is VALID [2018-11-23 12:17:56,642 INFO L273 TraceCheckUtils]: 2: Hoare triple {47839#true} assume true; {47839#true} is VALID [2018-11-23 12:17:56,642 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {47839#true} {47839#true} #73#return; {47839#true} is VALID [2018-11-23 12:17:56,642 INFO L256 TraceCheckUtils]: 4: Hoare triple {47839#true} call #t~ret14 := main(); {47839#true} is VALID [2018-11-23 12:17:56,642 INFO L273 TraceCheckUtils]: 5: Hoare triple {47839#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {47839#true} is VALID [2018-11-23 12:17:56,643 INFO L273 TraceCheckUtils]: 6: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:17:56,643 INFO L273 TraceCheckUtils]: 7: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:17:56,643 INFO L273 TraceCheckUtils]: 8: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:17:56,643 INFO L273 TraceCheckUtils]: 9: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:17:56,643 INFO L273 TraceCheckUtils]: 10: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:17:56,643 INFO L273 TraceCheckUtils]: 11: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:17:56,644 INFO L273 TraceCheckUtils]: 12: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:17:56,644 INFO L273 TraceCheckUtils]: 13: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:17:56,644 INFO L273 TraceCheckUtils]: 14: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:17:56,644 INFO L273 TraceCheckUtils]: 15: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:17:56,644 INFO L273 TraceCheckUtils]: 16: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:17:56,645 INFO L273 TraceCheckUtils]: 17: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:17:56,645 INFO L273 TraceCheckUtils]: 18: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:17:56,645 INFO L273 TraceCheckUtils]: 19: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:17:56,645 INFO L273 TraceCheckUtils]: 20: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:17:56,645 INFO L273 TraceCheckUtils]: 21: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:17:56,645 INFO L273 TraceCheckUtils]: 22: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:17:56,645 INFO L273 TraceCheckUtils]: 23: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:17:56,645 INFO L273 TraceCheckUtils]: 24: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:17:56,645 INFO L273 TraceCheckUtils]: 25: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:17:56,646 INFO L273 TraceCheckUtils]: 26: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:17:56,646 INFO L273 TraceCheckUtils]: 27: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:17:56,646 INFO L273 TraceCheckUtils]: 28: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:17:56,646 INFO L273 TraceCheckUtils]: 29: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:17:56,646 INFO L273 TraceCheckUtils]: 30: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:17:56,646 INFO L273 TraceCheckUtils]: 31: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:17:56,646 INFO L273 TraceCheckUtils]: 32: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:17:56,646 INFO L273 TraceCheckUtils]: 33: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:17:56,646 INFO L273 TraceCheckUtils]: 34: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:17:56,646 INFO L273 TraceCheckUtils]: 35: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:17:56,647 INFO L273 TraceCheckUtils]: 36: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:17:56,647 INFO L273 TraceCheckUtils]: 37: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:17:56,647 INFO L273 TraceCheckUtils]: 38: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:17:56,647 INFO L273 TraceCheckUtils]: 39: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:17:56,647 INFO L273 TraceCheckUtils]: 40: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:17:56,647 INFO L273 TraceCheckUtils]: 41: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:17:56,647 INFO L273 TraceCheckUtils]: 42: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:17:56,647 INFO L273 TraceCheckUtils]: 43: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:17:56,647 INFO L273 TraceCheckUtils]: 44: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:17:56,647 INFO L273 TraceCheckUtils]: 45: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:17:56,648 INFO L273 TraceCheckUtils]: 46: Hoare triple {47839#true} assume !(~i~1 < 20); {47839#true} is VALID [2018-11-23 12:17:56,648 INFO L256 TraceCheckUtils]: 47: Hoare triple {47839#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {47839#true} is VALID [2018-11-23 12:17:56,648 INFO L273 TraceCheckUtils]: 48: Hoare triple {47839#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {47839#true} is VALID [2018-11-23 12:17:56,648 INFO L273 TraceCheckUtils]: 49: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,648 INFO L273 TraceCheckUtils]: 50: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,648 INFO L273 TraceCheckUtils]: 51: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,648 INFO L273 TraceCheckUtils]: 52: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,648 INFO L273 TraceCheckUtils]: 53: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,648 INFO L273 TraceCheckUtils]: 54: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,648 INFO L273 TraceCheckUtils]: 55: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,649 INFO L273 TraceCheckUtils]: 56: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,649 INFO L273 TraceCheckUtils]: 57: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,649 INFO L273 TraceCheckUtils]: 58: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,649 INFO L273 TraceCheckUtils]: 59: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,649 INFO L273 TraceCheckUtils]: 60: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,649 INFO L273 TraceCheckUtils]: 61: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,649 INFO L273 TraceCheckUtils]: 62: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,649 INFO L273 TraceCheckUtils]: 63: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,649 INFO L273 TraceCheckUtils]: 64: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,649 INFO L273 TraceCheckUtils]: 65: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,650 INFO L273 TraceCheckUtils]: 66: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,650 INFO L273 TraceCheckUtils]: 67: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,650 INFO L273 TraceCheckUtils]: 68: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,650 INFO L273 TraceCheckUtils]: 69: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,650 INFO L273 TraceCheckUtils]: 70: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,650 INFO L273 TraceCheckUtils]: 71: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,650 INFO L273 TraceCheckUtils]: 72: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,650 INFO L273 TraceCheckUtils]: 73: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,650 INFO L273 TraceCheckUtils]: 74: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,651 INFO L273 TraceCheckUtils]: 75: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,651 INFO L273 TraceCheckUtils]: 76: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,651 INFO L273 TraceCheckUtils]: 77: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,651 INFO L273 TraceCheckUtils]: 78: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,651 INFO L273 TraceCheckUtils]: 79: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,651 INFO L273 TraceCheckUtils]: 80: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,651 INFO L273 TraceCheckUtils]: 81: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,651 INFO L273 TraceCheckUtils]: 82: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,651 INFO L273 TraceCheckUtils]: 83: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,651 INFO L273 TraceCheckUtils]: 84: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,652 INFO L273 TraceCheckUtils]: 85: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,652 INFO L273 TraceCheckUtils]: 86: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,652 INFO L273 TraceCheckUtils]: 87: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,652 INFO L273 TraceCheckUtils]: 88: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,652 INFO L273 TraceCheckUtils]: 89: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,652 INFO L273 TraceCheckUtils]: 90: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,652 INFO L273 TraceCheckUtils]: 91: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,652 INFO L273 TraceCheckUtils]: 92: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,652 INFO L273 TraceCheckUtils]: 93: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,652 INFO L273 TraceCheckUtils]: 94: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,653 INFO L273 TraceCheckUtils]: 95: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,653 INFO L273 TraceCheckUtils]: 96: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,653 INFO L273 TraceCheckUtils]: 97: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,653 INFO L273 TraceCheckUtils]: 98: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,653 INFO L273 TraceCheckUtils]: 99: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,653 INFO L273 TraceCheckUtils]: 100: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,653 INFO L273 TraceCheckUtils]: 101: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,653 INFO L273 TraceCheckUtils]: 102: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,653 INFO L273 TraceCheckUtils]: 103: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,653 INFO L273 TraceCheckUtils]: 104: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,654 INFO L273 TraceCheckUtils]: 105: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,654 INFO L273 TraceCheckUtils]: 106: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,654 INFO L273 TraceCheckUtils]: 107: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,654 INFO L273 TraceCheckUtils]: 108: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,654 INFO L273 TraceCheckUtils]: 109: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,654 INFO L273 TraceCheckUtils]: 110: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,654 INFO L273 TraceCheckUtils]: 111: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,654 INFO L273 TraceCheckUtils]: 112: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,654 INFO L273 TraceCheckUtils]: 113: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,654 INFO L273 TraceCheckUtils]: 114: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,655 INFO L273 TraceCheckUtils]: 115: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,655 INFO L273 TraceCheckUtils]: 116: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,655 INFO L273 TraceCheckUtils]: 117: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,655 INFO L273 TraceCheckUtils]: 118: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,655 INFO L273 TraceCheckUtils]: 119: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,655 INFO L273 TraceCheckUtils]: 120: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,655 INFO L273 TraceCheckUtils]: 121: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,655 INFO L273 TraceCheckUtils]: 122: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,655 INFO L273 TraceCheckUtils]: 123: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,655 INFO L273 TraceCheckUtils]: 124: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,656 INFO L273 TraceCheckUtils]: 125: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,656 INFO L273 TraceCheckUtils]: 126: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,656 INFO L273 TraceCheckUtils]: 127: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,656 INFO L273 TraceCheckUtils]: 128: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,656 INFO L273 TraceCheckUtils]: 129: Hoare triple {47839#true} assume !(~i~0 < 20); {47839#true} is VALID [2018-11-23 12:17:56,656 INFO L273 TraceCheckUtils]: 130: Hoare triple {47839#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {47839#true} is VALID [2018-11-23 12:17:56,656 INFO L273 TraceCheckUtils]: 131: Hoare triple {47839#true} assume true; {47839#true} is VALID [2018-11-23 12:17:56,656 INFO L268 TraceCheckUtils]: 132: Hoare quadruple {47839#true} {47839#true} #77#return; {47839#true} is VALID [2018-11-23 12:17:56,656 INFO L273 TraceCheckUtils]: 133: Hoare triple {47839#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {47839#true} is VALID [2018-11-23 12:17:56,656 INFO L256 TraceCheckUtils]: 134: Hoare triple {47839#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {47839#true} is VALID [2018-11-23 12:17:56,657 INFO L273 TraceCheckUtils]: 135: Hoare triple {47839#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {47839#true} is VALID [2018-11-23 12:17:56,657 INFO L273 TraceCheckUtils]: 136: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,657 INFO L273 TraceCheckUtils]: 137: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,657 INFO L273 TraceCheckUtils]: 138: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,657 INFO L273 TraceCheckUtils]: 139: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,657 INFO L273 TraceCheckUtils]: 140: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,657 INFO L273 TraceCheckUtils]: 141: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,657 INFO L273 TraceCheckUtils]: 142: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,657 INFO L273 TraceCheckUtils]: 143: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,658 INFO L273 TraceCheckUtils]: 144: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,658 INFO L273 TraceCheckUtils]: 145: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,658 INFO L273 TraceCheckUtils]: 146: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,658 INFO L273 TraceCheckUtils]: 147: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,658 INFO L273 TraceCheckUtils]: 148: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,658 INFO L273 TraceCheckUtils]: 149: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,658 INFO L273 TraceCheckUtils]: 150: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,658 INFO L273 TraceCheckUtils]: 151: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,658 INFO L273 TraceCheckUtils]: 152: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,658 INFO L273 TraceCheckUtils]: 153: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,659 INFO L273 TraceCheckUtils]: 154: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,659 INFO L273 TraceCheckUtils]: 155: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,659 INFO L273 TraceCheckUtils]: 156: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,659 INFO L273 TraceCheckUtils]: 157: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,659 INFO L273 TraceCheckUtils]: 158: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,659 INFO L273 TraceCheckUtils]: 159: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,659 INFO L273 TraceCheckUtils]: 160: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,659 INFO L273 TraceCheckUtils]: 161: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,659 INFO L273 TraceCheckUtils]: 162: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,659 INFO L273 TraceCheckUtils]: 163: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,660 INFO L273 TraceCheckUtils]: 164: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,660 INFO L273 TraceCheckUtils]: 165: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,660 INFO L273 TraceCheckUtils]: 166: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,660 INFO L273 TraceCheckUtils]: 167: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,660 INFO L273 TraceCheckUtils]: 168: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,660 INFO L273 TraceCheckUtils]: 169: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,660 INFO L273 TraceCheckUtils]: 170: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,660 INFO L273 TraceCheckUtils]: 171: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,660 INFO L273 TraceCheckUtils]: 172: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,660 INFO L273 TraceCheckUtils]: 173: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,661 INFO L273 TraceCheckUtils]: 174: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,661 INFO L273 TraceCheckUtils]: 175: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,661 INFO L273 TraceCheckUtils]: 176: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,661 INFO L273 TraceCheckUtils]: 177: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,661 INFO L273 TraceCheckUtils]: 178: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,661 INFO L273 TraceCheckUtils]: 179: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,661 INFO L273 TraceCheckUtils]: 180: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,661 INFO L273 TraceCheckUtils]: 181: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,661 INFO L273 TraceCheckUtils]: 182: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,661 INFO L273 TraceCheckUtils]: 183: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,662 INFO L273 TraceCheckUtils]: 184: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,662 INFO L273 TraceCheckUtils]: 185: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,662 INFO L273 TraceCheckUtils]: 186: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,662 INFO L273 TraceCheckUtils]: 187: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,662 INFO L273 TraceCheckUtils]: 188: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,662 INFO L273 TraceCheckUtils]: 189: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,662 INFO L273 TraceCheckUtils]: 190: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,662 INFO L273 TraceCheckUtils]: 191: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,662 INFO L273 TraceCheckUtils]: 192: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,662 INFO L273 TraceCheckUtils]: 193: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,663 INFO L273 TraceCheckUtils]: 194: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,663 INFO L273 TraceCheckUtils]: 195: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,663 INFO L273 TraceCheckUtils]: 196: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,663 INFO L273 TraceCheckUtils]: 197: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,663 INFO L273 TraceCheckUtils]: 198: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,663 INFO L273 TraceCheckUtils]: 199: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,663 INFO L273 TraceCheckUtils]: 200: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,663 INFO L273 TraceCheckUtils]: 201: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,663 INFO L273 TraceCheckUtils]: 202: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,663 INFO L273 TraceCheckUtils]: 203: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,664 INFO L273 TraceCheckUtils]: 204: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,664 INFO L273 TraceCheckUtils]: 205: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,664 INFO L273 TraceCheckUtils]: 206: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,664 INFO L273 TraceCheckUtils]: 207: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,664 INFO L273 TraceCheckUtils]: 208: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,664 INFO L273 TraceCheckUtils]: 209: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,664 INFO L273 TraceCheckUtils]: 210: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,664 INFO L273 TraceCheckUtils]: 211: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,664 INFO L273 TraceCheckUtils]: 212: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,664 INFO L273 TraceCheckUtils]: 213: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,665 INFO L273 TraceCheckUtils]: 214: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,665 INFO L273 TraceCheckUtils]: 215: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,665 INFO L273 TraceCheckUtils]: 216: Hoare triple {47839#true} assume !(~i~0 < 20); {47839#true} is VALID [2018-11-23 12:17:56,665 INFO L273 TraceCheckUtils]: 217: Hoare triple {47839#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {47839#true} is VALID [2018-11-23 12:17:56,665 INFO L273 TraceCheckUtils]: 218: Hoare triple {47839#true} assume true; {47839#true} is VALID [2018-11-23 12:17:56,665 INFO L268 TraceCheckUtils]: 219: Hoare quadruple {47839#true} {47839#true} #79#return; {47839#true} is VALID [2018-11-23 12:17:56,665 INFO L273 TraceCheckUtils]: 220: Hoare triple {47839#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {47841#(= main_~i~2 0)} is VALID [2018-11-23 12:17:56,666 INFO L273 TraceCheckUtils]: 221: Hoare triple {47841#(= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47841#(= main_~i~2 0)} is VALID [2018-11-23 12:17:56,666 INFO L273 TraceCheckUtils]: 222: Hoare triple {47841#(= main_~i~2 0)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47842#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:56,666 INFO L273 TraceCheckUtils]: 223: Hoare triple {47842#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47842#(<= main_~i~2 1)} is VALID [2018-11-23 12:17:56,667 INFO L273 TraceCheckUtils]: 224: Hoare triple {47842#(<= main_~i~2 1)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47843#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:56,667 INFO L273 TraceCheckUtils]: 225: Hoare triple {47843#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47843#(<= main_~i~2 2)} is VALID [2018-11-23 12:17:56,668 INFO L273 TraceCheckUtils]: 226: Hoare triple {47843#(<= main_~i~2 2)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47844#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:56,668 INFO L273 TraceCheckUtils]: 227: Hoare triple {47844#(<= main_~i~2 3)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47844#(<= main_~i~2 3)} is VALID [2018-11-23 12:17:56,668 INFO L273 TraceCheckUtils]: 228: Hoare triple {47844#(<= main_~i~2 3)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47845#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:56,669 INFO L273 TraceCheckUtils]: 229: Hoare triple {47845#(<= main_~i~2 4)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47845#(<= main_~i~2 4)} is VALID [2018-11-23 12:17:56,669 INFO L273 TraceCheckUtils]: 230: Hoare triple {47845#(<= main_~i~2 4)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47846#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:56,670 INFO L273 TraceCheckUtils]: 231: Hoare triple {47846#(<= main_~i~2 5)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47846#(<= main_~i~2 5)} is VALID [2018-11-23 12:17:56,670 INFO L273 TraceCheckUtils]: 232: Hoare triple {47846#(<= main_~i~2 5)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47847#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:56,671 INFO L273 TraceCheckUtils]: 233: Hoare triple {47847#(<= main_~i~2 6)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47847#(<= main_~i~2 6)} is VALID [2018-11-23 12:17:56,672 INFO L273 TraceCheckUtils]: 234: Hoare triple {47847#(<= main_~i~2 6)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47848#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:56,672 INFO L273 TraceCheckUtils]: 235: Hoare triple {47848#(<= main_~i~2 7)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47848#(<= main_~i~2 7)} is VALID [2018-11-23 12:17:56,673 INFO L273 TraceCheckUtils]: 236: Hoare triple {47848#(<= main_~i~2 7)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47849#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:56,673 INFO L273 TraceCheckUtils]: 237: Hoare triple {47849#(<= main_~i~2 8)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47849#(<= main_~i~2 8)} is VALID [2018-11-23 12:17:56,674 INFO L273 TraceCheckUtils]: 238: Hoare triple {47849#(<= main_~i~2 8)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47850#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:56,675 INFO L273 TraceCheckUtils]: 239: Hoare triple {47850#(<= main_~i~2 9)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47850#(<= main_~i~2 9)} is VALID [2018-11-23 12:17:56,675 INFO L273 TraceCheckUtils]: 240: Hoare triple {47850#(<= main_~i~2 9)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47851#(<= main_~i~2 10)} is VALID [2018-11-23 12:17:56,676 INFO L273 TraceCheckUtils]: 241: Hoare triple {47851#(<= main_~i~2 10)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47851#(<= main_~i~2 10)} is VALID [2018-11-23 12:17:56,676 INFO L273 TraceCheckUtils]: 242: Hoare triple {47851#(<= main_~i~2 10)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47852#(<= main_~i~2 11)} is VALID [2018-11-23 12:17:56,677 INFO L273 TraceCheckUtils]: 243: Hoare triple {47852#(<= main_~i~2 11)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47852#(<= main_~i~2 11)} is VALID [2018-11-23 12:17:56,678 INFO L273 TraceCheckUtils]: 244: Hoare triple {47852#(<= main_~i~2 11)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47853#(<= main_~i~2 12)} is VALID [2018-11-23 12:17:56,678 INFO L273 TraceCheckUtils]: 245: Hoare triple {47853#(<= main_~i~2 12)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47853#(<= main_~i~2 12)} is VALID [2018-11-23 12:17:56,679 INFO L273 TraceCheckUtils]: 246: Hoare triple {47853#(<= main_~i~2 12)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47854#(<= main_~i~2 13)} is VALID [2018-11-23 12:17:56,679 INFO L273 TraceCheckUtils]: 247: Hoare triple {47854#(<= main_~i~2 13)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47854#(<= main_~i~2 13)} is VALID [2018-11-23 12:17:56,680 INFO L273 TraceCheckUtils]: 248: Hoare triple {47854#(<= main_~i~2 13)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47855#(<= main_~i~2 14)} is VALID [2018-11-23 12:17:56,681 INFO L273 TraceCheckUtils]: 249: Hoare triple {47855#(<= main_~i~2 14)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47855#(<= main_~i~2 14)} is VALID [2018-11-23 12:17:56,681 INFO L273 TraceCheckUtils]: 250: Hoare triple {47855#(<= main_~i~2 14)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47856#(<= main_~i~2 15)} is VALID [2018-11-23 12:17:56,682 INFO L273 TraceCheckUtils]: 251: Hoare triple {47856#(<= main_~i~2 15)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47856#(<= main_~i~2 15)} is VALID [2018-11-23 12:17:56,683 INFO L273 TraceCheckUtils]: 252: Hoare triple {47856#(<= main_~i~2 15)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47857#(<= main_~i~2 16)} is VALID [2018-11-23 12:17:56,683 INFO L273 TraceCheckUtils]: 253: Hoare triple {47857#(<= main_~i~2 16)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47857#(<= main_~i~2 16)} is VALID [2018-11-23 12:17:56,684 INFO L273 TraceCheckUtils]: 254: Hoare triple {47857#(<= main_~i~2 16)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47858#(<= main_~i~2 17)} is VALID [2018-11-23 12:17:56,684 INFO L273 TraceCheckUtils]: 255: Hoare triple {47858#(<= main_~i~2 17)} assume !(~i~2 < 19); {47840#false} is VALID [2018-11-23 12:17:56,685 INFO L273 TraceCheckUtils]: 256: Hoare triple {47840#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {47840#false} is VALID [2018-11-23 12:17:56,685 INFO L256 TraceCheckUtils]: 257: Hoare triple {47840#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {47839#true} is VALID [2018-11-23 12:17:56,685 INFO L273 TraceCheckUtils]: 258: Hoare triple {47839#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {47839#true} is VALID [2018-11-23 12:17:56,685 INFO L273 TraceCheckUtils]: 259: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,685 INFO L273 TraceCheckUtils]: 260: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,686 INFO L273 TraceCheckUtils]: 261: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,686 INFO L273 TraceCheckUtils]: 262: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,686 INFO L273 TraceCheckUtils]: 263: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,686 INFO L273 TraceCheckUtils]: 264: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,686 INFO L273 TraceCheckUtils]: 265: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,686 INFO L273 TraceCheckUtils]: 266: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,687 INFO L273 TraceCheckUtils]: 267: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,687 INFO L273 TraceCheckUtils]: 268: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,687 INFO L273 TraceCheckUtils]: 269: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,687 INFO L273 TraceCheckUtils]: 270: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,687 INFO L273 TraceCheckUtils]: 271: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,687 INFO L273 TraceCheckUtils]: 272: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,688 INFO L273 TraceCheckUtils]: 273: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,688 INFO L273 TraceCheckUtils]: 274: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,688 INFO L273 TraceCheckUtils]: 275: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,688 INFO L273 TraceCheckUtils]: 276: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,688 INFO L273 TraceCheckUtils]: 277: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,688 INFO L273 TraceCheckUtils]: 278: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,688 INFO L273 TraceCheckUtils]: 279: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,688 INFO L273 TraceCheckUtils]: 280: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,689 INFO L273 TraceCheckUtils]: 281: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,689 INFO L273 TraceCheckUtils]: 282: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,689 INFO L273 TraceCheckUtils]: 283: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,689 INFO L273 TraceCheckUtils]: 284: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,689 INFO L273 TraceCheckUtils]: 285: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,689 INFO L273 TraceCheckUtils]: 286: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,689 INFO L273 TraceCheckUtils]: 287: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,689 INFO L273 TraceCheckUtils]: 288: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,689 INFO L273 TraceCheckUtils]: 289: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,689 INFO L273 TraceCheckUtils]: 290: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,690 INFO L273 TraceCheckUtils]: 291: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,690 INFO L273 TraceCheckUtils]: 292: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,690 INFO L273 TraceCheckUtils]: 293: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,690 INFO L273 TraceCheckUtils]: 294: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,690 INFO L273 TraceCheckUtils]: 295: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,690 INFO L273 TraceCheckUtils]: 296: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,690 INFO L273 TraceCheckUtils]: 297: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,690 INFO L273 TraceCheckUtils]: 298: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,690 INFO L273 TraceCheckUtils]: 299: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,690 INFO L273 TraceCheckUtils]: 300: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,691 INFO L273 TraceCheckUtils]: 301: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,691 INFO L273 TraceCheckUtils]: 302: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,691 INFO L273 TraceCheckUtils]: 303: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,691 INFO L273 TraceCheckUtils]: 304: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,691 INFO L273 TraceCheckUtils]: 305: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,691 INFO L273 TraceCheckUtils]: 306: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,691 INFO L273 TraceCheckUtils]: 307: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,691 INFO L273 TraceCheckUtils]: 308: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,691 INFO L273 TraceCheckUtils]: 309: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,691 INFO L273 TraceCheckUtils]: 310: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,692 INFO L273 TraceCheckUtils]: 311: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,692 INFO L273 TraceCheckUtils]: 312: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,692 INFO L273 TraceCheckUtils]: 313: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,692 INFO L273 TraceCheckUtils]: 314: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,692 INFO L273 TraceCheckUtils]: 315: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,692 INFO L273 TraceCheckUtils]: 316: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,692 INFO L273 TraceCheckUtils]: 317: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,692 INFO L273 TraceCheckUtils]: 318: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,692 INFO L273 TraceCheckUtils]: 319: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,692 INFO L273 TraceCheckUtils]: 320: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,693 INFO L273 TraceCheckUtils]: 321: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,693 INFO L273 TraceCheckUtils]: 322: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,693 INFO L273 TraceCheckUtils]: 323: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,693 INFO L273 TraceCheckUtils]: 324: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,693 INFO L273 TraceCheckUtils]: 325: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,693 INFO L273 TraceCheckUtils]: 326: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,693 INFO L273 TraceCheckUtils]: 327: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,693 INFO L273 TraceCheckUtils]: 328: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,693 INFO L273 TraceCheckUtils]: 329: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,694 INFO L273 TraceCheckUtils]: 330: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,694 INFO L273 TraceCheckUtils]: 331: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,694 INFO L273 TraceCheckUtils]: 332: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,694 INFO L273 TraceCheckUtils]: 333: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,694 INFO L273 TraceCheckUtils]: 334: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,694 INFO L273 TraceCheckUtils]: 335: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:17:56,694 INFO L273 TraceCheckUtils]: 336: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:17:56,694 INFO L273 TraceCheckUtils]: 337: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:17:56,694 INFO L273 TraceCheckUtils]: 338: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:17:56,694 INFO L273 TraceCheckUtils]: 339: Hoare triple {47839#true} assume !(~i~0 < 20); {47839#true} is VALID [2018-11-23 12:17:56,695 INFO L273 TraceCheckUtils]: 340: Hoare triple {47839#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {47839#true} is VALID [2018-11-23 12:17:56,695 INFO L273 TraceCheckUtils]: 341: Hoare triple {47839#true} assume true; {47839#true} is VALID [2018-11-23 12:17:56,695 INFO L268 TraceCheckUtils]: 342: Hoare quadruple {47839#true} {47840#false} #81#return; {47840#false} is VALID [2018-11-23 12:17:56,695 INFO L273 TraceCheckUtils]: 343: Hoare triple {47840#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {47840#false} is VALID [2018-11-23 12:17:56,695 INFO L273 TraceCheckUtils]: 344: Hoare triple {47840#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {47840#false} is VALID [2018-11-23 12:17:56,695 INFO L273 TraceCheckUtils]: 345: Hoare triple {47840#false} assume !false; {47840#false} is VALID [2018-11-23 12:17:56,734 INFO L134 CoverageAnalysis]: Checked inductivity of 7964 backedges. 0 proven. 289 refuted. 0 times theorem prover too weak. 7675 trivial. 0 not checked. [2018-11-23 12:17:56,735 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:17:56,735 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 -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 43 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:17:56,766 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 12:18:56,357 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 41 check-sat command(s) [2018-11-23 12:18:56,358 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:18:56,460 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:56,462 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:18:56,764 INFO L256 TraceCheckUtils]: 0: Hoare triple {47839#true} call ULTIMATE.init(); {47839#true} is VALID [2018-11-23 12:18:56,765 INFO L273 TraceCheckUtils]: 1: Hoare triple {47839#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {47839#true} is VALID [2018-11-23 12:18:56,765 INFO L273 TraceCheckUtils]: 2: Hoare triple {47839#true} assume true; {47839#true} is VALID [2018-11-23 12:18:56,765 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {47839#true} {47839#true} #73#return; {47839#true} is VALID [2018-11-23 12:18:56,765 INFO L256 TraceCheckUtils]: 4: Hoare triple {47839#true} call #t~ret14 := main(); {47839#true} is VALID [2018-11-23 12:18:56,765 INFO L273 TraceCheckUtils]: 5: Hoare triple {47839#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {47839#true} is VALID [2018-11-23 12:18:56,766 INFO L273 TraceCheckUtils]: 6: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:18:56,766 INFO L273 TraceCheckUtils]: 7: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:18:56,766 INFO L273 TraceCheckUtils]: 8: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:18:56,766 INFO L273 TraceCheckUtils]: 9: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:18:56,766 INFO L273 TraceCheckUtils]: 10: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:18:56,766 INFO L273 TraceCheckUtils]: 11: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:18:56,767 INFO L273 TraceCheckUtils]: 12: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:18:56,767 INFO L273 TraceCheckUtils]: 13: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:18:56,767 INFO L273 TraceCheckUtils]: 14: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:18:56,767 INFO L273 TraceCheckUtils]: 15: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:18:56,767 INFO L273 TraceCheckUtils]: 16: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:18:56,768 INFO L273 TraceCheckUtils]: 17: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:18:56,768 INFO L273 TraceCheckUtils]: 18: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:18:56,768 INFO L273 TraceCheckUtils]: 19: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:18:56,768 INFO L273 TraceCheckUtils]: 20: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:18:56,768 INFO L273 TraceCheckUtils]: 21: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:18:56,768 INFO L273 TraceCheckUtils]: 22: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:18:56,769 INFO L273 TraceCheckUtils]: 23: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:18:56,769 INFO L273 TraceCheckUtils]: 24: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:18:56,769 INFO L273 TraceCheckUtils]: 25: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:18:56,769 INFO L273 TraceCheckUtils]: 26: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:18:56,769 INFO L273 TraceCheckUtils]: 27: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:18:56,769 INFO L273 TraceCheckUtils]: 28: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:18:56,769 INFO L273 TraceCheckUtils]: 29: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:18:56,769 INFO L273 TraceCheckUtils]: 30: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:18:56,769 INFO L273 TraceCheckUtils]: 31: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:18:56,769 INFO L273 TraceCheckUtils]: 32: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:18:56,770 INFO L273 TraceCheckUtils]: 33: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:18:56,770 INFO L273 TraceCheckUtils]: 34: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:18:56,770 INFO L273 TraceCheckUtils]: 35: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:18:56,770 INFO L273 TraceCheckUtils]: 36: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:18:56,770 INFO L273 TraceCheckUtils]: 37: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:18:56,770 INFO L273 TraceCheckUtils]: 38: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:18:56,770 INFO L273 TraceCheckUtils]: 39: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:18:56,770 INFO L273 TraceCheckUtils]: 40: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:18:56,770 INFO L273 TraceCheckUtils]: 41: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:18:56,770 INFO L273 TraceCheckUtils]: 42: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:18:56,771 INFO L273 TraceCheckUtils]: 43: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:18:56,771 INFO L273 TraceCheckUtils]: 44: Hoare triple {47839#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {47839#true} is VALID [2018-11-23 12:18:56,771 INFO L273 TraceCheckUtils]: 45: Hoare triple {47839#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {47839#true} is VALID [2018-11-23 12:18:56,771 INFO L273 TraceCheckUtils]: 46: Hoare triple {47839#true} assume !(~i~1 < 20); {47839#true} is VALID [2018-11-23 12:18:56,771 INFO L256 TraceCheckUtils]: 47: Hoare triple {47839#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {47839#true} is VALID [2018-11-23 12:18:56,771 INFO L273 TraceCheckUtils]: 48: Hoare triple {47839#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {47839#true} is VALID [2018-11-23 12:18:56,771 INFO L273 TraceCheckUtils]: 49: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,771 INFO L273 TraceCheckUtils]: 50: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,771 INFO L273 TraceCheckUtils]: 51: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,771 INFO L273 TraceCheckUtils]: 52: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,772 INFO L273 TraceCheckUtils]: 53: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,772 INFO L273 TraceCheckUtils]: 54: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,772 INFO L273 TraceCheckUtils]: 55: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,772 INFO L273 TraceCheckUtils]: 56: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,772 INFO L273 TraceCheckUtils]: 57: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,772 INFO L273 TraceCheckUtils]: 58: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,772 INFO L273 TraceCheckUtils]: 59: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,772 INFO L273 TraceCheckUtils]: 60: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,772 INFO L273 TraceCheckUtils]: 61: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,772 INFO L273 TraceCheckUtils]: 62: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,773 INFO L273 TraceCheckUtils]: 63: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,773 INFO L273 TraceCheckUtils]: 64: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,773 INFO L273 TraceCheckUtils]: 65: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,773 INFO L273 TraceCheckUtils]: 66: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,773 INFO L273 TraceCheckUtils]: 67: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,773 INFO L273 TraceCheckUtils]: 68: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,773 INFO L273 TraceCheckUtils]: 69: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,773 INFO L273 TraceCheckUtils]: 70: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,773 INFO L273 TraceCheckUtils]: 71: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,773 INFO L273 TraceCheckUtils]: 72: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,774 INFO L273 TraceCheckUtils]: 73: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,774 INFO L273 TraceCheckUtils]: 74: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,774 INFO L273 TraceCheckUtils]: 75: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,774 INFO L273 TraceCheckUtils]: 76: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,774 INFO L273 TraceCheckUtils]: 77: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,774 INFO L273 TraceCheckUtils]: 78: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,774 INFO L273 TraceCheckUtils]: 79: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,774 INFO L273 TraceCheckUtils]: 80: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,774 INFO L273 TraceCheckUtils]: 81: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,774 INFO L273 TraceCheckUtils]: 82: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,775 INFO L273 TraceCheckUtils]: 83: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,775 INFO L273 TraceCheckUtils]: 84: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,775 INFO L273 TraceCheckUtils]: 85: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,775 INFO L273 TraceCheckUtils]: 86: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,775 INFO L273 TraceCheckUtils]: 87: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,775 INFO L273 TraceCheckUtils]: 88: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,775 INFO L273 TraceCheckUtils]: 89: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,775 INFO L273 TraceCheckUtils]: 90: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,775 INFO L273 TraceCheckUtils]: 91: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,775 INFO L273 TraceCheckUtils]: 92: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,776 INFO L273 TraceCheckUtils]: 93: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,776 INFO L273 TraceCheckUtils]: 94: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,776 INFO L273 TraceCheckUtils]: 95: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,776 INFO L273 TraceCheckUtils]: 96: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,776 INFO L273 TraceCheckUtils]: 97: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,776 INFO L273 TraceCheckUtils]: 98: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,776 INFO L273 TraceCheckUtils]: 99: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,776 INFO L273 TraceCheckUtils]: 100: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,776 INFO L273 TraceCheckUtils]: 101: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,776 INFO L273 TraceCheckUtils]: 102: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,777 INFO L273 TraceCheckUtils]: 103: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,777 INFO L273 TraceCheckUtils]: 104: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,777 INFO L273 TraceCheckUtils]: 105: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,777 INFO L273 TraceCheckUtils]: 106: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,777 INFO L273 TraceCheckUtils]: 107: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,777 INFO L273 TraceCheckUtils]: 108: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,777 INFO L273 TraceCheckUtils]: 109: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,777 INFO L273 TraceCheckUtils]: 110: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,777 INFO L273 TraceCheckUtils]: 111: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,777 INFO L273 TraceCheckUtils]: 112: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,778 INFO L273 TraceCheckUtils]: 113: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,778 INFO L273 TraceCheckUtils]: 114: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,778 INFO L273 TraceCheckUtils]: 115: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,778 INFO L273 TraceCheckUtils]: 116: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,778 INFO L273 TraceCheckUtils]: 117: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,778 INFO L273 TraceCheckUtils]: 118: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,778 INFO L273 TraceCheckUtils]: 119: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,778 INFO L273 TraceCheckUtils]: 120: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,778 INFO L273 TraceCheckUtils]: 121: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,778 INFO L273 TraceCheckUtils]: 122: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,779 INFO L273 TraceCheckUtils]: 123: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,779 INFO L273 TraceCheckUtils]: 124: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,779 INFO L273 TraceCheckUtils]: 125: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,779 INFO L273 TraceCheckUtils]: 126: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,779 INFO L273 TraceCheckUtils]: 127: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,779 INFO L273 TraceCheckUtils]: 128: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,779 INFO L273 TraceCheckUtils]: 129: Hoare triple {47839#true} assume !(~i~0 < 20); {47839#true} is VALID [2018-11-23 12:18:56,779 INFO L273 TraceCheckUtils]: 130: Hoare triple {47839#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {47839#true} is VALID [2018-11-23 12:18:56,779 INFO L273 TraceCheckUtils]: 131: Hoare triple {47839#true} assume true; {47839#true} is VALID [2018-11-23 12:18:56,779 INFO L268 TraceCheckUtils]: 132: Hoare quadruple {47839#true} {47839#true} #77#return; {47839#true} is VALID [2018-11-23 12:18:56,780 INFO L273 TraceCheckUtils]: 133: Hoare triple {47839#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {47839#true} is VALID [2018-11-23 12:18:56,780 INFO L256 TraceCheckUtils]: 134: Hoare triple {47839#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {47839#true} is VALID [2018-11-23 12:18:56,780 INFO L273 TraceCheckUtils]: 135: Hoare triple {47839#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {47839#true} is VALID [2018-11-23 12:18:56,780 INFO L273 TraceCheckUtils]: 136: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,780 INFO L273 TraceCheckUtils]: 137: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,780 INFO L273 TraceCheckUtils]: 138: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,780 INFO L273 TraceCheckUtils]: 139: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,780 INFO L273 TraceCheckUtils]: 140: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,780 INFO L273 TraceCheckUtils]: 141: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,780 INFO L273 TraceCheckUtils]: 142: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,781 INFO L273 TraceCheckUtils]: 143: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,781 INFO L273 TraceCheckUtils]: 144: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,781 INFO L273 TraceCheckUtils]: 145: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,781 INFO L273 TraceCheckUtils]: 146: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,781 INFO L273 TraceCheckUtils]: 147: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,781 INFO L273 TraceCheckUtils]: 148: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,781 INFO L273 TraceCheckUtils]: 149: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,781 INFO L273 TraceCheckUtils]: 150: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,781 INFO L273 TraceCheckUtils]: 151: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,781 INFO L273 TraceCheckUtils]: 152: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,782 INFO L273 TraceCheckUtils]: 153: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,782 INFO L273 TraceCheckUtils]: 154: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,782 INFO L273 TraceCheckUtils]: 155: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,782 INFO L273 TraceCheckUtils]: 156: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,782 INFO L273 TraceCheckUtils]: 157: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,782 INFO L273 TraceCheckUtils]: 158: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,782 INFO L273 TraceCheckUtils]: 159: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,782 INFO L273 TraceCheckUtils]: 160: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,782 INFO L273 TraceCheckUtils]: 161: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,782 INFO L273 TraceCheckUtils]: 162: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,783 INFO L273 TraceCheckUtils]: 163: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,783 INFO L273 TraceCheckUtils]: 164: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,783 INFO L273 TraceCheckUtils]: 165: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,783 INFO L273 TraceCheckUtils]: 166: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,783 INFO L273 TraceCheckUtils]: 167: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,783 INFO L273 TraceCheckUtils]: 168: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,783 INFO L273 TraceCheckUtils]: 169: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,783 INFO L273 TraceCheckUtils]: 170: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,783 INFO L273 TraceCheckUtils]: 171: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,783 INFO L273 TraceCheckUtils]: 172: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,784 INFO L273 TraceCheckUtils]: 173: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,784 INFO L273 TraceCheckUtils]: 174: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,784 INFO L273 TraceCheckUtils]: 175: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,784 INFO L273 TraceCheckUtils]: 176: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,784 INFO L273 TraceCheckUtils]: 177: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,784 INFO L273 TraceCheckUtils]: 178: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,784 INFO L273 TraceCheckUtils]: 179: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,784 INFO L273 TraceCheckUtils]: 180: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,784 INFO L273 TraceCheckUtils]: 181: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,784 INFO L273 TraceCheckUtils]: 182: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,785 INFO L273 TraceCheckUtils]: 183: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,785 INFO L273 TraceCheckUtils]: 184: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,785 INFO L273 TraceCheckUtils]: 185: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,785 INFO L273 TraceCheckUtils]: 186: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,785 INFO L273 TraceCheckUtils]: 187: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,785 INFO L273 TraceCheckUtils]: 188: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,785 INFO L273 TraceCheckUtils]: 189: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,785 INFO L273 TraceCheckUtils]: 190: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,785 INFO L273 TraceCheckUtils]: 191: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,785 INFO L273 TraceCheckUtils]: 192: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,786 INFO L273 TraceCheckUtils]: 193: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,786 INFO L273 TraceCheckUtils]: 194: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,786 INFO L273 TraceCheckUtils]: 195: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,786 INFO L273 TraceCheckUtils]: 196: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,786 INFO L273 TraceCheckUtils]: 197: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,786 INFO L273 TraceCheckUtils]: 198: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,786 INFO L273 TraceCheckUtils]: 199: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,786 INFO L273 TraceCheckUtils]: 200: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,786 INFO L273 TraceCheckUtils]: 201: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,786 INFO L273 TraceCheckUtils]: 202: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,787 INFO L273 TraceCheckUtils]: 203: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,787 INFO L273 TraceCheckUtils]: 204: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,787 INFO L273 TraceCheckUtils]: 205: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,787 INFO L273 TraceCheckUtils]: 206: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,787 INFO L273 TraceCheckUtils]: 207: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,787 INFO L273 TraceCheckUtils]: 208: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,787 INFO L273 TraceCheckUtils]: 209: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,787 INFO L273 TraceCheckUtils]: 210: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,787 INFO L273 TraceCheckUtils]: 211: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,787 INFO L273 TraceCheckUtils]: 212: Hoare triple {47839#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47839#true} is VALID [2018-11-23 12:18:56,788 INFO L273 TraceCheckUtils]: 213: Hoare triple {47839#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47839#true} is VALID [2018-11-23 12:18:56,788 INFO L273 TraceCheckUtils]: 214: Hoare triple {47839#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47839#true} is VALID [2018-11-23 12:18:56,788 INFO L273 TraceCheckUtils]: 215: Hoare triple {47839#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47839#true} is VALID [2018-11-23 12:18:56,788 INFO L273 TraceCheckUtils]: 216: Hoare triple {47839#true} assume !(~i~0 < 20); {47839#true} is VALID [2018-11-23 12:18:56,788 INFO L273 TraceCheckUtils]: 217: Hoare triple {47839#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {47839#true} is VALID [2018-11-23 12:18:56,788 INFO L273 TraceCheckUtils]: 218: Hoare triple {47839#true} assume true; {47839#true} is VALID [2018-11-23 12:18:56,788 INFO L268 TraceCheckUtils]: 219: Hoare quadruple {47839#true} {47839#true} #79#return; {47839#true} is VALID [2018-11-23 12:18:56,789 INFO L273 TraceCheckUtils]: 220: Hoare triple {47839#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {48522#(<= main_~i~2 0)} is VALID [2018-11-23 12:18:56,789 INFO L273 TraceCheckUtils]: 221: Hoare triple {48522#(<= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {48522#(<= main_~i~2 0)} is VALID [2018-11-23 12:18:56,789 INFO L273 TraceCheckUtils]: 222: Hoare triple {48522#(<= main_~i~2 0)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47842#(<= main_~i~2 1)} is VALID [2018-11-23 12:18:56,790 INFO L273 TraceCheckUtils]: 223: Hoare triple {47842#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47842#(<= main_~i~2 1)} is VALID [2018-11-23 12:18:56,790 INFO L273 TraceCheckUtils]: 224: Hoare triple {47842#(<= main_~i~2 1)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47843#(<= main_~i~2 2)} is VALID [2018-11-23 12:18:56,790 INFO L273 TraceCheckUtils]: 225: Hoare triple {47843#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47843#(<= main_~i~2 2)} is VALID [2018-11-23 12:18:56,791 INFO L273 TraceCheckUtils]: 226: Hoare triple {47843#(<= main_~i~2 2)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47844#(<= main_~i~2 3)} is VALID [2018-11-23 12:18:56,791 INFO L273 TraceCheckUtils]: 227: Hoare triple {47844#(<= main_~i~2 3)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47844#(<= main_~i~2 3)} is VALID [2018-11-23 12:18:56,792 INFO L273 TraceCheckUtils]: 228: Hoare triple {47844#(<= main_~i~2 3)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47845#(<= main_~i~2 4)} is VALID [2018-11-23 12:18:56,792 INFO L273 TraceCheckUtils]: 229: Hoare triple {47845#(<= main_~i~2 4)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47845#(<= main_~i~2 4)} is VALID [2018-11-23 12:18:56,792 INFO L273 TraceCheckUtils]: 230: Hoare triple {47845#(<= main_~i~2 4)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47846#(<= main_~i~2 5)} is VALID [2018-11-23 12:18:56,793 INFO L273 TraceCheckUtils]: 231: Hoare triple {47846#(<= main_~i~2 5)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47846#(<= main_~i~2 5)} is VALID [2018-11-23 12:18:56,793 INFO L273 TraceCheckUtils]: 232: Hoare triple {47846#(<= main_~i~2 5)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47847#(<= main_~i~2 6)} is VALID [2018-11-23 12:18:56,794 INFO L273 TraceCheckUtils]: 233: Hoare triple {47847#(<= main_~i~2 6)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47847#(<= main_~i~2 6)} is VALID [2018-11-23 12:18:56,795 INFO L273 TraceCheckUtils]: 234: Hoare triple {47847#(<= main_~i~2 6)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47848#(<= main_~i~2 7)} is VALID [2018-11-23 12:18:56,795 INFO L273 TraceCheckUtils]: 235: Hoare triple {47848#(<= main_~i~2 7)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47848#(<= main_~i~2 7)} is VALID [2018-11-23 12:18:56,796 INFO L273 TraceCheckUtils]: 236: Hoare triple {47848#(<= main_~i~2 7)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47849#(<= main_~i~2 8)} is VALID [2018-11-23 12:18:56,796 INFO L273 TraceCheckUtils]: 237: Hoare triple {47849#(<= main_~i~2 8)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47849#(<= main_~i~2 8)} is VALID [2018-11-23 12:18:56,797 INFO L273 TraceCheckUtils]: 238: Hoare triple {47849#(<= main_~i~2 8)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47850#(<= main_~i~2 9)} is VALID [2018-11-23 12:18:56,798 INFO L273 TraceCheckUtils]: 239: Hoare triple {47850#(<= main_~i~2 9)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47850#(<= main_~i~2 9)} is VALID [2018-11-23 12:18:56,798 INFO L273 TraceCheckUtils]: 240: Hoare triple {47850#(<= main_~i~2 9)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47851#(<= main_~i~2 10)} is VALID [2018-11-23 12:18:56,799 INFO L273 TraceCheckUtils]: 241: Hoare triple {47851#(<= main_~i~2 10)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47851#(<= main_~i~2 10)} is VALID [2018-11-23 12:18:56,800 INFO L273 TraceCheckUtils]: 242: Hoare triple {47851#(<= main_~i~2 10)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47852#(<= main_~i~2 11)} is VALID [2018-11-23 12:18:56,800 INFO L273 TraceCheckUtils]: 243: Hoare triple {47852#(<= main_~i~2 11)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47852#(<= main_~i~2 11)} is VALID [2018-11-23 12:18:56,801 INFO L273 TraceCheckUtils]: 244: Hoare triple {47852#(<= main_~i~2 11)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47853#(<= main_~i~2 12)} is VALID [2018-11-23 12:18:56,806 INFO L273 TraceCheckUtils]: 245: Hoare triple {47853#(<= main_~i~2 12)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47853#(<= main_~i~2 12)} is VALID [2018-11-23 12:18:56,806 INFO L273 TraceCheckUtils]: 246: Hoare triple {47853#(<= main_~i~2 12)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47854#(<= main_~i~2 13)} is VALID [2018-11-23 12:18:56,806 INFO L273 TraceCheckUtils]: 247: Hoare triple {47854#(<= main_~i~2 13)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47854#(<= main_~i~2 13)} is VALID [2018-11-23 12:18:56,807 INFO L273 TraceCheckUtils]: 248: Hoare triple {47854#(<= main_~i~2 13)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47855#(<= main_~i~2 14)} is VALID [2018-11-23 12:18:56,807 INFO L273 TraceCheckUtils]: 249: Hoare triple {47855#(<= main_~i~2 14)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47855#(<= main_~i~2 14)} is VALID [2018-11-23 12:18:56,807 INFO L273 TraceCheckUtils]: 250: Hoare triple {47855#(<= main_~i~2 14)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47856#(<= main_~i~2 15)} is VALID [2018-11-23 12:18:56,808 INFO L273 TraceCheckUtils]: 251: Hoare triple {47856#(<= main_~i~2 15)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47856#(<= main_~i~2 15)} is VALID [2018-11-23 12:18:56,808 INFO L273 TraceCheckUtils]: 252: Hoare triple {47856#(<= main_~i~2 15)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47857#(<= main_~i~2 16)} is VALID [2018-11-23 12:18:56,808 INFO L273 TraceCheckUtils]: 253: Hoare triple {47857#(<= main_~i~2 16)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {47857#(<= main_~i~2 16)} is VALID [2018-11-23 12:18:56,809 INFO L273 TraceCheckUtils]: 254: Hoare triple {47857#(<= main_~i~2 16)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {47858#(<= main_~i~2 17)} is VALID [2018-11-23 12:18:56,809 INFO L273 TraceCheckUtils]: 255: Hoare triple {47858#(<= main_~i~2 17)} assume !(~i~2 < 19); {47840#false} is VALID [2018-11-23 12:18:56,809 INFO L273 TraceCheckUtils]: 256: Hoare triple {47840#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {47840#false} is VALID [2018-11-23 12:18:56,810 INFO L256 TraceCheckUtils]: 257: Hoare triple {47840#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {47840#false} is VALID [2018-11-23 12:18:56,810 INFO L273 TraceCheckUtils]: 258: Hoare triple {47840#false} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {47840#false} is VALID [2018-11-23 12:18:56,810 INFO L273 TraceCheckUtils]: 259: Hoare triple {47840#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47840#false} is VALID [2018-11-23 12:18:56,810 INFO L273 TraceCheckUtils]: 260: Hoare triple {47840#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47840#false} is VALID [2018-11-23 12:18:56,810 INFO L273 TraceCheckUtils]: 261: Hoare triple {47840#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47840#false} is VALID [2018-11-23 12:18:56,810 INFO L273 TraceCheckUtils]: 262: Hoare triple {47840#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47840#false} is VALID [2018-11-23 12:18:56,811 INFO L273 TraceCheckUtils]: 263: Hoare triple {47840#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47840#false} is VALID [2018-11-23 12:18:56,811 INFO L273 TraceCheckUtils]: 264: Hoare triple {47840#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47840#false} is VALID [2018-11-23 12:18:56,811 INFO L273 TraceCheckUtils]: 265: Hoare triple {47840#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47840#false} is VALID [2018-11-23 12:18:56,811 INFO L273 TraceCheckUtils]: 266: Hoare triple {47840#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47840#false} is VALID [2018-11-23 12:18:56,811 INFO L273 TraceCheckUtils]: 267: Hoare triple {47840#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47840#false} is VALID [2018-11-23 12:18:56,811 INFO L273 TraceCheckUtils]: 268: Hoare triple {47840#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47840#false} is VALID [2018-11-23 12:18:56,812 INFO L273 TraceCheckUtils]: 269: Hoare triple {47840#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47840#false} is VALID [2018-11-23 12:18:56,812 INFO L273 TraceCheckUtils]: 270: Hoare triple {47840#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47840#false} is VALID [2018-11-23 12:18:56,812 INFO L273 TraceCheckUtils]: 271: Hoare triple {47840#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47840#false} is VALID [2018-11-23 12:18:56,812 INFO L273 TraceCheckUtils]: 272: Hoare triple {47840#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47840#false} is VALID [2018-11-23 12:18:56,812 INFO L273 TraceCheckUtils]: 273: Hoare triple {47840#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47840#false} is VALID [2018-11-23 12:18:56,812 INFO L273 TraceCheckUtils]: 274: Hoare triple {47840#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47840#false} is VALID [2018-11-23 12:18:56,812 INFO L273 TraceCheckUtils]: 275: Hoare triple {47840#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47840#false} is VALID [2018-11-23 12:18:56,812 INFO L273 TraceCheckUtils]: 276: Hoare triple {47840#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47840#false} is VALID [2018-11-23 12:18:56,812 INFO L273 TraceCheckUtils]: 277: Hoare triple {47840#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47840#false} is VALID [2018-11-23 12:18:56,812 INFO L273 TraceCheckUtils]: 278: Hoare triple {47840#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47840#false} is VALID [2018-11-23 12:18:56,813 INFO L273 TraceCheckUtils]: 279: Hoare triple {47840#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47840#false} is VALID [2018-11-23 12:18:56,813 INFO L273 TraceCheckUtils]: 280: Hoare triple {47840#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47840#false} is VALID [2018-11-23 12:18:56,813 INFO L273 TraceCheckUtils]: 281: Hoare triple {47840#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47840#false} is VALID [2018-11-23 12:18:56,813 INFO L273 TraceCheckUtils]: 282: Hoare triple {47840#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47840#false} is VALID [2018-11-23 12:18:56,813 INFO L273 TraceCheckUtils]: 283: Hoare triple {47840#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47840#false} is VALID [2018-11-23 12:18:56,813 INFO L273 TraceCheckUtils]: 284: Hoare triple {47840#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47840#false} is VALID [2018-11-23 12:18:56,813 INFO L273 TraceCheckUtils]: 285: Hoare triple {47840#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47840#false} is VALID [2018-11-23 12:18:56,813 INFO L273 TraceCheckUtils]: 286: Hoare triple {47840#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47840#false} is VALID [2018-11-23 12:18:56,813 INFO L273 TraceCheckUtils]: 287: Hoare triple {47840#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47840#false} is VALID [2018-11-23 12:18:56,813 INFO L273 TraceCheckUtils]: 288: Hoare triple {47840#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47840#false} is VALID [2018-11-23 12:18:56,814 INFO L273 TraceCheckUtils]: 289: Hoare triple {47840#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47840#false} is VALID [2018-11-23 12:18:56,814 INFO L273 TraceCheckUtils]: 290: Hoare triple {47840#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47840#false} is VALID [2018-11-23 12:18:56,814 INFO L273 TraceCheckUtils]: 291: Hoare triple {47840#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47840#false} is VALID [2018-11-23 12:18:56,814 INFO L273 TraceCheckUtils]: 292: Hoare triple {47840#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47840#false} is VALID [2018-11-23 12:18:56,814 INFO L273 TraceCheckUtils]: 293: Hoare triple {47840#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47840#false} is VALID [2018-11-23 12:18:56,814 INFO L273 TraceCheckUtils]: 294: Hoare triple {47840#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47840#false} is VALID [2018-11-23 12:18:56,814 INFO L273 TraceCheckUtils]: 295: Hoare triple {47840#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47840#false} is VALID [2018-11-23 12:18:56,814 INFO L273 TraceCheckUtils]: 296: Hoare triple {47840#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47840#false} is VALID [2018-11-23 12:18:56,814 INFO L273 TraceCheckUtils]: 297: Hoare triple {47840#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47840#false} is VALID [2018-11-23 12:18:56,814 INFO L273 TraceCheckUtils]: 298: Hoare triple {47840#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47840#false} is VALID [2018-11-23 12:18:56,815 INFO L273 TraceCheckUtils]: 299: Hoare triple {47840#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47840#false} is VALID [2018-11-23 12:18:56,815 INFO L273 TraceCheckUtils]: 300: Hoare triple {47840#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47840#false} is VALID [2018-11-23 12:18:56,815 INFO L273 TraceCheckUtils]: 301: Hoare triple {47840#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47840#false} is VALID [2018-11-23 12:18:56,815 INFO L273 TraceCheckUtils]: 302: Hoare triple {47840#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47840#false} is VALID [2018-11-23 12:18:56,815 INFO L273 TraceCheckUtils]: 303: Hoare triple {47840#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47840#false} is VALID [2018-11-23 12:18:56,815 INFO L273 TraceCheckUtils]: 304: Hoare triple {47840#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47840#false} is VALID [2018-11-23 12:18:56,815 INFO L273 TraceCheckUtils]: 305: Hoare triple {47840#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47840#false} is VALID [2018-11-23 12:18:56,815 INFO L273 TraceCheckUtils]: 306: Hoare triple {47840#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47840#false} is VALID [2018-11-23 12:18:56,815 INFO L273 TraceCheckUtils]: 307: Hoare triple {47840#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47840#false} is VALID [2018-11-23 12:18:56,816 INFO L273 TraceCheckUtils]: 308: Hoare triple {47840#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47840#false} is VALID [2018-11-23 12:18:56,816 INFO L273 TraceCheckUtils]: 309: Hoare triple {47840#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47840#false} is VALID [2018-11-23 12:18:56,816 INFO L273 TraceCheckUtils]: 310: Hoare triple {47840#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47840#false} is VALID [2018-11-23 12:18:56,816 INFO L273 TraceCheckUtils]: 311: Hoare triple {47840#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47840#false} is VALID [2018-11-23 12:18:56,816 INFO L273 TraceCheckUtils]: 312: Hoare triple {47840#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47840#false} is VALID [2018-11-23 12:18:56,816 INFO L273 TraceCheckUtils]: 313: Hoare triple {47840#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47840#false} is VALID [2018-11-23 12:18:56,816 INFO L273 TraceCheckUtils]: 314: Hoare triple {47840#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47840#false} is VALID [2018-11-23 12:18:56,816 INFO L273 TraceCheckUtils]: 315: Hoare triple {47840#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47840#false} is VALID [2018-11-23 12:18:56,816 INFO L273 TraceCheckUtils]: 316: Hoare triple {47840#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47840#false} is VALID [2018-11-23 12:18:56,816 INFO L273 TraceCheckUtils]: 317: Hoare triple {47840#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47840#false} is VALID [2018-11-23 12:18:56,817 INFO L273 TraceCheckUtils]: 318: Hoare triple {47840#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47840#false} is VALID [2018-11-23 12:18:56,817 INFO L273 TraceCheckUtils]: 319: Hoare triple {47840#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47840#false} is VALID [2018-11-23 12:18:56,817 INFO L273 TraceCheckUtils]: 320: Hoare triple {47840#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47840#false} is VALID [2018-11-23 12:18:56,817 INFO L273 TraceCheckUtils]: 321: Hoare triple {47840#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47840#false} is VALID [2018-11-23 12:18:56,817 INFO L273 TraceCheckUtils]: 322: Hoare triple {47840#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47840#false} is VALID [2018-11-23 12:18:56,817 INFO L273 TraceCheckUtils]: 323: Hoare triple {47840#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47840#false} is VALID [2018-11-23 12:18:56,817 INFO L273 TraceCheckUtils]: 324: Hoare triple {47840#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47840#false} is VALID [2018-11-23 12:18:56,817 INFO L273 TraceCheckUtils]: 325: Hoare triple {47840#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47840#false} is VALID [2018-11-23 12:18:56,817 INFO L273 TraceCheckUtils]: 326: Hoare triple {47840#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47840#false} is VALID [2018-11-23 12:18:56,817 INFO L273 TraceCheckUtils]: 327: Hoare triple {47840#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47840#false} is VALID [2018-11-23 12:18:56,818 INFO L273 TraceCheckUtils]: 328: Hoare triple {47840#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47840#false} is VALID [2018-11-23 12:18:56,818 INFO L273 TraceCheckUtils]: 329: Hoare triple {47840#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47840#false} is VALID [2018-11-23 12:18:56,818 INFO L273 TraceCheckUtils]: 330: Hoare triple {47840#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47840#false} is VALID [2018-11-23 12:18:56,818 INFO L273 TraceCheckUtils]: 331: Hoare triple {47840#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47840#false} is VALID [2018-11-23 12:18:56,818 INFO L273 TraceCheckUtils]: 332: Hoare triple {47840#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47840#false} is VALID [2018-11-23 12:18:56,818 INFO L273 TraceCheckUtils]: 333: Hoare triple {47840#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47840#false} is VALID [2018-11-23 12:18:56,818 INFO L273 TraceCheckUtils]: 334: Hoare triple {47840#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47840#false} is VALID [2018-11-23 12:18:56,818 INFO L273 TraceCheckUtils]: 335: Hoare triple {47840#false} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {47840#false} is VALID [2018-11-23 12:18:56,818 INFO L273 TraceCheckUtils]: 336: Hoare triple {47840#false} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {47840#false} is VALID [2018-11-23 12:18:56,818 INFO L273 TraceCheckUtils]: 337: Hoare triple {47840#false} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {47840#false} is VALID [2018-11-23 12:18:56,819 INFO L273 TraceCheckUtils]: 338: Hoare triple {47840#false} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {47840#false} is VALID [2018-11-23 12:18:56,819 INFO L273 TraceCheckUtils]: 339: Hoare triple {47840#false} assume !(~i~0 < 20); {47840#false} is VALID [2018-11-23 12:18:56,819 INFO L273 TraceCheckUtils]: 340: Hoare triple {47840#false} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {47840#false} is VALID [2018-11-23 12:18:56,819 INFO L273 TraceCheckUtils]: 341: Hoare triple {47840#false} assume true; {47840#false} is VALID [2018-11-23 12:18:56,819 INFO L268 TraceCheckUtils]: 342: Hoare quadruple {47840#false} {47840#false} #81#return; {47840#false} is VALID [2018-11-23 12:18:56,819 INFO L273 TraceCheckUtils]: 343: Hoare triple {47840#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {47840#false} is VALID [2018-11-23 12:18:56,819 INFO L273 TraceCheckUtils]: 344: Hoare triple {47840#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {47840#false} is VALID [2018-11-23 12:18:56,819 INFO L273 TraceCheckUtils]: 345: Hoare triple {47840#false} assume !false; {47840#false} is VALID [2018-11-23 12:18:56,860 INFO L134 CoverageAnalysis]: Checked inductivity of 7964 backedges. 3290 proven. 289 refuted. 0 times theorem prover too weak. 4385 trivial. 0 not checked. [2018-11-23 12:18:56,891 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:18:56,892 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [20, 20] total 21 [2018-11-23 12:18:56,892 INFO L78 Accepts]: Start accepts. Automaton has 21 states. Word has length 346 [2018-11-23 12:18:56,893 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:18:56,893 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 21 states. [2018-11-23 12:18:56,972 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:18:56,972 INFO L459 AbstractCegarLoop]: Interpolant automaton has 21 states [2018-11-23 12:18:56,973 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2018-11-23 12:18:56,973 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=210, Invalid=210, Unknown=0, NotChecked=0, Total=420 [2018-11-23 12:18:56,973 INFO L87 Difference]: Start difference. First operand 177 states and 201 transitions. Second operand 21 states. [2018-11-23 12:18:57,735 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:57,736 INFO L93 Difference]: Finished difference Result 271 states and 316 transitions. [2018-11-23 12:18:57,736 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2018-11-23 12:18:57,736 INFO L78 Accepts]: Start accepts. Automaton has 21 states. Word has length 346 [2018-11-23 12:18:57,736 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:18:57,736 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 21 states. [2018-11-23 12:18:57,737 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 85 transitions. [2018-11-23 12:18:57,737 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 21 states. [2018-11-23 12:18:57,737 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 85 transitions. [2018-11-23 12:18:57,737 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states and 85 transitions. [2018-11-23 12:18:57,825 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:18:57,830 INFO L225 Difference]: With dead ends: 271 [2018-11-23 12:18:57,830 INFO L226 Difference]: Without dead ends: 180 [2018-11-23 12:18:57,830 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 365 GetRequests, 346 SyntacticMatches, 0 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 32 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=210, Invalid=210, Unknown=0, NotChecked=0, Total=420 [2018-11-23 12:18:57,831 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 180 states. [2018-11-23 12:18:57,907 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 180 to 179. [2018-11-23 12:18:57,907 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:18:57,907 INFO L82 GeneralOperation]: Start isEquivalent. First operand 180 states. Second operand 179 states. [2018-11-23 12:18:57,907 INFO L74 IsIncluded]: Start isIncluded. First operand 180 states. Second operand 179 states. [2018-11-23 12:18:57,907 INFO L87 Difference]: Start difference. First operand 180 states. Second operand 179 states. [2018-11-23 12:18:57,911 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:57,911 INFO L93 Difference]: Finished difference Result 180 states and 204 transitions. [2018-11-23 12:18:57,911 INFO L276 IsEmpty]: Start isEmpty. Operand 180 states and 204 transitions. [2018-11-23 12:18:57,911 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:57,911 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:57,911 INFO L74 IsIncluded]: Start isIncluded. First operand 179 states. Second operand 180 states. [2018-11-23 12:18:57,911 INFO L87 Difference]: Start difference. First operand 179 states. Second operand 180 states. [2018-11-23 12:18:57,914 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:57,914 INFO L93 Difference]: Finished difference Result 180 states and 204 transitions. [2018-11-23 12:18:57,914 INFO L276 IsEmpty]: Start isEmpty. Operand 180 states and 204 transitions. [2018-11-23 12:18:57,914 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:57,914 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:57,914 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:18:57,914 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:18:57,915 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 179 states. [2018-11-23 12:18:57,917 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 179 states to 179 states and 203 transitions. [2018-11-23 12:18:57,917 INFO L78 Accepts]: Start accepts. Automaton has 179 states and 203 transitions. Word has length 346 [2018-11-23 12:18:57,917 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:18:57,917 INFO L480 AbstractCegarLoop]: Abstraction has 179 states and 203 transitions. [2018-11-23 12:18:57,917 INFO L481 AbstractCegarLoop]: Interpolant automaton has 21 states. [2018-11-23 12:18:57,917 INFO L276 IsEmpty]: Start isEmpty. Operand 179 states and 203 transitions. [2018-11-23 12:18:57,919 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 349 [2018-11-23 12:18:57,919 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:18:57,919 INFO L402 BasicCegarLoop]: trace histogram [60, 60, 60, 60, 20, 20, 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] [2018-11-23 12:18:57,919 INFO L423 AbstractCegarLoop]: === Iteration 45 === [mainErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:18:57,919 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:18:57,920 INFO L82 PathProgramCache]: Analyzing trace with hash -193446037, now seen corresponding path program 42 times [2018-11-23 12:18:57,920 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:18:57,920 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:18:57,920 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:57,920 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:18:57,920 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:57,963 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:58,297 INFO L256 TraceCheckUtils]: 0: Hoare triple {49868#true} call ULTIMATE.init(); {49868#true} is VALID [2018-11-23 12:18:58,298 INFO L273 TraceCheckUtils]: 1: Hoare triple {49868#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {49868#true} is VALID [2018-11-23 12:18:58,298 INFO L273 TraceCheckUtils]: 2: Hoare triple {49868#true} assume true; {49868#true} is VALID [2018-11-23 12:18:58,298 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {49868#true} {49868#true} #73#return; {49868#true} is VALID [2018-11-23 12:18:58,298 INFO L256 TraceCheckUtils]: 4: Hoare triple {49868#true} call #t~ret14 := main(); {49868#true} is VALID [2018-11-23 12:18:58,298 INFO L273 TraceCheckUtils]: 5: Hoare triple {49868#true} call ~#x~0.base, ~#x~0.offset := #Ultimate.alloc(80);havoc ~temp~0;havoc ~ret~1;havoc ~ret2~0;havoc ~ret5~0;~i~1 := 0; {49868#true} is VALID [2018-11-23 12:18:58,299 INFO L273 TraceCheckUtils]: 6: Hoare triple {49868#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {49868#true} is VALID [2018-11-23 12:18:58,299 INFO L273 TraceCheckUtils]: 7: Hoare triple {49868#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {49868#true} is VALID [2018-11-23 12:18:58,299 INFO L273 TraceCheckUtils]: 8: Hoare triple {49868#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {49868#true} is VALID [2018-11-23 12:18:58,299 INFO L273 TraceCheckUtils]: 9: Hoare triple {49868#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {49868#true} is VALID [2018-11-23 12:18:58,299 INFO L273 TraceCheckUtils]: 10: Hoare triple {49868#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {49868#true} is VALID [2018-11-23 12:18:58,300 INFO L273 TraceCheckUtils]: 11: Hoare triple {49868#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {49868#true} is VALID [2018-11-23 12:18:58,300 INFO L273 TraceCheckUtils]: 12: Hoare triple {49868#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {49868#true} is VALID [2018-11-23 12:18:58,300 INFO L273 TraceCheckUtils]: 13: Hoare triple {49868#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {49868#true} is VALID [2018-11-23 12:18:58,300 INFO L273 TraceCheckUtils]: 14: Hoare triple {49868#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {49868#true} is VALID [2018-11-23 12:18:58,300 INFO L273 TraceCheckUtils]: 15: Hoare triple {49868#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {49868#true} is VALID [2018-11-23 12:18:58,300 INFO L273 TraceCheckUtils]: 16: Hoare triple {49868#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {49868#true} is VALID [2018-11-23 12:18:58,301 INFO L273 TraceCheckUtils]: 17: Hoare triple {49868#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {49868#true} is VALID [2018-11-23 12:18:58,301 INFO L273 TraceCheckUtils]: 18: Hoare triple {49868#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {49868#true} is VALID [2018-11-23 12:18:58,301 INFO L273 TraceCheckUtils]: 19: Hoare triple {49868#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {49868#true} is VALID [2018-11-23 12:18:58,301 INFO L273 TraceCheckUtils]: 20: Hoare triple {49868#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {49868#true} is VALID [2018-11-23 12:18:58,301 INFO L273 TraceCheckUtils]: 21: Hoare triple {49868#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {49868#true} is VALID [2018-11-23 12:18:58,301 INFO L273 TraceCheckUtils]: 22: Hoare triple {49868#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {49868#true} is VALID [2018-11-23 12:18:58,302 INFO L273 TraceCheckUtils]: 23: Hoare triple {49868#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {49868#true} is VALID [2018-11-23 12:18:58,302 INFO L273 TraceCheckUtils]: 24: Hoare triple {49868#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {49868#true} is VALID [2018-11-23 12:18:58,302 INFO L273 TraceCheckUtils]: 25: Hoare triple {49868#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {49868#true} is VALID [2018-11-23 12:18:58,302 INFO L273 TraceCheckUtils]: 26: Hoare triple {49868#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {49868#true} is VALID [2018-11-23 12:18:58,302 INFO L273 TraceCheckUtils]: 27: Hoare triple {49868#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {49868#true} is VALID [2018-11-23 12:18:58,302 INFO L273 TraceCheckUtils]: 28: Hoare triple {49868#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {49868#true} is VALID [2018-11-23 12:18:58,302 INFO L273 TraceCheckUtils]: 29: Hoare triple {49868#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {49868#true} is VALID [2018-11-23 12:18:58,302 INFO L273 TraceCheckUtils]: 30: Hoare triple {49868#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {49868#true} is VALID [2018-11-23 12:18:58,302 INFO L273 TraceCheckUtils]: 31: Hoare triple {49868#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {49868#true} is VALID [2018-11-23 12:18:58,302 INFO L273 TraceCheckUtils]: 32: Hoare triple {49868#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {49868#true} is VALID [2018-11-23 12:18:58,303 INFO L273 TraceCheckUtils]: 33: Hoare triple {49868#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {49868#true} is VALID [2018-11-23 12:18:58,303 INFO L273 TraceCheckUtils]: 34: Hoare triple {49868#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {49868#true} is VALID [2018-11-23 12:18:58,303 INFO L273 TraceCheckUtils]: 35: Hoare triple {49868#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {49868#true} is VALID [2018-11-23 12:18:58,303 INFO L273 TraceCheckUtils]: 36: Hoare triple {49868#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {49868#true} is VALID [2018-11-23 12:18:58,303 INFO L273 TraceCheckUtils]: 37: Hoare triple {49868#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {49868#true} is VALID [2018-11-23 12:18:58,303 INFO L273 TraceCheckUtils]: 38: Hoare triple {49868#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {49868#true} is VALID [2018-11-23 12:18:58,303 INFO L273 TraceCheckUtils]: 39: Hoare triple {49868#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {49868#true} is VALID [2018-11-23 12:18:58,303 INFO L273 TraceCheckUtils]: 40: Hoare triple {49868#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {49868#true} is VALID [2018-11-23 12:18:58,303 INFO L273 TraceCheckUtils]: 41: Hoare triple {49868#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {49868#true} is VALID [2018-11-23 12:18:58,303 INFO L273 TraceCheckUtils]: 42: Hoare triple {49868#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {49868#true} is VALID [2018-11-23 12:18:58,304 INFO L273 TraceCheckUtils]: 43: Hoare triple {49868#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {49868#true} is VALID [2018-11-23 12:18:58,304 INFO L273 TraceCheckUtils]: 44: Hoare triple {49868#true} assume !!(~i~1 < 20);assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;call write~int(#t~nondet5, ~#x~0.base, ~#x~0.offset + 4 * ~i~1, 4);havoc #t~nondet5; {49868#true} is VALID [2018-11-23 12:18:58,304 INFO L273 TraceCheckUtils]: 45: Hoare triple {49868#true} #t~post4 := ~i~1;~i~1 := 1 + #t~post4;havoc #t~post4; {49868#true} is VALID [2018-11-23 12:18:58,304 INFO L273 TraceCheckUtils]: 46: Hoare triple {49868#true} assume !(~i~1 < 20); {49868#true} is VALID [2018-11-23 12:18:58,304 INFO L256 TraceCheckUtils]: 47: Hoare triple {49868#true} call #t~ret6 := max(~#x~0.base, ~#x~0.offset); {49868#true} is VALID [2018-11-23 12:18:58,304 INFO L273 TraceCheckUtils]: 48: Hoare triple {49868#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {49868#true} is VALID [2018-11-23 12:18:58,304 INFO L273 TraceCheckUtils]: 49: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,304 INFO L273 TraceCheckUtils]: 50: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,304 INFO L273 TraceCheckUtils]: 51: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,304 INFO L273 TraceCheckUtils]: 52: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,305 INFO L273 TraceCheckUtils]: 53: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,305 INFO L273 TraceCheckUtils]: 54: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,305 INFO L273 TraceCheckUtils]: 55: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,305 INFO L273 TraceCheckUtils]: 56: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,305 INFO L273 TraceCheckUtils]: 57: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,305 INFO L273 TraceCheckUtils]: 58: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,305 INFO L273 TraceCheckUtils]: 59: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,305 INFO L273 TraceCheckUtils]: 60: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,305 INFO L273 TraceCheckUtils]: 61: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,305 INFO L273 TraceCheckUtils]: 62: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,306 INFO L273 TraceCheckUtils]: 63: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,306 INFO L273 TraceCheckUtils]: 64: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,306 INFO L273 TraceCheckUtils]: 65: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,306 INFO L273 TraceCheckUtils]: 66: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,306 INFO L273 TraceCheckUtils]: 67: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,306 INFO L273 TraceCheckUtils]: 68: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,306 INFO L273 TraceCheckUtils]: 69: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,306 INFO L273 TraceCheckUtils]: 70: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,306 INFO L273 TraceCheckUtils]: 71: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,306 INFO L273 TraceCheckUtils]: 72: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,307 INFO L273 TraceCheckUtils]: 73: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,307 INFO L273 TraceCheckUtils]: 74: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,307 INFO L273 TraceCheckUtils]: 75: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,307 INFO L273 TraceCheckUtils]: 76: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,307 INFO L273 TraceCheckUtils]: 77: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,307 INFO L273 TraceCheckUtils]: 78: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,307 INFO L273 TraceCheckUtils]: 79: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,307 INFO L273 TraceCheckUtils]: 80: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,307 INFO L273 TraceCheckUtils]: 81: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,307 INFO L273 TraceCheckUtils]: 82: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,308 INFO L273 TraceCheckUtils]: 83: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,308 INFO L273 TraceCheckUtils]: 84: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,308 INFO L273 TraceCheckUtils]: 85: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,308 INFO L273 TraceCheckUtils]: 86: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,308 INFO L273 TraceCheckUtils]: 87: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,308 INFO L273 TraceCheckUtils]: 88: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,308 INFO L273 TraceCheckUtils]: 89: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,308 INFO L273 TraceCheckUtils]: 90: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,308 INFO L273 TraceCheckUtils]: 91: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,308 INFO L273 TraceCheckUtils]: 92: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,309 INFO L273 TraceCheckUtils]: 93: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,309 INFO L273 TraceCheckUtils]: 94: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,309 INFO L273 TraceCheckUtils]: 95: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,309 INFO L273 TraceCheckUtils]: 96: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,309 INFO L273 TraceCheckUtils]: 97: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,309 INFO L273 TraceCheckUtils]: 98: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,309 INFO L273 TraceCheckUtils]: 99: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,309 INFO L273 TraceCheckUtils]: 100: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,309 INFO L273 TraceCheckUtils]: 101: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,310 INFO L273 TraceCheckUtils]: 102: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,310 INFO L273 TraceCheckUtils]: 103: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,310 INFO L273 TraceCheckUtils]: 104: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,310 INFO L273 TraceCheckUtils]: 105: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,310 INFO L273 TraceCheckUtils]: 106: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,310 INFO L273 TraceCheckUtils]: 107: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,310 INFO L273 TraceCheckUtils]: 108: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,310 INFO L273 TraceCheckUtils]: 109: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,310 INFO L273 TraceCheckUtils]: 110: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,310 INFO L273 TraceCheckUtils]: 111: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,311 INFO L273 TraceCheckUtils]: 112: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,311 INFO L273 TraceCheckUtils]: 113: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,311 INFO L273 TraceCheckUtils]: 114: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,311 INFO L273 TraceCheckUtils]: 115: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,311 INFO L273 TraceCheckUtils]: 116: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,311 INFO L273 TraceCheckUtils]: 117: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,311 INFO L273 TraceCheckUtils]: 118: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,311 INFO L273 TraceCheckUtils]: 119: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,311 INFO L273 TraceCheckUtils]: 120: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,311 INFO L273 TraceCheckUtils]: 121: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,312 INFO L273 TraceCheckUtils]: 122: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,312 INFO L273 TraceCheckUtils]: 123: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,312 INFO L273 TraceCheckUtils]: 124: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,312 INFO L273 TraceCheckUtils]: 125: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,312 INFO L273 TraceCheckUtils]: 126: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,312 INFO L273 TraceCheckUtils]: 127: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,312 INFO L273 TraceCheckUtils]: 128: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,312 INFO L273 TraceCheckUtils]: 129: Hoare triple {49868#true} assume !(~i~0 < 20); {49868#true} is VALID [2018-11-23 12:18:58,312 INFO L273 TraceCheckUtils]: 130: Hoare triple {49868#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {49868#true} is VALID [2018-11-23 12:18:58,312 INFO L273 TraceCheckUtils]: 131: Hoare triple {49868#true} assume true; {49868#true} is VALID [2018-11-23 12:18:58,313 INFO L268 TraceCheckUtils]: 132: Hoare quadruple {49868#true} {49868#true} #77#return; {49868#true} is VALID [2018-11-23 12:18:58,313 INFO L273 TraceCheckUtils]: 133: Hoare triple {49868#true} assume -2147483648 <= #t~ret6 && #t~ret6 <= 2147483647;~ret~1 := #t~ret6;havoc #t~ret6;call #t~mem7 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem7;havoc #t~mem7;call #t~mem8 := read~int(~#x~0.base, 4 + ~#x~0.offset, 4);call write~int(#t~mem8, ~#x~0.base, ~#x~0.offset, 4);havoc #t~mem8;call write~int(~temp~0, ~#x~0.base, 4 + ~#x~0.offset, 4); {49868#true} is VALID [2018-11-23 12:18:58,313 INFO L256 TraceCheckUtils]: 134: Hoare triple {49868#true} call #t~ret9 := max(~#x~0.base, ~#x~0.offset); {49868#true} is VALID [2018-11-23 12:18:58,313 INFO L273 TraceCheckUtils]: 135: Hoare triple {49868#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {49868#true} is VALID [2018-11-23 12:18:58,313 INFO L273 TraceCheckUtils]: 136: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,313 INFO L273 TraceCheckUtils]: 137: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,313 INFO L273 TraceCheckUtils]: 138: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,313 INFO L273 TraceCheckUtils]: 139: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,313 INFO L273 TraceCheckUtils]: 140: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,313 INFO L273 TraceCheckUtils]: 141: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,314 INFO L273 TraceCheckUtils]: 142: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,314 INFO L273 TraceCheckUtils]: 143: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,314 INFO L273 TraceCheckUtils]: 144: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,314 INFO L273 TraceCheckUtils]: 145: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,314 INFO L273 TraceCheckUtils]: 146: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,314 INFO L273 TraceCheckUtils]: 147: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,314 INFO L273 TraceCheckUtils]: 148: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,314 INFO L273 TraceCheckUtils]: 149: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,314 INFO L273 TraceCheckUtils]: 150: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,315 INFO L273 TraceCheckUtils]: 151: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,315 INFO L273 TraceCheckUtils]: 152: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,315 INFO L273 TraceCheckUtils]: 153: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,315 INFO L273 TraceCheckUtils]: 154: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,315 INFO L273 TraceCheckUtils]: 155: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,315 INFO L273 TraceCheckUtils]: 156: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,315 INFO L273 TraceCheckUtils]: 157: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,315 INFO L273 TraceCheckUtils]: 158: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,315 INFO L273 TraceCheckUtils]: 159: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,315 INFO L273 TraceCheckUtils]: 160: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,316 INFO L273 TraceCheckUtils]: 161: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,316 INFO L273 TraceCheckUtils]: 162: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,316 INFO L273 TraceCheckUtils]: 163: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,316 INFO L273 TraceCheckUtils]: 164: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,316 INFO L273 TraceCheckUtils]: 165: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,316 INFO L273 TraceCheckUtils]: 166: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,316 INFO L273 TraceCheckUtils]: 167: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,316 INFO L273 TraceCheckUtils]: 168: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,316 INFO L273 TraceCheckUtils]: 169: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,316 INFO L273 TraceCheckUtils]: 170: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,317 INFO L273 TraceCheckUtils]: 171: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,317 INFO L273 TraceCheckUtils]: 172: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,317 INFO L273 TraceCheckUtils]: 173: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,317 INFO L273 TraceCheckUtils]: 174: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,317 INFO L273 TraceCheckUtils]: 175: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,317 INFO L273 TraceCheckUtils]: 176: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,317 INFO L273 TraceCheckUtils]: 177: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,317 INFO L273 TraceCheckUtils]: 178: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,317 INFO L273 TraceCheckUtils]: 179: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,317 INFO L273 TraceCheckUtils]: 180: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,318 INFO L273 TraceCheckUtils]: 181: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,318 INFO L273 TraceCheckUtils]: 182: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,318 INFO L273 TraceCheckUtils]: 183: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,318 INFO L273 TraceCheckUtils]: 184: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,318 INFO L273 TraceCheckUtils]: 185: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,318 INFO L273 TraceCheckUtils]: 186: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,318 INFO L273 TraceCheckUtils]: 187: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,318 INFO L273 TraceCheckUtils]: 188: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,318 INFO L273 TraceCheckUtils]: 189: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,318 INFO L273 TraceCheckUtils]: 190: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,319 INFO L273 TraceCheckUtils]: 191: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,319 INFO L273 TraceCheckUtils]: 192: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,319 INFO L273 TraceCheckUtils]: 193: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,319 INFO L273 TraceCheckUtils]: 194: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,319 INFO L273 TraceCheckUtils]: 195: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,319 INFO L273 TraceCheckUtils]: 196: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,319 INFO L273 TraceCheckUtils]: 197: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,319 INFO L273 TraceCheckUtils]: 198: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,319 INFO L273 TraceCheckUtils]: 199: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,319 INFO L273 TraceCheckUtils]: 200: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,320 INFO L273 TraceCheckUtils]: 201: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,320 INFO L273 TraceCheckUtils]: 202: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,320 INFO L273 TraceCheckUtils]: 203: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,320 INFO L273 TraceCheckUtils]: 204: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,320 INFO L273 TraceCheckUtils]: 205: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,320 INFO L273 TraceCheckUtils]: 206: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,320 INFO L273 TraceCheckUtils]: 207: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,320 INFO L273 TraceCheckUtils]: 208: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,320 INFO L273 TraceCheckUtils]: 209: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,320 INFO L273 TraceCheckUtils]: 210: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,321 INFO L273 TraceCheckUtils]: 211: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,321 INFO L273 TraceCheckUtils]: 212: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,321 INFO L273 TraceCheckUtils]: 213: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,321 INFO L273 TraceCheckUtils]: 214: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,321 INFO L273 TraceCheckUtils]: 215: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,321 INFO L273 TraceCheckUtils]: 216: Hoare triple {49868#true} assume !(~i~0 < 20); {49868#true} is VALID [2018-11-23 12:18:58,321 INFO L273 TraceCheckUtils]: 217: Hoare triple {49868#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {49868#true} is VALID [2018-11-23 12:18:58,321 INFO L273 TraceCheckUtils]: 218: Hoare triple {49868#true} assume true; {49868#true} is VALID [2018-11-23 12:18:58,321 INFO L268 TraceCheckUtils]: 219: Hoare quadruple {49868#true} {49868#true} #79#return; {49868#true} is VALID [2018-11-23 12:18:58,322 INFO L273 TraceCheckUtils]: 220: Hoare triple {49868#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~ret2~0 := #t~ret9;havoc #t~ret9;call #t~mem10 := read~int(~#x~0.base, ~#x~0.offset, 4);~temp~0 := #t~mem10;havoc #t~mem10;~i~2 := 0; {49870#(= main_~i~2 0)} is VALID [2018-11-23 12:18:58,322 INFO L273 TraceCheckUtils]: 221: Hoare triple {49870#(= main_~i~2 0)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {49870#(= main_~i~2 0)} is VALID [2018-11-23 12:18:58,322 INFO L273 TraceCheckUtils]: 222: Hoare triple {49870#(= main_~i~2 0)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {49871#(<= main_~i~2 1)} is VALID [2018-11-23 12:18:58,323 INFO L273 TraceCheckUtils]: 223: Hoare triple {49871#(<= main_~i~2 1)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {49871#(<= main_~i~2 1)} is VALID [2018-11-23 12:18:58,323 INFO L273 TraceCheckUtils]: 224: Hoare triple {49871#(<= main_~i~2 1)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {49872#(<= main_~i~2 2)} is VALID [2018-11-23 12:18:58,324 INFO L273 TraceCheckUtils]: 225: Hoare triple {49872#(<= main_~i~2 2)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {49872#(<= main_~i~2 2)} is VALID [2018-11-23 12:18:58,324 INFO L273 TraceCheckUtils]: 226: Hoare triple {49872#(<= main_~i~2 2)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {49873#(<= main_~i~2 3)} is VALID [2018-11-23 12:18:58,324 INFO L273 TraceCheckUtils]: 227: Hoare triple {49873#(<= main_~i~2 3)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {49873#(<= main_~i~2 3)} is VALID [2018-11-23 12:18:58,325 INFO L273 TraceCheckUtils]: 228: Hoare triple {49873#(<= main_~i~2 3)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {49874#(<= main_~i~2 4)} is VALID [2018-11-23 12:18:58,325 INFO L273 TraceCheckUtils]: 229: Hoare triple {49874#(<= main_~i~2 4)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {49874#(<= main_~i~2 4)} is VALID [2018-11-23 12:18:58,326 INFO L273 TraceCheckUtils]: 230: Hoare triple {49874#(<= main_~i~2 4)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {49875#(<= main_~i~2 5)} is VALID [2018-11-23 12:18:58,327 INFO L273 TraceCheckUtils]: 231: Hoare triple {49875#(<= main_~i~2 5)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {49875#(<= main_~i~2 5)} is VALID [2018-11-23 12:18:58,327 INFO L273 TraceCheckUtils]: 232: Hoare triple {49875#(<= main_~i~2 5)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {49876#(<= main_~i~2 6)} is VALID [2018-11-23 12:18:58,328 INFO L273 TraceCheckUtils]: 233: Hoare triple {49876#(<= main_~i~2 6)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {49876#(<= main_~i~2 6)} is VALID [2018-11-23 12:18:58,328 INFO L273 TraceCheckUtils]: 234: Hoare triple {49876#(<= main_~i~2 6)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {49877#(<= main_~i~2 7)} is VALID [2018-11-23 12:18:58,329 INFO L273 TraceCheckUtils]: 235: Hoare triple {49877#(<= main_~i~2 7)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {49877#(<= main_~i~2 7)} is VALID [2018-11-23 12:18:58,330 INFO L273 TraceCheckUtils]: 236: Hoare triple {49877#(<= main_~i~2 7)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {49878#(<= main_~i~2 8)} is VALID [2018-11-23 12:18:58,330 INFO L273 TraceCheckUtils]: 237: Hoare triple {49878#(<= main_~i~2 8)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {49878#(<= main_~i~2 8)} is VALID [2018-11-23 12:18:58,331 INFO L273 TraceCheckUtils]: 238: Hoare triple {49878#(<= main_~i~2 8)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {49879#(<= main_~i~2 9)} is VALID [2018-11-23 12:18:58,331 INFO L273 TraceCheckUtils]: 239: Hoare triple {49879#(<= main_~i~2 9)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {49879#(<= main_~i~2 9)} is VALID [2018-11-23 12:18:58,332 INFO L273 TraceCheckUtils]: 240: Hoare triple {49879#(<= main_~i~2 9)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {49880#(<= main_~i~2 10)} is VALID [2018-11-23 12:18:58,333 INFO L273 TraceCheckUtils]: 241: Hoare triple {49880#(<= main_~i~2 10)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {49880#(<= main_~i~2 10)} is VALID [2018-11-23 12:18:58,333 INFO L273 TraceCheckUtils]: 242: Hoare triple {49880#(<= main_~i~2 10)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {49881#(<= main_~i~2 11)} is VALID [2018-11-23 12:18:58,334 INFO L273 TraceCheckUtils]: 243: Hoare triple {49881#(<= main_~i~2 11)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {49881#(<= main_~i~2 11)} is VALID [2018-11-23 12:18:58,335 INFO L273 TraceCheckUtils]: 244: Hoare triple {49881#(<= main_~i~2 11)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {49882#(<= main_~i~2 12)} is VALID [2018-11-23 12:18:58,335 INFO L273 TraceCheckUtils]: 245: Hoare triple {49882#(<= main_~i~2 12)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {49882#(<= main_~i~2 12)} is VALID [2018-11-23 12:18:58,336 INFO L273 TraceCheckUtils]: 246: Hoare triple {49882#(<= main_~i~2 12)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {49883#(<= main_~i~2 13)} is VALID [2018-11-23 12:18:58,336 INFO L273 TraceCheckUtils]: 247: Hoare triple {49883#(<= main_~i~2 13)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {49883#(<= main_~i~2 13)} is VALID [2018-11-23 12:18:58,337 INFO L273 TraceCheckUtils]: 248: Hoare triple {49883#(<= main_~i~2 13)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {49884#(<= main_~i~2 14)} is VALID [2018-11-23 12:18:58,338 INFO L273 TraceCheckUtils]: 249: Hoare triple {49884#(<= main_~i~2 14)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {49884#(<= main_~i~2 14)} is VALID [2018-11-23 12:18:58,338 INFO L273 TraceCheckUtils]: 250: Hoare triple {49884#(<= main_~i~2 14)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {49885#(<= main_~i~2 15)} is VALID [2018-11-23 12:18:58,339 INFO L273 TraceCheckUtils]: 251: Hoare triple {49885#(<= main_~i~2 15)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {49885#(<= main_~i~2 15)} is VALID [2018-11-23 12:18:58,339 INFO L273 TraceCheckUtils]: 252: Hoare triple {49885#(<= main_~i~2 15)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {49886#(<= main_~i~2 16)} is VALID [2018-11-23 12:18:58,340 INFO L273 TraceCheckUtils]: 253: Hoare triple {49886#(<= main_~i~2 16)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {49886#(<= main_~i~2 16)} is VALID [2018-11-23 12:18:58,341 INFO L273 TraceCheckUtils]: 254: Hoare triple {49886#(<= main_~i~2 16)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {49887#(<= main_~i~2 17)} is VALID [2018-11-23 12:18:58,341 INFO L273 TraceCheckUtils]: 255: Hoare triple {49887#(<= main_~i~2 17)} assume !!(~i~2 < 19);call #t~mem12 := read~int(~#x~0.base, ~#x~0.offset + 4 * (1 + ~i~2), 4);call write~int(#t~mem12, ~#x~0.base, ~#x~0.offset + 4 * ~i~2, 4);havoc #t~mem12; {49887#(<= main_~i~2 17)} is VALID [2018-11-23 12:18:58,342 INFO L273 TraceCheckUtils]: 256: Hoare triple {49887#(<= main_~i~2 17)} #t~post11 := ~i~2;~i~2 := 1 + #t~post11;havoc #t~post11; {49888#(<= main_~i~2 18)} is VALID [2018-11-23 12:18:58,343 INFO L273 TraceCheckUtils]: 257: Hoare triple {49888#(<= main_~i~2 18)} assume !(~i~2 < 19); {49869#false} is VALID [2018-11-23 12:18:58,343 INFO L273 TraceCheckUtils]: 258: Hoare triple {49869#false} call write~int(~temp~0, ~#x~0.base, 76 + ~#x~0.offset, 4); {49869#false} is VALID [2018-11-23 12:18:58,343 INFO L256 TraceCheckUtils]: 259: Hoare triple {49869#false} call #t~ret13 := max(~#x~0.base, ~#x~0.offset); {49868#true} is VALID [2018-11-23 12:18:58,343 INFO L273 TraceCheckUtils]: 260: Hoare triple {49868#true} ~x.base, ~x.offset := #in~x.base, #in~x.offset;havoc ~i~0;havoc ~ret~0;~ret~0 := 0;~i~0 := 0; {49868#true} is VALID [2018-11-23 12:18:58,343 INFO L273 TraceCheckUtils]: 261: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,343 INFO L273 TraceCheckUtils]: 262: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,344 INFO L273 TraceCheckUtils]: 263: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,344 INFO L273 TraceCheckUtils]: 264: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,344 INFO L273 TraceCheckUtils]: 265: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,344 INFO L273 TraceCheckUtils]: 266: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,344 INFO L273 TraceCheckUtils]: 267: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,345 INFO L273 TraceCheckUtils]: 268: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,345 INFO L273 TraceCheckUtils]: 269: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,345 INFO L273 TraceCheckUtils]: 270: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,345 INFO L273 TraceCheckUtils]: 271: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,345 INFO L273 TraceCheckUtils]: 272: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,345 INFO L273 TraceCheckUtils]: 273: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,346 INFO L273 TraceCheckUtils]: 274: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,346 INFO L273 TraceCheckUtils]: 275: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,346 INFO L273 TraceCheckUtils]: 276: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,346 INFO L273 TraceCheckUtils]: 277: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,346 INFO L273 TraceCheckUtils]: 278: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,346 INFO L273 TraceCheckUtils]: 279: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,347 INFO L273 TraceCheckUtils]: 280: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,347 INFO L273 TraceCheckUtils]: 281: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,347 INFO L273 TraceCheckUtils]: 282: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,347 INFO L273 TraceCheckUtils]: 283: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,347 INFO L273 TraceCheckUtils]: 284: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,347 INFO L273 TraceCheckUtils]: 285: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,348 INFO L273 TraceCheckUtils]: 286: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,348 INFO L273 TraceCheckUtils]: 287: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,348 INFO L273 TraceCheckUtils]: 288: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,348 INFO L273 TraceCheckUtils]: 289: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,348 INFO L273 TraceCheckUtils]: 290: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,348 INFO L273 TraceCheckUtils]: 291: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,348 INFO L273 TraceCheckUtils]: 292: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,348 INFO L273 TraceCheckUtils]: 293: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,348 INFO L273 TraceCheckUtils]: 294: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,348 INFO L273 TraceCheckUtils]: 295: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,349 INFO L273 TraceCheckUtils]: 296: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,349 INFO L273 TraceCheckUtils]: 297: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,349 INFO L273 TraceCheckUtils]: 298: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,349 INFO L273 TraceCheckUtils]: 299: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,349 INFO L273 TraceCheckUtils]: 300: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,349 INFO L273 TraceCheckUtils]: 301: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,349 INFO L273 TraceCheckUtils]: 302: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,349 INFO L273 TraceCheckUtils]: 303: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,349 INFO L273 TraceCheckUtils]: 304: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,349 INFO L273 TraceCheckUtils]: 305: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,350 INFO L273 TraceCheckUtils]: 306: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,350 INFO L273 TraceCheckUtils]: 307: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,350 INFO L273 TraceCheckUtils]: 308: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,350 INFO L273 TraceCheckUtils]: 309: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,350 INFO L273 TraceCheckUtils]: 310: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,350 INFO L273 TraceCheckUtils]: 311: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,350 INFO L273 TraceCheckUtils]: 312: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,350 INFO L273 TraceCheckUtils]: 313: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,350 INFO L273 TraceCheckUtils]: 314: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,350 INFO L273 TraceCheckUtils]: 315: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,351 INFO L273 TraceCheckUtils]: 316: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,351 INFO L273 TraceCheckUtils]: 317: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,351 INFO L273 TraceCheckUtils]: 318: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,351 INFO L273 TraceCheckUtils]: 319: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,351 INFO L273 TraceCheckUtils]: 320: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,351 INFO L273 TraceCheckUtils]: 321: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,351 INFO L273 TraceCheckUtils]: 322: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,351 INFO L273 TraceCheckUtils]: 323: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,351 INFO L273 TraceCheckUtils]: 324: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,351 INFO L273 TraceCheckUtils]: 325: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,351 INFO L273 TraceCheckUtils]: 326: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,352 INFO L273 TraceCheckUtils]: 327: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,352 INFO L273 TraceCheckUtils]: 328: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,352 INFO L273 TraceCheckUtils]: 329: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,352 INFO L273 TraceCheckUtils]: 330: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,352 INFO L273 TraceCheckUtils]: 331: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,352 INFO L273 TraceCheckUtils]: 332: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,352 INFO L273 TraceCheckUtils]: 333: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,352 INFO L273 TraceCheckUtils]: 334: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,352 INFO L273 TraceCheckUtils]: 335: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,352 INFO L273 TraceCheckUtils]: 336: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,352 INFO L273 TraceCheckUtils]: 337: Hoare triple {49868#true} assume !!(~i~0 < 20);call #t~mem1 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4); {49868#true} is VALID [2018-11-23 12:18:58,353 INFO L273 TraceCheckUtils]: 338: Hoare triple {49868#true} assume ~ret~0 < #t~mem1;call #t~mem2 := read~int(~x.base, ~x.offset + 4 * ~i~0, 4);#t~ite3 := #t~mem2; {49868#true} is VALID [2018-11-23 12:18:58,353 INFO L273 TraceCheckUtils]: 339: Hoare triple {49868#true} ~ret~0 := #t~ite3;havoc #t~ite3;havoc #t~mem2;havoc #t~mem1; {49868#true} is VALID [2018-11-23 12:18:58,353 INFO L273 TraceCheckUtils]: 340: Hoare triple {49868#true} #t~post0 := ~i~0;~i~0 := 1 + #t~post0;havoc #t~post0; {49868#true} is VALID [2018-11-23 12:18:58,353 INFO L273 TraceCheckUtils]: 341: Hoare triple {49868#true} assume !(~i~0 < 20); {49868#true} is VALID [2018-11-23 12:18:58,353 INFO L273 TraceCheckUtils]: 342: Hoare triple {49868#true} #res := (if ~ret~0 % 4294967296 <= 2147483647 then ~ret~0 % 4294967296 else ~ret~0 % 4294967296 - 4294967296); {49868#true} is VALID [2018-11-23 12:18:58,353 INFO L273 TraceCheckUtils]: 343: Hoare triple {49868#true} assume true; {49868#true} is VALID [2018-11-23 12:18:58,353 INFO L268 TraceCheckUtils]: 344: Hoare quadruple {49868#true} {49869#false} #81#return; {49869#false} is VALID [2018-11-23 12:18:58,353 INFO L273 TraceCheckUtils]: 345: Hoare triple {49869#false} assume -2147483648 <= #t~ret13 && #t~ret13 <= 2147483647;~ret5~0 := #t~ret13;havoc #t~ret13; {49869#false} is VALID [2018-11-23 12:18:58,353 INFO L273 TraceCheckUtils]: 346: Hoare triple {49869#false} assume ~ret~1 != ~ret2~0 || ~ret~1 != ~ret5~0; {49869#false} is VALID [2018-11-23 12:18:58,353 INFO L273 TraceCheckUtils]: 347: Hoare triple {49869#false} assume !false; {49869#false} is VALID [2018-11-23 12:18:58,392 INFO L134 CoverageAnalysis]: Checked inductivity of 7999 backedges. 0 proven. 324 refuted. 0 times theorem prover too weak. 7675 trivial. 0 not checked. [2018-11-23 12:18:58,392 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:18:58,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 44 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 44 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:18:58,402 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 12:19:02,332 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 32 check-sat command(s) [2018-11-23 12:19:02,332 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:19:02,416 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:19:02,429 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:19:02,698 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 12 [2018-11-23 12:19:02,702 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 11 [2018-11-23 12:19:02,705 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:02,708 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:02,713 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:02,713 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 3 variables, input treesize:19, output treesize:3 [2018-11-23 12:19:02,716 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:19:02,716 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_15|, main_~i~1, |v_main_#t~nondet5_3|]. (and (= |main_~#x~0.offset| 0) (= (store |v_#memory_int_15| |main_~#x~0.base| (store (select |v_#memory_int_15| |main_~#x~0.base|) (+ (* 4 main_~i~1) |main_~#x~0.offset|) |v_main_#t~nondet5_3|)) |#memory_int|)) [2018-11-23 12:19:02,716 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (= |main_~#x~0.offset| 0) [2018-11-23 12:19:04,001 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:04,003 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 45 treesize of output 50 [2018-11-23 12:19:04,017 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:04,027 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:04,050 INFO L478 Elim1Store]: Elim1 applied some preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 4 new quantified variables, introduced 4 case distinctions, treesize of input 50 treesize of output 74 [2018-11-23 12:19:04,372 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:04,373 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:04,375 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 36 [2018-11-23 12:19:04,387 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:04,404 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-0 vars, 2 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:04,410 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:04,419 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:04,420 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 2 variables, input treesize:48, output treesize:19 [2018-11-23 12:19:04,424 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:19:04,424 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_16|, main_~temp~0]. (let ((.cse2 (select |v_#memory_int_16| |main_~#x~0.base|)) (.cse3 (+ |main_~#x~0.offset| 4))) (let ((.cse1 (select .cse2 .cse3)) (.cse0 (select .cse2 |main_~#x~0.offset|))) (and (<= (+ .cse0 1) .cse1) (= (store |v_#memory_int_16| |main_~#x~0.base| (store (store .cse2 |main_~#x~0.offset| .cse1) .cse3 main_~temp~0)) |#memory_int|) (= |main_~#x~0.offset| 0) (<= main_~temp~0 .cse0)))) [2018-11-23 12:19:04,424 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (and (let ((.cse0 (select |#memory_int| |main_~#x~0.base|))) (<= (+ (select .cse0 (+ |main_~#x~0.offset| 4)) 1) (select .cse0 |main_~#x~0.offset|))) (= |main_~#x~0.offset| 0))