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/array-crafted/zero_sum_m4_true-unreach-call.c -------------------------------------------------------------------------------- This is Ultimate 0.1.23-61f4311 [2018-11-23 12:32:50,072 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 12:32:50,074 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 12:32:50,094 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 12:32:50,094 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 12:32:50,095 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 12:32:50,097 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 12:32:50,099 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 12:32:50,102 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 12:32:50,102 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 12:32:50,106 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 12:32:50,107 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 12:32:50,112 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 12:32:50,113 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 12:32:50,114 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 12:32:50,115 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 12:32:50,116 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 12:32:50,120 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 12:32:50,125 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 12:32:50,130 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 12:32:50,131 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 12:32:50,132 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 12:32:50,137 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 12:32:50,137 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 12:32:50,137 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 12:32:50,140 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 12:32:50,141 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 12:32:50,142 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 12:32:50,143 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 12:32:50,146 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 12:32:50,147 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 12:32:50,147 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 12:32:50,148 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 12:32:50,148 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 12:32:50,150 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 12:32:50,151 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 12:32:50,151 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:32:50,181 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 12:32:50,182 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 12:32:50,183 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 12:32:50,183 INFO L133 SettingsManager]: * ... calls to implemented procedures=ONLY_FOR_CONCURRENT_PROGRAMS [2018-11-23 12:32:50,183 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 12:32:50,185 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 12:32:50,185 INFO L133 SettingsManager]: * Use SBE=true [2018-11-23 12:32:50,185 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 12:32:50,185 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 12:32:50,185 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-23 12:32:50,186 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 12:32:50,186 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 12:32:50,186 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 12:32:50,186 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 12:32:50,186 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 12:32:50,187 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 12:32:50,187 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 12:32:50,187 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 12:32:50,187 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 12:32:50,188 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 12:32:50,188 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-23 12:32:50,188 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 12:32:50,188 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-23 12:32:50,188 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 12:32:50,189 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 12:32:50,189 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 12:32:50,189 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 12:32:50,189 INFO L133 SettingsManager]: * Trace refinement strategy=CAMEL [2018-11-23 12:32:50,189 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 12:32:50,190 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-11-23 12:32:50,190 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2018-11-23 12:32:50,257 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 12:32:50,272 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 12:32:50,279 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 12:32:50,281 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 12:32:50,281 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 12:32:50,282 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/array-crafted/zero_sum_m4_true-unreach-call.c [2018-11-23 12:32:50,347 INFO L221 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/bad596c70/74c2a520450041749917dbbaee8b4649/FLAG3103eff63 [2018-11-23 12:32:50,809 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 12:32:50,810 INFO L161 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/array-crafted/zero_sum_m4_true-unreach-call.c [2018-11-23 12:32:50,816 INFO L355 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/bad596c70/74c2a520450041749917dbbaee8b4649/FLAG3103eff63 [2018-11-23 12:32:51,197 INFO L363 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/bad596c70/74c2a520450041749917dbbaee8b4649 [2018-11-23 12:32:51,206 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 12:32:51,207 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 12:32:51,208 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 12:32:51,208 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 12:32:51,212 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 12:32:51,214 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 12:32:51" (1/1) ... [2018-11-23 12:32:51,216 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4607f6e3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:32:51, skipping insertion in model container [2018-11-23 12:32:51,217 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 12:32:51" (1/1) ... [2018-11-23 12:32:51,226 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 12:32:51,247 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 12:32:51,492 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 12:32:51,499 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 12:32:51,554 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 12:32:51,581 INFO L195 MainTranslator]: Completed translation [2018-11-23 12:32:51,581 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:32:51 WrapperNode [2018-11-23 12:32:51,581 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 12:32:51,582 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 12:32:51,583 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 12:32:51,583 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 12:32:51,593 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:32:51" (1/1) ... [2018-11-23 12:32:51,605 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:32:51" (1/1) ... [2018-11-23 12:32:51,615 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 12:32:51,616 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 12:32:51,616 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 12:32:51,616 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 12:32:51,629 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:32:51" (1/1) ... [2018-11-23 12:32:51,629 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:32:51" (1/1) ... [2018-11-23 12:32:51,631 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:32:51" (1/1) ... [2018-11-23 12:32:51,631 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:32:51" (1/1) ... [2018-11-23 12:32:51,667 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:32:51" (1/1) ... [2018-11-23 12:32:51,684 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:32:51" (1/1) ... [2018-11-23 12:32:51,686 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:32:51" (1/1) ... [2018-11-23 12:32:51,691 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 12:32:51,694 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 12:32:51,694 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 12:32:51,694 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 12:32:51,695 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:32:51" (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:32:51,853 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-23 12:32:51,853 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-23 12:32:51,853 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 12:32:51,853 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 12:32:51,854 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 12:32:51,854 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-23 12:32:51,854 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-23 12:32:51,854 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-23 12:32:51,854 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2018-11-23 12:32:51,855 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2018-11-23 12:32:51,855 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 12:32:52,917 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 12:32:52,918 INFO L280 CfgBuilder]: Removed 8 assue(true) statements. [2018-11-23 12:32:52,918 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 12:32:52 BoogieIcfgContainer [2018-11-23 12:32:52,918 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 12:32:52,919 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-23 12:32:52,920 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-23 12:32:52,923 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-23 12:32:52,924 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 12:32:51" (1/3) ... [2018-11-23 12:32:52,925 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@63787da2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 12:32:52, skipping insertion in model container [2018-11-23 12:32:52,925 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:32:51" (2/3) ... [2018-11-23 12:32:52,925 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@63787da2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 12:32:52, skipping insertion in model container [2018-11-23 12:32:52,925 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 12:32:52" (3/3) ... [2018-11-23 12:32:52,927 INFO L112 eAbstractionObserver]: Analyzing ICFG zero_sum_m4_true-unreach-call.c [2018-11-23 12:32:52,938 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-23 12:32:52,945 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-23 12:32:52,963 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-23 12:32:52,997 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-23 12:32:52,998 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-23 12:32:52,998 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-23 12:32:52,998 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-23 12:32:53,000 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-23 12:32:53,000 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-23 12:32:53,000 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-23 12:32:53,001 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-23 12:32:53,001 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-23 12:32:53,020 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states. [2018-11-23 12:32:53,027 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2018-11-23 12:32:53,027 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:32:53,028 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:32:53,030 INFO L423 AbstractCegarLoop]: === Iteration 1 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:32:53,036 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:32:53,036 INFO L82 PathProgramCache]: Analyzing trace with hash 449055759, now seen corresponding path program 1 times [2018-11-23 12:32:53,038 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:32:53,038 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:32:53,083 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:53,083 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:32:53,083 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:53,131 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:53,185 INFO L256 TraceCheckUtils]: 0: Hoare triple {46#true} call ULTIMATE.init(); {46#true} is VALID [2018-11-23 12:32:53,189 INFO L273 TraceCheckUtils]: 1: Hoare triple {46#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {46#true} is VALID [2018-11-23 12:32:53,190 INFO L273 TraceCheckUtils]: 2: Hoare triple {46#true} assume true; {46#true} is VALID [2018-11-23 12:32:53,191 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {46#true} {46#true} #139#return; {46#true} is VALID [2018-11-23 12:32:53,191 INFO L256 TraceCheckUtils]: 4: Hoare triple {46#true} call #t~ret18 := main(); {46#true} is VALID [2018-11-23 12:32:53,191 INFO L273 TraceCheckUtils]: 5: Hoare triple {46#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {46#true} is VALID [2018-11-23 12:32:53,192 INFO L273 TraceCheckUtils]: 6: Hoare triple {46#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(2 * ~SIZE~0);~sum~0 := 0;~i~0 := 0; {46#true} is VALID [2018-11-23 12:32:53,193 INFO L273 TraceCheckUtils]: 7: Hoare triple {46#true} assume !true; {47#false} is VALID [2018-11-23 12:32:53,193 INFO L273 TraceCheckUtils]: 8: Hoare triple {47#false} ~i~0 := 0; {47#false} is VALID [2018-11-23 12:32:53,193 INFO L273 TraceCheckUtils]: 9: Hoare triple {47#false} assume !true; {47#false} is VALID [2018-11-23 12:32:53,193 INFO L273 TraceCheckUtils]: 10: Hoare triple {47#false} ~i~0 := 0; {47#false} is VALID [2018-11-23 12:32:53,194 INFO L273 TraceCheckUtils]: 11: Hoare triple {47#false} assume !true; {47#false} is VALID [2018-11-23 12:32:53,194 INFO L273 TraceCheckUtils]: 12: Hoare triple {47#false} ~i~0 := 0; {47#false} is VALID [2018-11-23 12:32:53,194 INFO L273 TraceCheckUtils]: 13: Hoare triple {47#false} assume !(~i~0 < ~SIZE~0); {47#false} is VALID [2018-11-23 12:32:53,195 INFO L273 TraceCheckUtils]: 14: Hoare triple {47#false} ~i~0 := 0; {47#false} is VALID [2018-11-23 12:32:53,195 INFO L273 TraceCheckUtils]: 15: Hoare triple {47#false} assume !(~i~0 < ~SIZE~0); {47#false} is VALID [2018-11-23 12:32:53,195 INFO L273 TraceCheckUtils]: 16: Hoare triple {47#false} ~i~0 := 0; {47#false} is VALID [2018-11-23 12:32:53,196 INFO L273 TraceCheckUtils]: 17: Hoare triple {47#false} assume !(~i~0 < ~SIZE~0); {47#false} is VALID [2018-11-23 12:32:53,196 INFO L273 TraceCheckUtils]: 18: Hoare triple {47#false} ~i~0 := 0; {47#false} is VALID [2018-11-23 12:32:53,196 INFO L273 TraceCheckUtils]: 19: Hoare triple {47#false} assume !(~i~0 < ~SIZE~0); {47#false} is VALID [2018-11-23 12:32:53,196 INFO L273 TraceCheckUtils]: 20: Hoare triple {47#false} ~i~0 := 0; {47#false} is VALID [2018-11-23 12:32:53,197 INFO L273 TraceCheckUtils]: 21: Hoare triple {47#false} assume !(~i~0 < ~SIZE~0); {47#false} is VALID [2018-11-23 12:32:53,197 INFO L256 TraceCheckUtils]: 22: Hoare triple {47#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {47#false} is VALID [2018-11-23 12:32:53,197 INFO L273 TraceCheckUtils]: 23: Hoare triple {47#false} ~cond := #in~cond; {47#false} is VALID [2018-11-23 12:32:53,198 INFO L273 TraceCheckUtils]: 24: Hoare triple {47#false} assume 0 == ~cond; {47#false} is VALID [2018-11-23 12:32:53,198 INFO L273 TraceCheckUtils]: 25: Hoare triple {47#false} assume !false; {47#false} is VALID [2018-11-23 12:32:53,203 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:32:53,206 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 12:32:53,206 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-23 12:32:53,215 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 26 [2018-11-23 12:32:53,218 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:32:53,223 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states. [2018-11-23 12:32:53,343 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:32:53,343 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-23 12:32:53,351 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-23 12:32:53,352 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 12:32:53,355 INFO L87 Difference]: Start difference. First operand 43 states. Second operand 2 states. [2018-11-23 12:32:53,583 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:53,584 INFO L93 Difference]: Finished difference Result 77 states and 109 transitions. [2018-11-23 12:32:53,584 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-23 12:32:53,584 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 26 [2018-11-23 12:32:53,584 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:32:53,586 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-23 12:32:53,598 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 109 transitions. [2018-11-23 12:32:53,598 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-23 12:32:53,605 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 109 transitions. [2018-11-23 12:32:53,605 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 109 transitions. [2018-11-23 12:32:54,115 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:32:54,128 INFO L225 Difference]: With dead ends: 77 [2018-11-23 12:32:54,128 INFO L226 Difference]: Without dead ends: 35 [2018-11-23 12:32:54,132 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 12:32:54,148 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2018-11-23 12:32:54,190 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 35. [2018-11-23 12:32:54,191 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:32:54,191 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand 35 states. [2018-11-23 12:32:54,192 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand 35 states. [2018-11-23 12:32:54,192 INFO L87 Difference]: Start difference. First operand 35 states. Second operand 35 states. [2018-11-23 12:32:54,196 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:54,197 INFO L93 Difference]: Finished difference Result 35 states and 42 transitions. [2018-11-23 12:32:54,197 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 42 transitions. [2018-11-23 12:32:54,198 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:32:54,198 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:32:54,198 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand 35 states. [2018-11-23 12:32:54,198 INFO L87 Difference]: Start difference. First operand 35 states. Second operand 35 states. [2018-11-23 12:32:54,203 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:54,203 INFO L93 Difference]: Finished difference Result 35 states and 42 transitions. [2018-11-23 12:32:54,204 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 42 transitions. [2018-11-23 12:32:54,204 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:32:54,205 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:32:54,205 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:32:54,205 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:32:54,205 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 35 states. [2018-11-23 12:32:54,208 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 42 transitions. [2018-11-23 12:32:54,210 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 42 transitions. Word has length 26 [2018-11-23 12:32:54,210 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:32:54,211 INFO L480 AbstractCegarLoop]: Abstraction has 35 states and 42 transitions. [2018-11-23 12:32:54,211 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-23 12:32:54,211 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 42 transitions. [2018-11-23 12:32:54,212 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2018-11-23 12:32:54,212 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:32:54,213 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:32:54,213 INFO L423 AbstractCegarLoop]: === Iteration 2 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:32:54,213 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:32:54,214 INFO L82 PathProgramCache]: Analyzing trace with hash 1235619837, now seen corresponding path program 1 times [2018-11-23 12:32:54,214 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:32:54,214 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:32:54,215 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:54,215 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:32:54,216 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:54,245 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:54,386 INFO L256 TraceCheckUtils]: 0: Hoare triple {269#true} call ULTIMATE.init(); {269#true} is VALID [2018-11-23 12:32:54,386 INFO L273 TraceCheckUtils]: 1: Hoare triple {269#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {269#true} is VALID [2018-11-23 12:32:54,387 INFO L273 TraceCheckUtils]: 2: Hoare triple {269#true} assume true; {269#true} is VALID [2018-11-23 12:32:54,387 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {269#true} {269#true} #139#return; {269#true} is VALID [2018-11-23 12:32:54,387 INFO L256 TraceCheckUtils]: 4: Hoare triple {269#true} call #t~ret18 := main(); {269#true} is VALID [2018-11-23 12:32:54,388 INFO L273 TraceCheckUtils]: 5: Hoare triple {269#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {269#true} is VALID [2018-11-23 12:32:54,394 INFO L273 TraceCheckUtils]: 6: Hoare triple {269#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(2 * ~SIZE~0);~sum~0 := 0;~i~0 := 0; {271#(= main_~sum~0 0)} is VALID [2018-11-23 12:32:54,395 INFO L273 TraceCheckUtils]: 7: Hoare triple {271#(= main_~sum~0 0)} assume !(~i~0 < ~SIZE~0); {271#(= main_~sum~0 0)} is VALID [2018-11-23 12:32:54,396 INFO L273 TraceCheckUtils]: 8: Hoare triple {271#(= main_~sum~0 0)} ~i~0 := 0; {271#(= main_~sum~0 0)} is VALID [2018-11-23 12:32:54,396 INFO L273 TraceCheckUtils]: 9: Hoare triple {271#(= main_~sum~0 0)} assume !(~i~0 < ~SIZE~0); {271#(= main_~sum~0 0)} is VALID [2018-11-23 12:32:54,397 INFO L273 TraceCheckUtils]: 10: Hoare triple {271#(= main_~sum~0 0)} ~i~0 := 0; {271#(= main_~sum~0 0)} is VALID [2018-11-23 12:32:54,397 INFO L273 TraceCheckUtils]: 11: Hoare triple {271#(= main_~sum~0 0)} assume !(~i~0 < ~SIZE~0); {271#(= main_~sum~0 0)} is VALID [2018-11-23 12:32:54,398 INFO L273 TraceCheckUtils]: 12: Hoare triple {271#(= main_~sum~0 0)} ~i~0 := 0; {271#(= main_~sum~0 0)} is VALID [2018-11-23 12:32:54,400 INFO L273 TraceCheckUtils]: 13: Hoare triple {271#(= main_~sum~0 0)} assume !(~i~0 < ~SIZE~0); {271#(= main_~sum~0 0)} is VALID [2018-11-23 12:32:54,401 INFO L273 TraceCheckUtils]: 14: Hoare triple {271#(= main_~sum~0 0)} ~i~0 := 0; {271#(= main_~sum~0 0)} is VALID [2018-11-23 12:32:54,402 INFO L273 TraceCheckUtils]: 15: Hoare triple {271#(= main_~sum~0 0)} assume !(~i~0 < ~SIZE~0); {271#(= main_~sum~0 0)} is VALID [2018-11-23 12:32:54,403 INFO L273 TraceCheckUtils]: 16: Hoare triple {271#(= main_~sum~0 0)} ~i~0 := 0; {271#(= main_~sum~0 0)} is VALID [2018-11-23 12:32:54,404 INFO L273 TraceCheckUtils]: 17: Hoare triple {271#(= main_~sum~0 0)} assume !(~i~0 < ~SIZE~0); {271#(= main_~sum~0 0)} is VALID [2018-11-23 12:32:54,405 INFO L273 TraceCheckUtils]: 18: Hoare triple {271#(= main_~sum~0 0)} ~i~0 := 0; {271#(= main_~sum~0 0)} is VALID [2018-11-23 12:32:54,406 INFO L273 TraceCheckUtils]: 19: Hoare triple {271#(= main_~sum~0 0)} assume !(~i~0 < ~SIZE~0); {271#(= main_~sum~0 0)} is VALID [2018-11-23 12:32:54,408 INFO L273 TraceCheckUtils]: 20: Hoare triple {271#(= main_~sum~0 0)} ~i~0 := 0; {271#(= main_~sum~0 0)} is VALID [2018-11-23 12:32:54,409 INFO L273 TraceCheckUtils]: 21: Hoare triple {271#(= main_~sum~0 0)} assume !(~i~0 < ~SIZE~0); {271#(= main_~sum~0 0)} is VALID [2018-11-23 12:32:54,412 INFO L256 TraceCheckUtils]: 22: Hoare triple {271#(= main_~sum~0 0)} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {272#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:32:54,418 INFO L273 TraceCheckUtils]: 23: Hoare triple {272#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {273#(= __VERIFIER_assert_~cond 1)} is VALID [2018-11-23 12:32:54,420 INFO L273 TraceCheckUtils]: 24: Hoare triple {273#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {270#false} is VALID [2018-11-23 12:32:54,420 INFO L273 TraceCheckUtils]: 25: Hoare triple {270#false} assume !false; {270#false} is VALID [2018-11-23 12:32:54,423 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:32:54,424 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 12:32:54,424 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2018-11-23 12:32:54,426 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 26 [2018-11-23 12:32:54,426 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:32:54,426 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2018-11-23 12:32:54,512 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:32:54,512 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2018-11-23 12:32:54,513 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-23 12:32:54,513 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2018-11-23 12:32:54,513 INFO L87 Difference]: Start difference. First operand 35 states and 42 transitions. Second operand 5 states. [2018-11-23 12:32:55,020 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:55,020 INFO L93 Difference]: Finished difference Result 55 states and 69 transitions. [2018-11-23 12:32:55,020 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-23 12:32:55,020 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 26 [2018-11-23 12:32:55,021 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:32:55,021 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 12:32:55,024 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 69 transitions. [2018-11-23 12:32:55,024 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 12:32:55,027 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 69 transitions. [2018-11-23 12:32:55,027 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 69 transitions. [2018-11-23 12:32:55,187 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:32:55,190 INFO L225 Difference]: With dead ends: 55 [2018-11-23 12:32:55,190 INFO L226 Difference]: Without dead ends: 50 [2018-11-23 12:32:55,191 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2018-11-23 12:32:55,192 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2018-11-23 12:32:55,239 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 50. [2018-11-23 12:32:55,239 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:32:55,240 INFO L82 GeneralOperation]: Start isEquivalent. First operand 50 states. Second operand 50 states. [2018-11-23 12:32:55,240 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand 50 states. [2018-11-23 12:32:55,240 INFO L87 Difference]: Start difference. First operand 50 states. Second operand 50 states. [2018-11-23 12:32:55,243 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:55,244 INFO L93 Difference]: Finished difference Result 50 states and 64 transitions. [2018-11-23 12:32:55,244 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 64 transitions. [2018-11-23 12:32:55,245 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:32:55,245 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:32:55,245 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand 50 states. [2018-11-23 12:32:55,246 INFO L87 Difference]: Start difference. First operand 50 states. Second operand 50 states. [2018-11-23 12:32:55,249 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:55,250 INFO L93 Difference]: Finished difference Result 50 states and 64 transitions. [2018-11-23 12:32:55,250 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 64 transitions. [2018-11-23 12:32:55,251 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:32:55,251 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:32:55,251 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:32:55,251 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:32:55,252 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 50 states. [2018-11-23 12:32:55,255 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 64 transitions. [2018-11-23 12:32:55,255 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 64 transitions. Word has length 26 [2018-11-23 12:32:55,255 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:32:55,255 INFO L480 AbstractCegarLoop]: Abstraction has 50 states and 64 transitions. [2018-11-23 12:32:55,255 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2018-11-23 12:32:55,256 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 64 transitions. [2018-11-23 12:32:55,257 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2018-11-23 12:32:55,257 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:32:55,257 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:32:55,257 INFO L423 AbstractCegarLoop]: === Iteration 3 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:32:55,258 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:32:55,258 INFO L82 PathProgramCache]: Analyzing trace with hash 202522171, now seen corresponding path program 1 times [2018-11-23 12:32:55,258 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:32:55,258 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:32:55,259 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:55,260 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:32:55,260 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:55,279 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:55,367 INFO L256 TraceCheckUtils]: 0: Hoare triple {529#true} call ULTIMATE.init(); {529#true} is VALID [2018-11-23 12:32:55,367 INFO L273 TraceCheckUtils]: 1: Hoare triple {529#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {529#true} is VALID [2018-11-23 12:32:55,368 INFO L273 TraceCheckUtils]: 2: Hoare triple {529#true} assume true; {529#true} is VALID [2018-11-23 12:32:55,368 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {529#true} {529#true} #139#return; {529#true} is VALID [2018-11-23 12:32:55,369 INFO L256 TraceCheckUtils]: 4: Hoare triple {529#true} call #t~ret18 := main(); {529#true} is VALID [2018-11-23 12:32:55,369 INFO L273 TraceCheckUtils]: 5: Hoare triple {529#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {529#true} is VALID [2018-11-23 12:32:55,370 INFO L273 TraceCheckUtils]: 6: Hoare triple {529#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(2 * ~SIZE~0);~sum~0 := 0;~i~0 := 0; {531#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:32:55,371 INFO L273 TraceCheckUtils]: 7: Hoare triple {531#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {531#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:32:55,372 INFO L273 TraceCheckUtils]: 8: Hoare triple {531#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {532#(<= (+ main_~i~0 1) ~SIZE~0)} is VALID [2018-11-23 12:32:55,373 INFO L273 TraceCheckUtils]: 9: Hoare triple {532#(<= (+ main_~i~0 1) ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {530#false} is VALID [2018-11-23 12:32:55,373 INFO L273 TraceCheckUtils]: 10: Hoare triple {530#false} ~i~0 := 0; {530#false} is VALID [2018-11-23 12:32:55,373 INFO L273 TraceCheckUtils]: 11: Hoare triple {530#false} assume !(~i~0 < ~SIZE~0); {530#false} is VALID [2018-11-23 12:32:55,374 INFO L273 TraceCheckUtils]: 12: Hoare triple {530#false} ~i~0 := 0; {530#false} is VALID [2018-11-23 12:32:55,374 INFO L273 TraceCheckUtils]: 13: Hoare triple {530#false} assume !(~i~0 < ~SIZE~0); {530#false} is VALID [2018-11-23 12:32:55,374 INFO L273 TraceCheckUtils]: 14: Hoare triple {530#false} ~i~0 := 0; {530#false} is VALID [2018-11-23 12:32:55,375 INFO L273 TraceCheckUtils]: 15: Hoare triple {530#false} assume !(~i~0 < ~SIZE~0); {530#false} is VALID [2018-11-23 12:32:55,375 INFO L273 TraceCheckUtils]: 16: Hoare triple {530#false} ~i~0 := 0; {530#false} is VALID [2018-11-23 12:32:55,376 INFO L273 TraceCheckUtils]: 17: Hoare triple {530#false} assume !(~i~0 < ~SIZE~0); {530#false} is VALID [2018-11-23 12:32:55,376 INFO L273 TraceCheckUtils]: 18: Hoare triple {530#false} ~i~0 := 0; {530#false} is VALID [2018-11-23 12:32:55,376 INFO L273 TraceCheckUtils]: 19: Hoare triple {530#false} assume !(~i~0 < ~SIZE~0); {530#false} is VALID [2018-11-23 12:32:55,377 INFO L273 TraceCheckUtils]: 20: Hoare triple {530#false} ~i~0 := 0; {530#false} is VALID [2018-11-23 12:32:55,377 INFO L273 TraceCheckUtils]: 21: Hoare triple {530#false} assume !(~i~0 < ~SIZE~0); {530#false} is VALID [2018-11-23 12:32:55,377 INFO L273 TraceCheckUtils]: 22: Hoare triple {530#false} ~i~0 := 0; {530#false} is VALID [2018-11-23 12:32:55,378 INFO L273 TraceCheckUtils]: 23: Hoare triple {530#false} assume !(~i~0 < ~SIZE~0); {530#false} is VALID [2018-11-23 12:32:55,378 INFO L256 TraceCheckUtils]: 24: Hoare triple {530#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {530#false} is VALID [2018-11-23 12:32:55,378 INFO L273 TraceCheckUtils]: 25: Hoare triple {530#false} ~cond := #in~cond; {530#false} is VALID [2018-11-23 12:32:55,378 INFO L273 TraceCheckUtils]: 26: Hoare triple {530#false} assume 0 == ~cond; {530#false} is VALID [2018-11-23 12:32:55,379 INFO L273 TraceCheckUtils]: 27: Hoare triple {530#false} assume !false; {530#false} is VALID [2018-11-23 12:32:55,381 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:32:55,381 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:32:55,381 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:32:55,391 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:32:55,433 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:55,455 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:55,460 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:32:55,663 INFO L256 TraceCheckUtils]: 0: Hoare triple {529#true} call ULTIMATE.init(); {529#true} is VALID [2018-11-23 12:32:55,663 INFO L273 TraceCheckUtils]: 1: Hoare triple {529#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {529#true} is VALID [2018-11-23 12:32:55,663 INFO L273 TraceCheckUtils]: 2: Hoare triple {529#true} assume true; {529#true} is VALID [2018-11-23 12:32:55,664 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {529#true} {529#true} #139#return; {529#true} is VALID [2018-11-23 12:32:55,664 INFO L256 TraceCheckUtils]: 4: Hoare triple {529#true} call #t~ret18 := main(); {529#true} is VALID [2018-11-23 12:32:55,664 INFO L273 TraceCheckUtils]: 5: Hoare triple {529#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {529#true} is VALID [2018-11-23 12:32:55,670 INFO L273 TraceCheckUtils]: 6: Hoare triple {529#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(2 * ~SIZE~0);~sum~0 := 0;~i~0 := 0; {554#(and (< 1 ~SIZE~0) (<= main_~i~0 0))} is VALID [2018-11-23 12:32:55,671 INFO L273 TraceCheckUtils]: 7: Hoare triple {554#(and (< 1 ~SIZE~0) (<= main_~i~0 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {554#(and (< 1 ~SIZE~0) (<= main_~i~0 0))} is VALID [2018-11-23 12:32:55,673 INFO L273 TraceCheckUtils]: 8: Hoare triple {554#(and (< 1 ~SIZE~0) (<= main_~i~0 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {561#(and (< 1 ~SIZE~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:32:55,673 INFO L273 TraceCheckUtils]: 9: Hoare triple {561#(and (< 1 ~SIZE~0) (<= main_~i~0 1))} assume !(~i~0 < ~SIZE~0); {530#false} is VALID [2018-11-23 12:32:55,674 INFO L273 TraceCheckUtils]: 10: Hoare triple {530#false} ~i~0 := 0; {530#false} is VALID [2018-11-23 12:32:55,674 INFO L273 TraceCheckUtils]: 11: Hoare triple {530#false} assume !(~i~0 < ~SIZE~0); {530#false} is VALID [2018-11-23 12:32:55,674 INFO L273 TraceCheckUtils]: 12: Hoare triple {530#false} ~i~0 := 0; {530#false} is VALID [2018-11-23 12:32:55,674 INFO L273 TraceCheckUtils]: 13: Hoare triple {530#false} assume !(~i~0 < ~SIZE~0); {530#false} is VALID [2018-11-23 12:32:55,674 INFO L273 TraceCheckUtils]: 14: Hoare triple {530#false} ~i~0 := 0; {530#false} is VALID [2018-11-23 12:32:55,675 INFO L273 TraceCheckUtils]: 15: Hoare triple {530#false} assume !(~i~0 < ~SIZE~0); {530#false} is VALID [2018-11-23 12:32:55,675 INFO L273 TraceCheckUtils]: 16: Hoare triple {530#false} ~i~0 := 0; {530#false} is VALID [2018-11-23 12:32:55,675 INFO L273 TraceCheckUtils]: 17: Hoare triple {530#false} assume !(~i~0 < ~SIZE~0); {530#false} is VALID [2018-11-23 12:32:55,676 INFO L273 TraceCheckUtils]: 18: Hoare triple {530#false} ~i~0 := 0; {530#false} is VALID [2018-11-23 12:32:55,676 INFO L273 TraceCheckUtils]: 19: Hoare triple {530#false} assume !(~i~0 < ~SIZE~0); {530#false} is VALID [2018-11-23 12:32:55,676 INFO L273 TraceCheckUtils]: 20: Hoare triple {530#false} ~i~0 := 0; {530#false} is VALID [2018-11-23 12:32:55,676 INFO L273 TraceCheckUtils]: 21: Hoare triple {530#false} assume !(~i~0 < ~SIZE~0); {530#false} is VALID [2018-11-23 12:32:55,676 INFO L273 TraceCheckUtils]: 22: Hoare triple {530#false} ~i~0 := 0; {530#false} is VALID [2018-11-23 12:32:55,677 INFO L273 TraceCheckUtils]: 23: Hoare triple {530#false} assume !(~i~0 < ~SIZE~0); {530#false} is VALID [2018-11-23 12:32:55,677 INFO L256 TraceCheckUtils]: 24: Hoare triple {530#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {530#false} is VALID [2018-11-23 12:32:55,677 INFO L273 TraceCheckUtils]: 25: Hoare triple {530#false} ~cond := #in~cond; {530#false} is VALID [2018-11-23 12:32:55,678 INFO L273 TraceCheckUtils]: 26: Hoare triple {530#false} assume 0 == ~cond; {530#false} is VALID [2018-11-23 12:32:55,678 INFO L273 TraceCheckUtils]: 27: Hoare triple {530#false} assume !false; {530#false} is VALID [2018-11-23 12:32:55,680 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:32:55,700 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:32:55,700 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4] total 6 [2018-11-23 12:32:55,701 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 28 [2018-11-23 12:32:55,701 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:32:55,701 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2018-11-23 12:32:55,863 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:32:55,864 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2018-11-23 12:32:55,864 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2018-11-23 12:32:55,864 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2018-11-23 12:32:55,864 INFO L87 Difference]: Start difference. First operand 50 states and 64 transitions. Second operand 6 states. [2018-11-23 12:32:56,309 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:56,309 INFO L93 Difference]: Finished difference Result 79 states and 100 transitions. [2018-11-23 12:32:56,309 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-23 12:32:56,309 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 28 [2018-11-23 12:32:56,310 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:32:56,310 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 12:32:56,313 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 80 transitions. [2018-11-23 12:32:56,313 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 12:32:56,316 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 80 transitions. [2018-11-23 12:32:56,316 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 80 transitions. [2018-11-23 12:32:56,501 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:32:56,504 INFO L225 Difference]: With dead ends: 79 [2018-11-23 12:32:56,504 INFO L226 Difference]: Without dead ends: 39 [2018-11-23 12:32:56,505 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 31 GetRequests, 27 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2018-11-23 12:32:56,505 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39 states. [2018-11-23 12:32:56,527 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39 to 38. [2018-11-23 12:32:56,527 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:32:56,527 INFO L82 GeneralOperation]: Start isEquivalent. First operand 39 states. Second operand 38 states. [2018-11-23 12:32:56,527 INFO L74 IsIncluded]: Start isIncluded. First operand 39 states. Second operand 38 states. [2018-11-23 12:32:56,527 INFO L87 Difference]: Start difference. First operand 39 states. Second operand 38 states. [2018-11-23 12:32:56,530 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:56,530 INFO L93 Difference]: Finished difference Result 39 states and 46 transitions. [2018-11-23 12:32:56,530 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 46 transitions. [2018-11-23 12:32:56,531 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:32:56,531 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:32:56,531 INFO L74 IsIncluded]: Start isIncluded. First operand 38 states. Second operand 39 states. [2018-11-23 12:32:56,532 INFO L87 Difference]: Start difference. First operand 38 states. Second operand 39 states. [2018-11-23 12:32:56,534 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:56,534 INFO L93 Difference]: Finished difference Result 39 states and 46 transitions. [2018-11-23 12:32:56,534 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 46 transitions. [2018-11-23 12:32:56,535 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:32:56,535 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:32:56,536 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:32:56,536 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:32:56,536 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 38 states. [2018-11-23 12:32:56,538 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 45 transitions. [2018-11-23 12:32:56,538 INFO L78 Accepts]: Start accepts. Automaton has 38 states and 45 transitions. Word has length 28 [2018-11-23 12:32:56,538 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:32:56,538 INFO L480 AbstractCegarLoop]: Abstraction has 38 states and 45 transitions. [2018-11-23 12:32:56,539 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2018-11-23 12:32:56,539 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 45 transitions. [2018-11-23 12:32:56,540 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2018-11-23 12:32:56,540 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:32:56,540 INFO L402 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:32:56,541 INFO L423 AbstractCegarLoop]: === Iteration 4 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:32:56,541 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:32:56,541 INFO L82 PathProgramCache]: Analyzing trace with hash -466889479, now seen corresponding path program 2 times [2018-11-23 12:32:56,541 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:32:56,541 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:32:56,542 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:56,542 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:32:56,543 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:56,577 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:56,670 INFO L256 TraceCheckUtils]: 0: Hoare triple {861#true} call ULTIMATE.init(); {861#true} is VALID [2018-11-23 12:32:56,670 INFO L273 TraceCheckUtils]: 1: Hoare triple {861#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {861#true} is VALID [2018-11-23 12:32:56,670 INFO L273 TraceCheckUtils]: 2: Hoare triple {861#true} assume true; {861#true} is VALID [2018-11-23 12:32:56,671 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {861#true} {861#true} #139#return; {861#true} is VALID [2018-11-23 12:32:56,671 INFO L256 TraceCheckUtils]: 4: Hoare triple {861#true} call #t~ret18 := main(); {861#true} is VALID [2018-11-23 12:32:56,671 INFO L273 TraceCheckUtils]: 5: Hoare triple {861#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {861#true} is VALID [2018-11-23 12:32:56,673 INFO L273 TraceCheckUtils]: 6: Hoare triple {861#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(2 * ~SIZE~0);~sum~0 := 0;~i~0 := 0; {863#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:32:56,673 INFO L273 TraceCheckUtils]: 7: Hoare triple {863#(<= 2 ~SIZE~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {863#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:32:56,676 INFO L273 TraceCheckUtils]: 8: Hoare triple {863#(<= 2 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {863#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:32:56,681 INFO L273 TraceCheckUtils]: 9: Hoare triple {863#(<= 2 ~SIZE~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {863#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:32:56,682 INFO L273 TraceCheckUtils]: 10: Hoare triple {863#(<= 2 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {863#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:32:56,682 INFO L273 TraceCheckUtils]: 11: Hoare triple {863#(<= 2 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {863#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:32:56,685 INFO L273 TraceCheckUtils]: 12: Hoare triple {863#(<= 2 ~SIZE~0)} ~i~0 := 0; {864#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:32:56,700 INFO L273 TraceCheckUtils]: 13: Hoare triple {864#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} assume !(~i~0 < ~SIZE~0); {862#false} is VALID [2018-11-23 12:32:56,700 INFO L273 TraceCheckUtils]: 14: Hoare triple {862#false} ~i~0 := 0; {862#false} is VALID [2018-11-23 12:32:56,700 INFO L273 TraceCheckUtils]: 15: Hoare triple {862#false} assume !(~i~0 < ~SIZE~0); {862#false} is VALID [2018-11-23 12:32:56,701 INFO L273 TraceCheckUtils]: 16: Hoare triple {862#false} ~i~0 := 0; {862#false} is VALID [2018-11-23 12:32:56,701 INFO L273 TraceCheckUtils]: 17: Hoare triple {862#false} assume !(~i~0 < ~SIZE~0); {862#false} is VALID [2018-11-23 12:32:56,701 INFO L273 TraceCheckUtils]: 18: Hoare triple {862#false} ~i~0 := 0; {862#false} is VALID [2018-11-23 12:32:56,701 INFO L273 TraceCheckUtils]: 19: Hoare triple {862#false} assume !(~i~0 < ~SIZE~0); {862#false} is VALID [2018-11-23 12:32:56,702 INFO L273 TraceCheckUtils]: 20: Hoare triple {862#false} ~i~0 := 0; {862#false} is VALID [2018-11-23 12:32:56,702 INFO L273 TraceCheckUtils]: 21: Hoare triple {862#false} assume !(~i~0 < ~SIZE~0); {862#false} is VALID [2018-11-23 12:32:56,702 INFO L273 TraceCheckUtils]: 22: Hoare triple {862#false} ~i~0 := 0; {862#false} is VALID [2018-11-23 12:32:56,703 INFO L273 TraceCheckUtils]: 23: Hoare triple {862#false} assume !(~i~0 < ~SIZE~0); {862#false} is VALID [2018-11-23 12:32:56,703 INFO L273 TraceCheckUtils]: 24: Hoare triple {862#false} ~i~0 := 0; {862#false} is VALID [2018-11-23 12:32:56,703 INFO L273 TraceCheckUtils]: 25: Hoare triple {862#false} assume !(~i~0 < ~SIZE~0); {862#false} is VALID [2018-11-23 12:32:56,703 INFO L256 TraceCheckUtils]: 26: Hoare triple {862#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {862#false} is VALID [2018-11-23 12:32:56,703 INFO L273 TraceCheckUtils]: 27: Hoare triple {862#false} ~cond := #in~cond; {862#false} is VALID [2018-11-23 12:32:56,704 INFO L273 TraceCheckUtils]: 28: Hoare triple {862#false} assume 0 == ~cond; {862#false} is VALID [2018-11-23 12:32:56,704 INFO L273 TraceCheckUtils]: 29: Hoare triple {862#false} assume !false; {862#false} is VALID [2018-11-23 12:32:56,706 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2018-11-23 12:32:56,706 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 12:32:56,706 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2018-11-23 12:32:56,707 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 30 [2018-11-23 12:32:56,707 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:32:56,707 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2018-11-23 12:32:56,745 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:32:56,746 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2018-11-23 12:32:56,746 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2018-11-23 12:32:56,746 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2018-11-23 12:32:56,747 INFO L87 Difference]: Start difference. First operand 38 states and 45 transitions. Second operand 4 states. [2018-11-23 12:32:57,094 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:57,095 INFO L93 Difference]: Finished difference Result 75 states and 94 transitions. [2018-11-23 12:32:57,095 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-11-23 12:32:57,095 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 30 [2018-11-23 12:32:57,095 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:32:57,095 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-23 12:32:57,098 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 93 transitions. [2018-11-23 12:32:57,098 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-23 12:32:57,101 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 93 transitions. [2018-11-23 12:32:57,101 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 93 transitions. [2018-11-23 12:32:57,239 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:32:57,241 INFO L225 Difference]: With dead ends: 75 [2018-11-23 12:32:57,241 INFO L226 Difference]: Without dead ends: 52 [2018-11-23 12:32:57,242 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2018-11-23 12:32:57,242 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 52 states. [2018-11-23 12:32:57,287 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 52 to 45. [2018-11-23 12:32:57,287 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:32:57,287 INFO L82 GeneralOperation]: Start isEquivalent. First operand 52 states. Second operand 45 states. [2018-11-23 12:32:57,287 INFO L74 IsIncluded]: Start isIncluded. First operand 52 states. Second operand 45 states. [2018-11-23 12:32:57,288 INFO L87 Difference]: Start difference. First operand 52 states. Second operand 45 states. [2018-11-23 12:32:57,291 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:57,291 INFO L93 Difference]: Finished difference Result 52 states and 59 transitions. [2018-11-23 12:32:57,291 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 59 transitions. [2018-11-23 12:32:57,292 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:32:57,292 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:32:57,293 INFO L74 IsIncluded]: Start isIncluded. First operand 45 states. Second operand 52 states. [2018-11-23 12:32:57,293 INFO L87 Difference]: Start difference. First operand 45 states. Second operand 52 states. [2018-11-23 12:32:57,295 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:57,296 INFO L93 Difference]: Finished difference Result 52 states and 59 transitions. [2018-11-23 12:32:57,296 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 59 transitions. [2018-11-23 12:32:57,297 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:32:57,297 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:32:57,297 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:32:57,297 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:32:57,297 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 45 states. [2018-11-23 12:32:57,299 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 45 states to 45 states and 52 transitions. [2018-11-23 12:32:57,300 INFO L78 Accepts]: Start accepts. Automaton has 45 states and 52 transitions. Word has length 30 [2018-11-23 12:32:57,300 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:32:57,300 INFO L480 AbstractCegarLoop]: Abstraction has 45 states and 52 transitions. [2018-11-23 12:32:57,300 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2018-11-23 12:32:57,300 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 52 transitions. [2018-11-23 12:32:57,303 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2018-11-23 12:32:57,303 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:32:57,303 INFO L402 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:32:57,306 INFO L423 AbstractCegarLoop]: === Iteration 5 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:32:57,306 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:32:57,306 INFO L82 PathProgramCache]: Analyzing trace with hash 1383488299, now seen corresponding path program 1 times [2018-11-23 12:32:57,306 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:32:57,306 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:32:57,307 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:57,307 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:32:57,308 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:57,352 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:57,475 INFO L256 TraceCheckUtils]: 0: Hoare triple {1145#true} call ULTIMATE.init(); {1145#true} is VALID [2018-11-23 12:32:57,475 INFO L273 TraceCheckUtils]: 1: Hoare triple {1145#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {1145#true} is VALID [2018-11-23 12:32:57,476 INFO L273 TraceCheckUtils]: 2: Hoare triple {1145#true} assume true; {1145#true} is VALID [2018-11-23 12:32:57,476 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1145#true} {1145#true} #139#return; {1145#true} is VALID [2018-11-23 12:32:57,476 INFO L256 TraceCheckUtils]: 4: Hoare triple {1145#true} call #t~ret18 := main(); {1145#true} is VALID [2018-11-23 12:32:57,477 INFO L273 TraceCheckUtils]: 5: Hoare triple {1145#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {1145#true} is VALID [2018-11-23 12:32:57,490 INFO L273 TraceCheckUtils]: 6: Hoare triple {1145#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(2 * ~SIZE~0);~sum~0 := 0;~i~0 := 0; {1147#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:32:57,492 INFO L273 TraceCheckUtils]: 7: Hoare triple {1147#(<= 2 ~SIZE~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {1147#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:32:57,495 INFO L273 TraceCheckUtils]: 8: Hoare triple {1147#(<= 2 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1147#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:32:57,497 INFO L273 TraceCheckUtils]: 9: Hoare triple {1147#(<= 2 ~SIZE~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {1147#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:32:57,497 INFO L273 TraceCheckUtils]: 10: Hoare triple {1147#(<= 2 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1147#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:32:57,498 INFO L273 TraceCheckUtils]: 11: Hoare triple {1147#(<= 2 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {1147#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:32:57,500 INFO L273 TraceCheckUtils]: 12: Hoare triple {1147#(<= 2 ~SIZE~0)} ~i~0 := 0; {1148#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:32:57,500 INFO L273 TraceCheckUtils]: 13: Hoare triple {1148#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {1148#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:32:57,501 INFO L273 TraceCheckUtils]: 14: Hoare triple {1148#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {1149#(<= (+ main_~i~0 1) ~SIZE~0)} is VALID [2018-11-23 12:32:57,502 INFO L273 TraceCheckUtils]: 15: Hoare triple {1149#(<= (+ main_~i~0 1) ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {1146#false} is VALID [2018-11-23 12:32:57,502 INFO L273 TraceCheckUtils]: 16: Hoare triple {1146#false} ~i~0 := 0; {1146#false} is VALID [2018-11-23 12:32:57,503 INFO L273 TraceCheckUtils]: 17: Hoare triple {1146#false} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {1146#false} is VALID [2018-11-23 12:32:57,503 INFO L273 TraceCheckUtils]: 18: Hoare triple {1146#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {1146#false} is VALID [2018-11-23 12:32:57,504 INFO L273 TraceCheckUtils]: 19: Hoare triple {1146#false} assume !(~i~0 < ~SIZE~0); {1146#false} is VALID [2018-11-23 12:32:57,504 INFO L273 TraceCheckUtils]: 20: Hoare triple {1146#false} ~i~0 := 0; {1146#false} is VALID [2018-11-23 12:32:57,504 INFO L273 TraceCheckUtils]: 21: Hoare triple {1146#false} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {1146#false} is VALID [2018-11-23 12:32:57,505 INFO L273 TraceCheckUtils]: 22: Hoare triple {1146#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {1146#false} is VALID [2018-11-23 12:32:57,505 INFO L273 TraceCheckUtils]: 23: Hoare triple {1146#false} assume !(~i~0 < ~SIZE~0); {1146#false} is VALID [2018-11-23 12:32:57,505 INFO L273 TraceCheckUtils]: 24: Hoare triple {1146#false} ~i~0 := 0; {1146#false} is VALID [2018-11-23 12:32:57,506 INFO L273 TraceCheckUtils]: 25: Hoare triple {1146#false} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {1146#false} is VALID [2018-11-23 12:32:57,506 INFO L273 TraceCheckUtils]: 26: Hoare triple {1146#false} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {1146#false} is VALID [2018-11-23 12:32:57,506 INFO L273 TraceCheckUtils]: 27: Hoare triple {1146#false} assume !(~i~0 < ~SIZE~0); {1146#false} is VALID [2018-11-23 12:32:57,507 INFO L273 TraceCheckUtils]: 28: Hoare triple {1146#false} ~i~0 := 0; {1146#false} is VALID [2018-11-23 12:32:57,507 INFO L273 TraceCheckUtils]: 29: Hoare triple {1146#false} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {1146#false} is VALID [2018-11-23 12:32:57,507 INFO L273 TraceCheckUtils]: 30: Hoare triple {1146#false} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {1146#false} is VALID [2018-11-23 12:32:57,507 INFO L273 TraceCheckUtils]: 31: Hoare triple {1146#false} assume !(~i~0 < ~SIZE~0); {1146#false} is VALID [2018-11-23 12:32:57,508 INFO L273 TraceCheckUtils]: 32: Hoare triple {1146#false} ~i~0 := 0; {1146#false} is VALID [2018-11-23 12:32:57,508 INFO L273 TraceCheckUtils]: 33: Hoare triple {1146#false} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {1146#false} is VALID [2018-11-23 12:32:57,508 INFO L273 TraceCheckUtils]: 34: Hoare triple {1146#false} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {1146#false} is VALID [2018-11-23 12:32:57,508 INFO L273 TraceCheckUtils]: 35: Hoare triple {1146#false} assume !(~i~0 < ~SIZE~0); {1146#false} is VALID [2018-11-23 12:32:57,508 INFO L273 TraceCheckUtils]: 36: Hoare triple {1146#false} ~i~0 := 0; {1146#false} is VALID [2018-11-23 12:32:57,509 INFO L273 TraceCheckUtils]: 37: Hoare triple {1146#false} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {1146#false} is VALID [2018-11-23 12:32:57,509 INFO L273 TraceCheckUtils]: 38: Hoare triple {1146#false} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {1146#false} is VALID [2018-11-23 12:32:57,509 INFO L273 TraceCheckUtils]: 39: Hoare triple {1146#false} assume !(~i~0 < ~SIZE~0); {1146#false} is VALID [2018-11-23 12:32:57,509 INFO L256 TraceCheckUtils]: 40: Hoare triple {1146#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {1146#false} is VALID [2018-11-23 12:32:57,510 INFO L273 TraceCheckUtils]: 41: Hoare triple {1146#false} ~cond := #in~cond; {1146#false} is VALID [2018-11-23 12:32:57,510 INFO L273 TraceCheckUtils]: 42: Hoare triple {1146#false} assume 0 == ~cond; {1146#false} is VALID [2018-11-23 12:32:57,510 INFO L273 TraceCheckUtils]: 43: Hoare triple {1146#false} assume !false; {1146#false} is VALID [2018-11-23 12:32:57,513 INFO L134 CoverageAnalysis]: Checked inductivity of 11 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2018-11-23 12:32:57,513 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:32:57,513 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:32:57,525 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:32:57,553 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:57,575 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:57,576 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:32:57,847 INFO L256 TraceCheckUtils]: 0: Hoare triple {1145#true} call ULTIMATE.init(); {1145#true} is VALID [2018-11-23 12:32:57,848 INFO L273 TraceCheckUtils]: 1: Hoare triple {1145#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {1145#true} is VALID [2018-11-23 12:32:57,848 INFO L273 TraceCheckUtils]: 2: Hoare triple {1145#true} assume true; {1145#true} is VALID [2018-11-23 12:32:57,848 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1145#true} {1145#true} #139#return; {1145#true} is VALID [2018-11-23 12:32:57,848 INFO L256 TraceCheckUtils]: 4: Hoare triple {1145#true} call #t~ret18 := main(); {1145#true} is VALID [2018-11-23 12:32:57,848 INFO L273 TraceCheckUtils]: 5: Hoare triple {1145#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {1145#true} is VALID [2018-11-23 12:32:57,850 INFO L273 TraceCheckUtils]: 6: Hoare triple {1145#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(2 * ~SIZE~0);~sum~0 := 0;~i~0 := 0; {1147#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:32:57,851 INFO L273 TraceCheckUtils]: 7: Hoare triple {1147#(<= 2 ~SIZE~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {1147#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:32:57,851 INFO L273 TraceCheckUtils]: 8: Hoare triple {1147#(<= 2 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1147#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:32:57,852 INFO L273 TraceCheckUtils]: 9: Hoare triple {1147#(<= 2 ~SIZE~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {1147#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:32:57,856 INFO L273 TraceCheckUtils]: 10: Hoare triple {1147#(<= 2 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1147#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:32:57,857 INFO L273 TraceCheckUtils]: 11: Hoare triple {1147#(<= 2 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {1147#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:32:57,857 INFO L273 TraceCheckUtils]: 12: Hoare triple {1147#(<= 2 ~SIZE~0)} ~i~0 := 0; {1189#(and (<= main_~i~0 0) (<= 2 ~SIZE~0))} is VALID [2018-11-23 12:32:57,858 INFO L273 TraceCheckUtils]: 13: Hoare triple {1189#(and (<= main_~i~0 0) (<= 2 ~SIZE~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {1189#(and (<= main_~i~0 0) (<= 2 ~SIZE~0))} is VALID [2018-11-23 12:32:57,859 INFO L273 TraceCheckUtils]: 14: Hoare triple {1189#(and (<= main_~i~0 0) (<= 2 ~SIZE~0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {1196#(and (<= main_~i~0 1) (<= 2 ~SIZE~0))} is VALID [2018-11-23 12:32:57,859 INFO L273 TraceCheckUtils]: 15: Hoare triple {1196#(and (<= main_~i~0 1) (<= 2 ~SIZE~0))} assume !(~i~0 < ~SIZE~0); {1146#false} is VALID [2018-11-23 12:32:57,859 INFO L273 TraceCheckUtils]: 16: Hoare triple {1146#false} ~i~0 := 0; {1146#false} is VALID [2018-11-23 12:32:57,860 INFO L273 TraceCheckUtils]: 17: Hoare triple {1146#false} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {1146#false} is VALID [2018-11-23 12:32:57,860 INFO L273 TraceCheckUtils]: 18: Hoare triple {1146#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {1146#false} is VALID [2018-11-23 12:32:57,860 INFO L273 TraceCheckUtils]: 19: Hoare triple {1146#false} assume !(~i~0 < ~SIZE~0); {1146#false} is VALID [2018-11-23 12:32:57,860 INFO L273 TraceCheckUtils]: 20: Hoare triple {1146#false} ~i~0 := 0; {1146#false} is VALID [2018-11-23 12:32:57,860 INFO L273 TraceCheckUtils]: 21: Hoare triple {1146#false} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {1146#false} is VALID [2018-11-23 12:32:57,861 INFO L273 TraceCheckUtils]: 22: Hoare triple {1146#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {1146#false} is VALID [2018-11-23 12:32:57,861 INFO L273 TraceCheckUtils]: 23: Hoare triple {1146#false} assume !(~i~0 < ~SIZE~0); {1146#false} is VALID [2018-11-23 12:32:57,862 INFO L273 TraceCheckUtils]: 24: Hoare triple {1146#false} ~i~0 := 0; {1146#false} is VALID [2018-11-23 12:32:57,862 INFO L273 TraceCheckUtils]: 25: Hoare triple {1146#false} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {1146#false} is VALID [2018-11-23 12:32:57,862 INFO L273 TraceCheckUtils]: 26: Hoare triple {1146#false} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {1146#false} is VALID [2018-11-23 12:32:57,862 INFO L273 TraceCheckUtils]: 27: Hoare triple {1146#false} assume !(~i~0 < ~SIZE~0); {1146#false} is VALID [2018-11-23 12:32:57,863 INFO L273 TraceCheckUtils]: 28: Hoare triple {1146#false} ~i~0 := 0; {1146#false} is VALID [2018-11-23 12:32:57,863 INFO L273 TraceCheckUtils]: 29: Hoare triple {1146#false} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {1146#false} is VALID [2018-11-23 12:32:57,863 INFO L273 TraceCheckUtils]: 30: Hoare triple {1146#false} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {1146#false} is VALID [2018-11-23 12:32:57,863 INFO L273 TraceCheckUtils]: 31: Hoare triple {1146#false} assume !(~i~0 < ~SIZE~0); {1146#false} is VALID [2018-11-23 12:32:57,864 INFO L273 TraceCheckUtils]: 32: Hoare triple {1146#false} ~i~0 := 0; {1146#false} is VALID [2018-11-23 12:32:57,864 INFO L273 TraceCheckUtils]: 33: Hoare triple {1146#false} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {1146#false} is VALID [2018-11-23 12:32:57,864 INFO L273 TraceCheckUtils]: 34: Hoare triple {1146#false} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {1146#false} is VALID [2018-11-23 12:32:57,865 INFO L273 TraceCheckUtils]: 35: Hoare triple {1146#false} assume !(~i~0 < ~SIZE~0); {1146#false} is VALID [2018-11-23 12:32:57,865 INFO L273 TraceCheckUtils]: 36: Hoare triple {1146#false} ~i~0 := 0; {1146#false} is VALID [2018-11-23 12:32:57,865 INFO L273 TraceCheckUtils]: 37: Hoare triple {1146#false} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {1146#false} is VALID [2018-11-23 12:32:57,865 INFO L273 TraceCheckUtils]: 38: Hoare triple {1146#false} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {1146#false} is VALID [2018-11-23 12:32:57,866 INFO L273 TraceCheckUtils]: 39: Hoare triple {1146#false} assume !(~i~0 < ~SIZE~0); {1146#false} is VALID [2018-11-23 12:32:57,866 INFO L256 TraceCheckUtils]: 40: Hoare triple {1146#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {1146#false} is VALID [2018-11-23 12:32:57,866 INFO L273 TraceCheckUtils]: 41: Hoare triple {1146#false} ~cond := #in~cond; {1146#false} is VALID [2018-11-23 12:32:57,866 INFO L273 TraceCheckUtils]: 42: Hoare triple {1146#false} assume 0 == ~cond; {1146#false} is VALID [2018-11-23 12:32:57,867 INFO L273 TraceCheckUtils]: 43: Hoare triple {1146#false} assume !false; {1146#false} is VALID [2018-11-23 12:32:57,870 INFO L134 CoverageAnalysis]: Checked inductivity of 11 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2018-11-23 12:32:57,896 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:32:57,897 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 7 [2018-11-23 12:32:57,897 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 44 [2018-11-23 12:32:57,898 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:32:57,898 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states. [2018-11-23 12:32:57,983 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:32:57,983 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2018-11-23 12:32:57,984 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2018-11-23 12:32:57,984 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=22, Unknown=0, NotChecked=0, Total=42 [2018-11-23 12:32:57,985 INFO L87 Difference]: Start difference. First operand 45 states and 52 transitions. Second operand 7 states. [2018-11-23 12:32:58,472 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:58,473 INFO L93 Difference]: Finished difference Result 96 states and 115 transitions. [2018-11-23 12:32:58,473 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2018-11-23 12:32:58,473 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 44 [2018-11-23 12:32:58,473 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:32:58,474 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2018-11-23 12:32:58,476 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 109 transitions. [2018-11-23 12:32:58,476 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2018-11-23 12:32:58,479 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 109 transitions. [2018-11-23 12:32:58,479 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 109 transitions. [2018-11-23 12:32:58,668 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:32:58,671 INFO L225 Difference]: With dead ends: 96 [2018-11-23 12:32:58,671 INFO L226 Difference]: Without dead ends: 67 [2018-11-23 12:32:58,672 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 49 GetRequests, 42 SyntacticMatches, 1 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=27, Invalid=29, Unknown=0, NotChecked=0, Total=56 [2018-11-23 12:32:58,672 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 67 states. [2018-11-23 12:32:58,867 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 67 to 59. [2018-11-23 12:32:58,867 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:32:58,868 INFO L82 GeneralOperation]: Start isEquivalent. First operand 67 states. Second operand 59 states. [2018-11-23 12:32:58,868 INFO L74 IsIncluded]: Start isIncluded. First operand 67 states. Second operand 59 states. [2018-11-23 12:32:58,868 INFO L87 Difference]: Start difference. First operand 67 states. Second operand 59 states. [2018-11-23 12:32:58,870 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:58,870 INFO L93 Difference]: Finished difference Result 67 states and 74 transitions. [2018-11-23 12:32:58,871 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 74 transitions. [2018-11-23 12:32:58,871 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:32:58,871 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:32:58,872 INFO L74 IsIncluded]: Start isIncluded. First operand 59 states. Second operand 67 states. [2018-11-23 12:32:58,872 INFO L87 Difference]: Start difference. First operand 59 states. Second operand 67 states. [2018-11-23 12:32:58,874 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:58,875 INFO L93 Difference]: Finished difference Result 67 states and 74 transitions. [2018-11-23 12:32:58,875 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 74 transitions. [2018-11-23 12:32:58,875 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:32:58,876 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:32:58,876 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:32:58,876 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:32:58,876 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 59 states. [2018-11-23 12:32:58,878 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 66 transitions. [2018-11-23 12:32:58,878 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 66 transitions. Word has length 44 [2018-11-23 12:32:58,879 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:32:58,879 INFO L480 AbstractCegarLoop]: Abstraction has 59 states and 66 transitions. [2018-11-23 12:32:58,879 INFO L481 AbstractCegarLoop]: Interpolant automaton has 7 states. [2018-11-23 12:32:58,879 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 66 transitions. [2018-11-23 12:32:58,880 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2018-11-23 12:32:58,881 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:32:58,881 INFO L402 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:32:58,881 INFO L423 AbstractCegarLoop]: === Iteration 6 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:32:58,881 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:32:58,882 INFO L82 PathProgramCache]: Analyzing trace with hash 324903389, now seen corresponding path program 2 times [2018-11-23 12:32:58,882 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:32:58,882 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:32:58,883 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:58,883 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:32:58,883 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:59,185 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:33:00,189 WARN L180 SmtUtils]: Spent 115.00 ms on a formula simplification. DAG size of input: 27 DAG size of output: 24 [2018-11-23 12:33:00,468 WARN L180 SmtUtils]: Spent 103.00 ms on a formula simplification. DAG size of input: 32 DAG size of output: 29 [2018-11-23 12:33:01,338 WARN L180 SmtUtils]: Spent 193.00 ms on a formula simplification. DAG size of input: 45 DAG size of output: 32 [2018-11-23 12:33:02,706 WARN L180 SmtUtils]: Spent 103.00 ms on a formula simplification. DAG size of input: 36 DAG size of output: 30 [2018-11-23 12:33:07,280 INFO L256 TraceCheckUtils]: 0: Hoare triple {1648#true} call ULTIMATE.init(); {1648#true} is VALID [2018-11-23 12:33:07,281 INFO L273 TraceCheckUtils]: 1: Hoare triple {1648#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {1648#true} is VALID [2018-11-23 12:33:07,282 INFO L273 TraceCheckUtils]: 2: Hoare triple {1648#true} assume true; {1648#true} is VALID [2018-11-23 12:33:07,282 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1648#true} {1648#true} #139#return; {1648#true} is VALID [2018-11-23 12:33:07,282 INFO L256 TraceCheckUtils]: 4: Hoare triple {1648#true} call #t~ret18 := main(); {1648#true} is VALID [2018-11-23 12:33:07,283 INFO L273 TraceCheckUtils]: 5: Hoare triple {1648#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {1648#true} is VALID [2018-11-23 12:33:07,284 INFO L273 TraceCheckUtils]: 6: Hoare triple {1648#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(2 * ~SIZE~0);~sum~0 := 0;~i~0 := 0; {1650#(and (or (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= 2 ~SIZE~0)) (or (and (= main_~sum~0 0) (<= 2 ~SIZE~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,286 INFO L273 TraceCheckUtils]: 7: Hoare triple {1650#(and (or (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= 2 ~SIZE~0)) (or (and (= main_~sum~0 0) (<= 2 ~SIZE~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {1651#(and (or (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= 2 ~SIZE~0)) (or (and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) (<= 2 ~SIZE~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,287 INFO L273 TraceCheckUtils]: 8: Hoare triple {1651#(and (or (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= 2 ~SIZE~0)) (or (and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) (<= 2 ~SIZE~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1652#(and (or (<= 3 (+ (* 2 main_~i~0) |main_~#a~0.offset|)) (< (+ main_~i~0 1) ~SIZE~0) (and (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) 0)) (<= (select (select |#memory_int| |main_~#a~0.base|) 0) main_~sum~0) (<= 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,288 INFO L273 TraceCheckUtils]: 9: Hoare triple {1652#(and (or (<= 3 (+ (* 2 main_~i~0) |main_~#a~0.offset|)) (< (+ main_~i~0 1) ~SIZE~0) (and (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) 0)) (<= (select (select |#memory_int| |main_~#a~0.base|) 0) main_~sum~0) (<= 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {1653#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= (+ main_~i~0 1) ~SIZE~0) (<= 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (< (+ main_~i~0 1) ~SIZE~0)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,290 INFO L273 TraceCheckUtils]: 10: Hoare triple {1653#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= (+ main_~i~0 1) ~SIZE~0) (<= 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (< (+ main_~i~0 1) ~SIZE~0)) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1654#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) main_~sum~0) (<= 2 ~SIZE~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= (+ main_~i~0 1) ~SIZE~0) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,291 INFO L273 TraceCheckUtils]: 11: Hoare triple {1654#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) main_~sum~0) (<= 2 ~SIZE~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= (+ main_~i~0 1) ~SIZE~0) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {1655#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) main_~sum~0) (<= 2 ~SIZE~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,293 INFO L273 TraceCheckUtils]: 12: Hoare triple {1655#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) main_~sum~0) (<= 2 ~SIZE~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {1656#(and (or (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,295 INFO L273 TraceCheckUtils]: 13: Hoare triple {1656#(and (or (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {1657#(and (or (and (or (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))))) (<= 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,296 INFO L273 TraceCheckUtils]: 14: Hoare triple {1657#(and (or (and (or (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))))) (<= 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {1658#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (<= 3 (+ (* 2 main_~i~0) |main_~#a~0.offset|)) (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,298 INFO L273 TraceCheckUtils]: 15: Hoare triple {1658#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (<= 3 (+ (* 2 main_~i~0) |main_~#a~0.offset|)) (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {1659#(and (or (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))))) (or (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ main_~i~0 2) ~SIZE~0)) (<= 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,300 INFO L273 TraceCheckUtils]: 16: Hoare triple {1659#(and (or (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))))) (or (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ main_~i~0 2) ~SIZE~0)) (<= 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {1660#(and (or (and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))))) (<= (+ main_~i~0 1) ~SIZE~0)) (<= 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,302 INFO L273 TraceCheckUtils]: 17: Hoare triple {1660#(and (or (and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))))) (<= (+ main_~i~0 1) ~SIZE~0)) (<= 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {1661#(and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,303 INFO L273 TraceCheckUtils]: 18: Hoare triple {1661#(and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {1662#(and (or (and (<= 2 ~SIZE~0) (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0))) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|))))) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,305 INFO L273 TraceCheckUtils]: 19: Hoare triple {1662#(and (or (and (<= 2 ~SIZE~0) (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0))) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|))))) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {1663#(and (or (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (or (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))))) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,307 INFO L273 TraceCheckUtils]: 20: Hoare triple {1663#(and (or (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (or (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))))) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {1664#(and (or (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (<= 3 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,309 INFO L273 TraceCheckUtils]: 21: Hoare triple {1664#(and (or (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (<= 3 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {1665#(and (or (and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0))) (<= 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,311 INFO L273 TraceCheckUtils]: 22: Hoare triple {1665#(and (or (and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0))) (<= 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {1666#(and (or (and (or (<= (+ main_~i~0 1) ~SIZE~0) (and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0))) (<= 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,315 INFO L273 TraceCheckUtils]: 23: Hoare triple {1666#(and (or (and (or (<= (+ main_~i~0 1) ~SIZE~0) (and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0))) (<= 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {1667#(and (or (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,316 INFO L273 TraceCheckUtils]: 24: Hoare triple {1667#(and (or (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {1668#(and (or (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (and (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,317 INFO L273 TraceCheckUtils]: 25: Hoare triple {1668#(and (or (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (and (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {1669#(and (or (and (or (and (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,318 INFO L273 TraceCheckUtils]: 26: Hoare triple {1669#(and (or (and (or (and (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {1670#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (<= 3 (+ (* 2 main_~i~0) |main_~#a~0.offset|)) (and (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,321 INFO L273 TraceCheckUtils]: 27: Hoare triple {1670#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (<= 3 (+ (* 2 main_~i~0) |main_~#a~0.offset|)) (and (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {1671#(and (or (and (or (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ main_~i~0 2) ~SIZE~0)) (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (and (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))))))) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,326 INFO L273 TraceCheckUtils]: 28: Hoare triple {1671#(and (or (and (or (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ main_~i~0 2) ~SIZE~0)) (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (and (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))))))) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {1672#(and (or (and (or (and (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))))) (<= (+ main_~i~0 1) ~SIZE~0)) (<= 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,329 INFO L273 TraceCheckUtils]: 29: Hoare triple {1672#(and (or (and (or (and (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))))) (<= (+ main_~i~0 1) ~SIZE~0)) (<= 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {1673#(and (or (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,332 INFO L273 TraceCheckUtils]: 30: Hoare triple {1673#(and (or (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {1674#(and (or (and (or (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= 2 ~SIZE~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,333 INFO L273 TraceCheckUtils]: 31: Hoare triple {1674#(and (or (and (or (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= 2 ~SIZE~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {1675#(and (or (and (or (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= 2 ~SIZE~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,334 INFO L273 TraceCheckUtils]: 32: Hoare triple {1675#(and (or (and (or (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= 2 ~SIZE~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {1676#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (<= 3 (+ (* 2 main_~i~0) |main_~#a~0.offset|)) (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,335 INFO L273 TraceCheckUtils]: 33: Hoare triple {1676#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (<= 3 (+ (* 2 main_~i~0) |main_~#a~0.offset|)) (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {1677#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,338 INFO L273 TraceCheckUtils]: 34: Hoare triple {1677#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {1678#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 1) (* 2 ~SIZE~0)) (and (or (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0))) (<= 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,339 INFO L273 TraceCheckUtils]: 35: Hoare triple {1678#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 1) (* 2 ~SIZE~0)) (and (or (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0))) (<= 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {1667#(and (or (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,341 INFO L273 TraceCheckUtils]: 36: Hoare triple {1667#(and (or (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {1668#(and (or (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (and (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,343 INFO L273 TraceCheckUtils]: 37: Hoare triple {1668#(and (or (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (and (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {1679#(and (or (and (or (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,345 INFO L273 TraceCheckUtils]: 38: Hoare triple {1679#(and (or (and (or (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {1680#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0)) (<= 3 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,347 INFO L273 TraceCheckUtils]: 39: Hoare triple {1680#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0)) (<= 3 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {1659#(and (or (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))))) (or (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ main_~i~0 2) ~SIZE~0)) (<= 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,350 INFO L273 TraceCheckUtils]: 40: Hoare triple {1659#(and (or (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))))) (or (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ main_~i~0 2) ~SIZE~0)) (<= 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {1660#(and (or (and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))))) (<= (+ main_~i~0 1) ~SIZE~0)) (<= 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,351 INFO L273 TraceCheckUtils]: 41: Hoare triple {1660#(and (or (and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))))) (<= (+ main_~i~0 1) ~SIZE~0)) (<= 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {1661#(and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,353 INFO L273 TraceCheckUtils]: 42: Hoare triple {1661#(and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {1681#(and (or (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0) (<= 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,354 INFO L273 TraceCheckUtils]: 43: Hoare triple {1681#(and (or (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0) (<= 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {1682#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))))) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (<= 2 ~SIZE~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,356 INFO L273 TraceCheckUtils]: 44: Hoare triple {1682#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))))) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (<= 2 ~SIZE~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {1683#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= main_~i~0 1) (<= 2 ~SIZE~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))))) (<= (+ (* 2 main_~i~0) 3) (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,358 INFO L273 TraceCheckUtils]: 45: Hoare triple {1683#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= main_~i~0 1) (<= 2 ~SIZE~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))))) (<= (+ (* 2 main_~i~0) 3) (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {1684#(and (or (and (<= main_~i~0 1) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= 2 ~SIZE~0)) (<= (+ (* 2 main_~i~0) 3) (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,360 INFO L273 TraceCheckUtils]: 46: Hoare triple {1684#(and (or (and (<= main_~i~0 1) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= 2 ~SIZE~0)) (<= (+ (* 2 main_~i~0) 3) (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {1685#(and (or (<= (+ (* 2 main_~i~0) 1) (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= main_~i~0 2) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) main_~sum~0) (<= 2 ~SIZE~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,361 INFO L273 TraceCheckUtils]: 47: Hoare triple {1685#(and (or (<= (+ (* 2 main_~i~0) 1) (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= main_~i~0 2) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) main_~sum~0) (<= 2 ~SIZE~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {1686#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) main_~sum~0) (<= 2 ~SIZE~0) (<= ~SIZE~0 2) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,363 INFO L273 TraceCheckUtils]: 48: Hoare triple {1686#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) main_~sum~0) (<= 2 ~SIZE~0) (<= ~SIZE~0 2) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {1687#(and (or (and (or (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= 2 ~SIZE~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0) (<= ~SIZE~0 2))) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,365 INFO L273 TraceCheckUtils]: 49: Hoare triple {1687#(and (or (and (or (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= 2 ~SIZE~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0) (<= ~SIZE~0 2))) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {1688#(and (or (and (or (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= 2 ~SIZE~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0) (<= ~SIZE~0 2))) (and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) main_~sum~0) (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,367 INFO L273 TraceCheckUtils]: 50: Hoare triple {1688#(and (or (and (or (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= 2 ~SIZE~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0) (<= ~SIZE~0 2))) (and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) main_~sum~0) (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (= |main_~#a~0.offset| 0))} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {1689#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= (+ main_~i~0 2) ~SIZE~0) (and (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:07,369 INFO L273 TraceCheckUtils]: 51: Hoare triple {1689#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= (+ main_~i~0 2) ~SIZE~0) (and (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {1690#(or (<= (+ main_~i~0 2) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} is VALID [2018-11-23 12:33:07,370 INFO L273 TraceCheckUtils]: 52: Hoare triple {1690#(or (<= (+ main_~i~0 2) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {1691#(or (<= (+ main_~i~0 1) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} is VALID [2018-11-23 12:33:07,371 INFO L273 TraceCheckUtils]: 53: Hoare triple {1691#(or (<= (+ main_~i~0 1) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} assume !(~i~0 < ~SIZE~0); {1692#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:33:07,372 INFO L256 TraceCheckUtils]: 54: Hoare triple {1692#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {1693#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:33:07,373 INFO L273 TraceCheckUtils]: 55: Hoare triple {1693#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {1694#(= __VERIFIER_assert_~cond 1)} is VALID [2018-11-23 12:33:07,378 INFO L273 TraceCheckUtils]: 56: Hoare triple {1694#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {1649#false} is VALID [2018-11-23 12:33:07,378 INFO L273 TraceCheckUtils]: 57: Hoare triple {1649#false} assume !false; {1649#false} is VALID [2018-11-23 12:33:07,428 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 0 proven. 32 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:33:07,428 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:33:07,428 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:33:07,444 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:33:07,505 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:33:07,505 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:33:07,526 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:33:07,530 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:33:10,198 INFO L256 TraceCheckUtils]: 0: Hoare triple {1648#true} call ULTIMATE.init(); {1648#true} is VALID [2018-11-23 12:33:10,199 INFO L273 TraceCheckUtils]: 1: Hoare triple {1648#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {1648#true} is VALID [2018-11-23 12:33:10,199 INFO L273 TraceCheckUtils]: 2: Hoare triple {1648#true} assume true; {1648#true} is VALID [2018-11-23 12:33:10,199 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1648#true} {1648#true} #139#return; {1648#true} is VALID [2018-11-23 12:33:10,199 INFO L256 TraceCheckUtils]: 4: Hoare triple {1648#true} call #t~ret18 := main(); {1648#true} is VALID [2018-11-23 12:33:10,199 INFO L273 TraceCheckUtils]: 5: Hoare triple {1648#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {1648#true} is VALID [2018-11-23 12:33:10,200 INFO L273 TraceCheckUtils]: 6: Hoare triple {1648#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(2 * ~SIZE~0);~sum~0 := 0;~i~0 := 0; {1716#(and (= main_~sum~0 0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,202 INFO L273 TraceCheckUtils]: 7: Hoare triple {1716#(and (= main_~sum~0 0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {1720#(and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,202 INFO L273 TraceCheckUtils]: 8: Hoare triple {1720#(and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1724#(and (= main_~i~0 1) (= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,203 INFO L273 TraceCheckUtils]: 9: Hoare triple {1724#(and (= main_~i~0 1) (= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {1728#(and (= |main_~#a~0.offset| 0) (= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0))} is VALID [2018-11-23 12:33:10,204 INFO L273 TraceCheckUtils]: 10: Hoare triple {1728#(and (= |main_~#a~0.offset| 0) (= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1728#(and (= |main_~#a~0.offset| 0) (= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0))} is VALID [2018-11-23 12:33:10,205 INFO L273 TraceCheckUtils]: 11: Hoare triple {1728#(and (= |main_~#a~0.offset| 0) (= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0))} assume !(~i~0 < ~SIZE~0); {1728#(and (= |main_~#a~0.offset| 0) (= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0))} is VALID [2018-11-23 12:33:10,206 INFO L273 TraceCheckUtils]: 12: Hoare triple {1728#(and (= |main_~#a~0.offset| 0) (= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0))} ~i~0 := 0; {1738#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0) (= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0))} is VALID [2018-11-23 12:33:10,207 INFO L273 TraceCheckUtils]: 13: Hoare triple {1738#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0) (= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {1742#(and (= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,208 INFO L273 TraceCheckUtils]: 14: Hoare triple {1742#(and (= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {1746#(and (= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,209 INFO L273 TraceCheckUtils]: 15: Hoare triple {1746#(and (= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {1750#(and (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,210 INFO L273 TraceCheckUtils]: 16: Hoare triple {1750#(and (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {1750#(and (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,211 INFO L273 TraceCheckUtils]: 17: Hoare triple {1750#(and (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {1750#(and (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,212 INFO L273 TraceCheckUtils]: 18: Hoare triple {1750#(and (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {1760#(and (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,213 INFO L273 TraceCheckUtils]: 19: Hoare triple {1760#(and (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {1764#(and (= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,214 INFO L273 TraceCheckUtils]: 20: Hoare triple {1764#(and (= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {1768#(and (= main_~i~0 1) (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,215 INFO L273 TraceCheckUtils]: 21: Hoare triple {1768#(and (= main_~i~0 1) (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {1772#(and (= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,216 INFO L273 TraceCheckUtils]: 22: Hoare triple {1772#(and (= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {1772#(and (= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,217 INFO L273 TraceCheckUtils]: 23: Hoare triple {1772#(and (= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {1772#(and (= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,219 INFO L273 TraceCheckUtils]: 24: Hoare triple {1772#(and (= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {1782#(and (= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,220 INFO L273 TraceCheckUtils]: 25: Hoare triple {1782#(and (= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {1786#(and (= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,221 INFO L273 TraceCheckUtils]: 26: Hoare triple {1786#(and (= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {1790#(and (= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,222 INFO L273 TraceCheckUtils]: 27: Hoare triple {1790#(and (= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {1794#(and (= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,222 INFO L273 TraceCheckUtils]: 28: Hoare triple {1794#(and (= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {1794#(and (= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,223 INFO L273 TraceCheckUtils]: 29: Hoare triple {1794#(and (= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {1794#(and (= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,224 INFO L273 TraceCheckUtils]: 30: Hoare triple {1794#(and (= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {1804#(and (= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,225 INFO L273 TraceCheckUtils]: 31: Hoare triple {1804#(and (= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {1808#(and (= (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,226 INFO L273 TraceCheckUtils]: 32: Hoare triple {1808#(and (= (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {1812#(and (= main_~i~0 1) (= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,228 INFO L273 TraceCheckUtils]: 33: Hoare triple {1812#(and (= main_~i~0 1) (= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {1772#(and (= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,228 INFO L273 TraceCheckUtils]: 34: Hoare triple {1772#(and (= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {1772#(and (= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,229 INFO L273 TraceCheckUtils]: 35: Hoare triple {1772#(and (= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {1772#(and (= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,230 INFO L273 TraceCheckUtils]: 36: Hoare triple {1772#(and (= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {1782#(and (= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,231 INFO L273 TraceCheckUtils]: 37: Hoare triple {1782#(and (= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {1828#(and (= (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,232 INFO L273 TraceCheckUtils]: 38: Hoare triple {1828#(and (= (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {1832#(and (= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,234 INFO L273 TraceCheckUtils]: 39: Hoare triple {1832#(and (= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {1750#(and (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,235 INFO L273 TraceCheckUtils]: 40: Hoare triple {1750#(and (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {1750#(and (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,236 INFO L273 TraceCheckUtils]: 41: Hoare triple {1750#(and (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {1750#(and (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,236 INFO L273 TraceCheckUtils]: 42: Hoare triple {1750#(and (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {1760#(and (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,238 INFO L273 TraceCheckUtils]: 43: Hoare triple {1760#(and (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {1848#(and (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,239 INFO L273 TraceCheckUtils]: 44: Hoare triple {1848#(and (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {1852#(and (= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,240 INFO L273 TraceCheckUtils]: 45: Hoare triple {1852#(and (= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {1728#(and (= |main_~#a~0.offset| 0) (= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0))} is VALID [2018-11-23 12:33:10,241 INFO L273 TraceCheckUtils]: 46: Hoare triple {1728#(and (= |main_~#a~0.offset| 0) (= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {1728#(and (= |main_~#a~0.offset| 0) (= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0))} is VALID [2018-11-23 12:33:10,242 INFO L273 TraceCheckUtils]: 47: Hoare triple {1728#(and (= |main_~#a~0.offset| 0) (= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0))} assume !(~i~0 < ~SIZE~0); {1728#(and (= |main_~#a~0.offset| 0) (= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0))} is VALID [2018-11-23 12:33:10,243 INFO L273 TraceCheckUtils]: 48: Hoare triple {1728#(and (= |main_~#a~0.offset| 0) (= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0))} ~i~0 := 0; {1738#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0) (= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0))} is VALID [2018-11-23 12:33:10,244 INFO L273 TraceCheckUtils]: 49: Hoare triple {1738#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0) (= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {1868#(and (= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,245 INFO L273 TraceCheckUtils]: 50: Hoare triple {1868#(and (= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {1872#(and (= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:10,246 INFO L273 TraceCheckUtils]: 51: Hoare triple {1872#(and (= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {1692#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:33:10,247 INFO L273 TraceCheckUtils]: 52: Hoare triple {1692#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {1692#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:33:10,248 INFO L273 TraceCheckUtils]: 53: Hoare triple {1692#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} assume !(~i~0 < ~SIZE~0); {1692#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:33:10,249 INFO L256 TraceCheckUtils]: 54: Hoare triple {1692#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {1693#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:33:10,250 INFO L273 TraceCheckUtils]: 55: Hoare triple {1693#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {1694#(= __VERIFIER_assert_~cond 1)} is VALID [2018-11-23 12:33:10,250 INFO L273 TraceCheckUtils]: 56: Hoare triple {1694#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {1649#false} is VALID [2018-11-23 12:33:10,250 INFO L273 TraceCheckUtils]: 57: Hoare triple {1649#false} assume !false; {1649#false} is VALID [2018-11-23 12:33:10,265 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 0 proven. 32 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:33:10,285 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:33:10,286 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [47, 30] total 72 [2018-11-23 12:33:10,286 INFO L78 Accepts]: Start accepts. Automaton has 72 states. Word has length 58 [2018-11-23 12:33:10,287 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:33:10,287 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 72 states. [2018-11-23 12:33:10,510 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:33:10,510 INFO L459 AbstractCegarLoop]: Interpolant automaton has 72 states [2018-11-23 12:33:10,510 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 72 interpolants. [2018-11-23 12:33:10,513 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=276, Invalid=4836, Unknown=0, NotChecked=0, Total=5112 [2018-11-23 12:33:10,513 INFO L87 Difference]: Start difference. First operand 59 states and 66 transitions. Second operand 72 states. [2018-11-23 12:33:12,483 WARN L180 SmtUtils]: Spent 125.00 ms on a formula simplification. DAG size of input: 140 DAG size of output: 37 [2018-11-23 12:33:12,905 WARN L180 SmtUtils]: Spent 106.00 ms on a formula simplification. DAG size of input: 82 DAG size of output: 50 [2018-11-23 12:33:13,699 WARN L180 SmtUtils]: Spent 272.00 ms on a formula simplification. DAG size of input: 120 DAG size of output: 57 [2018-11-23 12:33:14,414 WARN L180 SmtUtils]: Spent 345.00 ms on a formula simplification. DAG size of input: 136 DAG size of output: 55 [2018-11-23 12:33:16,163 WARN L180 SmtUtils]: Spent 298.00 ms on a formula simplification. DAG size of input: 123 DAG size of output: 59 [2018-11-23 12:33:16,669 WARN L180 SmtUtils]: Spent 123.00 ms on a formula simplification. DAG size of input: 131 DAG size of output: 21 [2018-11-23 12:33:18,098 WARN L180 SmtUtils]: Spent 257.00 ms on a formula simplification. DAG size of input: 125 DAG size of output: 60 [2018-11-23 12:33:18,713 WARN L180 SmtUtils]: Spent 229.00 ms on a formula simplification. DAG size of input: 131 DAG size of output: 61 [2018-11-23 12:33:19,380 WARN L180 SmtUtils]: Spent 154.00 ms on a formula simplification. DAG size of input: 140 DAG size of output: 36 [2018-11-23 12:33:19,934 WARN L180 SmtUtils]: Spent 140.00 ms on a formula simplification. DAG size of input: 92 DAG size of output: 57 [2018-11-23 12:33:20,761 WARN L180 SmtUtils]: Spent 173.00 ms on a formula simplification. DAG size of input: 125 DAG size of output: 64 [2018-11-23 12:33:21,200 WARN L180 SmtUtils]: Spent 235.00 ms on a formula simplification. DAG size of input: 84 DAG size of output: 50 [2018-11-23 12:33:21,773 WARN L180 SmtUtils]: Spent 203.00 ms on a formula simplification. DAG size of input: 132 DAG size of output: 58 [2018-11-23 12:33:22,418 WARN L180 SmtUtils]: Spent 298.00 ms on a formula simplification. DAG size of input: 120 DAG size of output: 63 [2018-11-23 12:33:25,437 WARN L180 SmtUtils]: Spent 210.00 ms on a formula simplification. DAG size of input: 126 DAG size of output: 61 [2018-11-23 12:33:26,203 WARN L180 SmtUtils]: Spent 154.00 ms on a formula simplification. DAG size of input: 137 DAG size of output: 38 [2018-11-23 12:33:26,632 WARN L180 SmtUtils]: Spent 140.00 ms on a formula simplification. DAG size of input: 125 DAG size of output: 52 [2018-11-23 12:33:27,728 WARN L180 SmtUtils]: Spent 164.00 ms on a formula simplification. DAG size of input: 125 DAG size of output: 59 [2018-11-23 12:33:28,842 WARN L180 SmtUtils]: Spent 208.00 ms on a formula simplification. DAG size of input: 133 DAG size of output: 58 [2018-11-23 12:33:29,671 WARN L180 SmtUtils]: Spent 421.00 ms on a formula simplification. DAG size of input: 120 DAG size of output: 57 [2018-11-23 12:33:29,996 WARN L180 SmtUtils]: Spent 126.00 ms on a formula simplification. DAG size of input: 77 DAG size of output: 52 [2018-11-23 12:33:30,667 WARN L180 SmtUtils]: Spent 101.00 ms on a formula simplification. DAG size of input: 69 DAG size of output: 52 [2018-11-23 12:33:32,659 WARN L180 SmtUtils]: Spent 214.00 ms on a formula simplification. DAG size of input: 126 DAG size of output: 62 [2018-11-23 12:33:33,468 WARN L180 SmtUtils]: Spent 116.00 ms on a formula simplification. DAG size of input: 141 DAG size of output: 38 [2018-11-23 12:33:33,838 WARN L180 SmtUtils]: Spent 149.00 ms on a formula simplification. DAG size of input: 125 DAG size of output: 53 [2018-11-23 12:33:35,064 WARN L180 SmtUtils]: Spent 128.00 ms on a formula simplification. DAG size of input: 120 DAG size of output: 51 [2018-11-23 12:33:35,672 WARN L180 SmtUtils]: Spent 203.00 ms on a formula simplification. DAG size of input: 133 DAG size of output: 59 [2018-11-23 12:33:36,258 WARN L180 SmtUtils]: Spent 205.00 ms on a formula simplification. DAG size of input: 115 DAG size of output: 52 [2018-11-23 12:33:36,821 WARN L180 SmtUtils]: Spent 106.00 ms on a formula simplification. DAG size of input: 133 DAG size of output: 21 [2018-11-23 12:33:39,059 WARN L180 SmtUtils]: Spent 217.00 ms on a formula simplification. DAG size of input: 148 DAG size of output: 61 [2018-11-23 12:33:39,889 WARN L180 SmtUtils]: Spent 214.00 ms on a formula simplification. DAG size of input: 146 DAG size of output: 65 [2018-11-23 12:33:40,709 WARN L180 SmtUtils]: Spent 267.00 ms on a formula simplification. DAG size of input: 120 DAG size of output: 60 [2018-11-23 12:33:41,310 WARN L180 SmtUtils]: Spent 183.00 ms on a formula simplification. DAG size of input: 102 DAG size of output: 66 [2018-11-23 12:33:41,885 WARN L180 SmtUtils]: Spent 108.00 ms on a formula simplification. DAG size of input: 69 DAG size of output: 50 [2018-11-23 12:33:42,506 WARN L180 SmtUtils]: Spent 204.00 ms on a formula simplification. DAG size of input: 152 DAG size of output: 45 [2018-11-23 12:33:45,451 WARN L180 SmtUtils]: Spent 101.00 ms on a formula simplification. DAG size of input: 151 DAG size of output: 34 [2018-11-23 12:33:46,273 WARN L180 SmtUtils]: Spent 137.00 ms on a formula simplification. DAG size of input: 159 DAG size of output: 40 [2018-11-23 12:33:47,239 WARN L180 SmtUtils]: Spent 140.00 ms on a formula simplification. DAG size of input: 120 DAG size of output: 47 [2018-11-23 12:33:48,026 WARN L180 SmtUtils]: Spent 154.00 ms on a formula simplification. DAG size of input: 136 DAG size of output: 54 [2018-11-23 12:33:48,701 WARN L180 SmtUtils]: Spent 332.00 ms on a formula simplification. DAG size of input: 125 DAG size of output: 67 [2018-11-23 12:33:49,542 WARN L180 SmtUtils]: Spent 154.00 ms on a formula simplification. DAG size of input: 136 DAG size of output: 54 [2018-11-23 12:33:49,989 WARN L180 SmtUtils]: Spent 135.00 ms on a formula simplification. DAG size of input: 74 DAG size of output: 58 [2018-11-23 12:33:50,807 WARN L180 SmtUtils]: Spent 252.00 ms on a formula simplification. DAG size of input: 122 DAG size of output: 20 [2018-11-23 12:33:51,205 WARN L180 SmtUtils]: Spent 122.00 ms on a formula simplification. DAG size of input: 73 DAG size of output: 56 [2018-11-23 12:33:55,054 WARN L180 SmtUtils]: Spent 160.00 ms on a formula simplification. DAG size of input: 139 DAG size of output: 59 [2018-11-23 12:33:56,678 WARN L180 SmtUtils]: Spent 216.00 ms on a formula simplification. DAG size of input: 129 DAG size of output: 65 [2018-11-23 12:33:59,581 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:33:59,582 INFO L93 Difference]: Finished difference Result 240 states and 281 transitions. [2018-11-23 12:33:59,582 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 90 states. [2018-11-23 12:33:59,582 INFO L78 Accepts]: Start accepts. Automaton has 72 states. Word has length 58 [2018-11-23 12:33:59,582 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:33:59,582 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 72 states. [2018-11-23 12:33:59,589 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 90 states to 90 states and 260 transitions. [2018-11-23 12:33:59,589 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 72 states. [2018-11-23 12:33:59,595 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 90 states to 90 states and 260 transitions. [2018-11-23 12:33:59,596 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 90 states and 260 transitions. [2018-11-23 12:34:00,167 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 260 edges. 260 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:34:00,174 INFO L225 Difference]: With dead ends: 240 [2018-11-23 12:34:00,174 INFO L226 Difference]: Without dead ends: 234 [2018-11-23 12:34:00,180 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 190 GetRequests, 30 SyntacticMatches, 9 SemanticMatches, 151 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6161 ImplicationChecksByTransitivity, 32.8s TimeCoverageRelationStatistics Valid=2788, Invalid=20468, Unknown=0, NotChecked=0, Total=23256 [2018-11-23 12:34:00,181 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 234 states. [2018-11-23 12:34:00,962 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 234 to 166. [2018-11-23 12:34:00,962 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:34:00,962 INFO L82 GeneralOperation]: Start isEquivalent. First operand 234 states. Second operand 166 states. [2018-11-23 12:34:00,962 INFO L74 IsIncluded]: Start isIncluded. First operand 234 states. Second operand 166 states. [2018-11-23 12:34:00,963 INFO L87 Difference]: Start difference. First operand 234 states. Second operand 166 states. [2018-11-23 12:34:00,978 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:34:00,978 INFO L93 Difference]: Finished difference Result 234 states and 273 transitions. [2018-11-23 12:34:00,978 INFO L276 IsEmpty]: Start isEmpty. Operand 234 states and 273 transitions. [2018-11-23 12:34:00,979 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:34:00,979 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:34:00,979 INFO L74 IsIncluded]: Start isIncluded. First operand 166 states. Second operand 234 states. [2018-11-23 12:34:00,980 INFO L87 Difference]: Start difference. First operand 166 states. Second operand 234 states. [2018-11-23 12:34:00,992 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:34:00,993 INFO L93 Difference]: Finished difference Result 234 states and 273 transitions. [2018-11-23 12:34:00,993 INFO L276 IsEmpty]: Start isEmpty. Operand 234 states and 273 transitions. [2018-11-23 12:34:00,993 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:34:00,994 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:34:00,994 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:34:00,994 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:34:00,994 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 166 states. [2018-11-23 12:34:00,999 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 166 states to 166 states and 195 transitions. [2018-11-23 12:34:01,000 INFO L78 Accepts]: Start accepts. Automaton has 166 states and 195 transitions. Word has length 58 [2018-11-23 12:34:01,000 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:34:01,000 INFO L480 AbstractCegarLoop]: Abstraction has 166 states and 195 transitions. [2018-11-23 12:34:01,000 INFO L481 AbstractCegarLoop]: Interpolant automaton has 72 states. [2018-11-23 12:34:01,000 INFO L276 IsEmpty]: Start isEmpty. Operand 166 states and 195 transitions. [2018-11-23 12:34:01,001 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 61 [2018-11-23 12:34:01,001 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:34:01,002 INFO L402 BasicCegarLoop]: trace histogram [3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:34:01,002 INFO L423 AbstractCegarLoop]: === Iteration 7 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:34:01,002 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:34:01,002 INFO L82 PathProgramCache]: Analyzing trace with hash -283302309, now seen corresponding path program 3 times [2018-11-23 12:34:01,003 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:34:01,003 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:34:01,003 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:34:01,004 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:34:01,006 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:34:01,026 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:34:01,414 INFO L256 TraceCheckUtils]: 0: Hoare triple {3127#true} call ULTIMATE.init(); {3127#true} is VALID [2018-11-23 12:34:01,415 INFO L273 TraceCheckUtils]: 1: Hoare triple {3127#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {3127#true} is VALID [2018-11-23 12:34:01,415 INFO L273 TraceCheckUtils]: 2: Hoare triple {3127#true} assume true; {3127#true} is VALID [2018-11-23 12:34:01,415 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3127#true} {3127#true} #139#return; {3127#true} is VALID [2018-11-23 12:34:01,415 INFO L256 TraceCheckUtils]: 4: Hoare triple {3127#true} call #t~ret18 := main(); {3127#true} is VALID [2018-11-23 12:34:01,416 INFO L273 TraceCheckUtils]: 5: Hoare triple {3127#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {3127#true} is VALID [2018-11-23 12:34:01,416 INFO L273 TraceCheckUtils]: 6: Hoare triple {3127#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(2 * ~SIZE~0);~sum~0 := 0;~i~0 := 0; {3127#true} is VALID [2018-11-23 12:34:01,416 INFO L273 TraceCheckUtils]: 7: Hoare triple {3127#true} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {3127#true} is VALID [2018-11-23 12:34:01,416 INFO L273 TraceCheckUtils]: 8: Hoare triple {3127#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3127#true} is VALID [2018-11-23 12:34:01,417 INFO L273 TraceCheckUtils]: 9: Hoare triple {3127#true} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {3127#true} is VALID [2018-11-23 12:34:01,417 INFO L273 TraceCheckUtils]: 10: Hoare triple {3127#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3127#true} is VALID [2018-11-23 12:34:01,417 INFO L273 TraceCheckUtils]: 11: Hoare triple {3127#true} assume !(~i~0 < ~SIZE~0); {3127#true} is VALID [2018-11-23 12:34:01,418 INFO L273 TraceCheckUtils]: 12: Hoare triple {3127#true} ~i~0 := 0; {3129#(= main_~i~0 0)} is VALID [2018-11-23 12:34:01,419 INFO L273 TraceCheckUtils]: 13: Hoare triple {3129#(= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {3129#(= main_~i~0 0)} is VALID [2018-11-23 12:34:01,419 INFO L273 TraceCheckUtils]: 14: Hoare triple {3129#(= main_~i~0 0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {3130#(<= main_~i~0 1)} is VALID [2018-11-23 12:34:01,420 INFO L273 TraceCheckUtils]: 15: Hoare triple {3130#(<= main_~i~0 1)} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {3130#(<= main_~i~0 1)} is VALID [2018-11-23 12:34:01,420 INFO L273 TraceCheckUtils]: 16: Hoare triple {3130#(<= main_~i~0 1)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {3131#(<= main_~i~0 2)} is VALID [2018-11-23 12:34:01,421 INFO L273 TraceCheckUtils]: 17: Hoare triple {3131#(<= main_~i~0 2)} assume !(~i~0 < ~SIZE~0); {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,421 INFO L273 TraceCheckUtils]: 18: Hoare triple {3132#(<= ~SIZE~0 2)} ~i~0 := 0; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,422 INFO L273 TraceCheckUtils]: 19: Hoare triple {3132#(<= ~SIZE~0 2)} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,422 INFO L273 TraceCheckUtils]: 20: Hoare triple {3132#(<= ~SIZE~0 2)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,423 INFO L273 TraceCheckUtils]: 21: Hoare triple {3132#(<= ~SIZE~0 2)} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,423 INFO L273 TraceCheckUtils]: 22: Hoare triple {3132#(<= ~SIZE~0 2)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,424 INFO L273 TraceCheckUtils]: 23: Hoare triple {3132#(<= ~SIZE~0 2)} assume !(~i~0 < ~SIZE~0); {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,426 INFO L273 TraceCheckUtils]: 24: Hoare triple {3132#(<= ~SIZE~0 2)} ~i~0 := 0; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,427 INFO L273 TraceCheckUtils]: 25: Hoare triple {3132#(<= ~SIZE~0 2)} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,427 INFO L273 TraceCheckUtils]: 26: Hoare triple {3132#(<= ~SIZE~0 2)} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,428 INFO L273 TraceCheckUtils]: 27: Hoare triple {3132#(<= ~SIZE~0 2)} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,428 INFO L273 TraceCheckUtils]: 28: Hoare triple {3132#(<= ~SIZE~0 2)} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,428 INFO L273 TraceCheckUtils]: 29: Hoare triple {3132#(<= ~SIZE~0 2)} assume !(~i~0 < ~SIZE~0); {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,429 INFO L273 TraceCheckUtils]: 30: Hoare triple {3132#(<= ~SIZE~0 2)} ~i~0 := 0; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,429 INFO L273 TraceCheckUtils]: 31: Hoare triple {3132#(<= ~SIZE~0 2)} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,429 INFO L273 TraceCheckUtils]: 32: Hoare triple {3132#(<= ~SIZE~0 2)} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,430 INFO L273 TraceCheckUtils]: 33: Hoare triple {3132#(<= ~SIZE~0 2)} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,430 INFO L273 TraceCheckUtils]: 34: Hoare triple {3132#(<= ~SIZE~0 2)} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,431 INFO L273 TraceCheckUtils]: 35: Hoare triple {3132#(<= ~SIZE~0 2)} assume !(~i~0 < ~SIZE~0); {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,432 INFO L273 TraceCheckUtils]: 36: Hoare triple {3132#(<= ~SIZE~0 2)} ~i~0 := 0; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,432 INFO L273 TraceCheckUtils]: 37: Hoare triple {3132#(<= ~SIZE~0 2)} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,432 INFO L273 TraceCheckUtils]: 38: Hoare triple {3132#(<= ~SIZE~0 2)} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,433 INFO L273 TraceCheckUtils]: 39: Hoare triple {3132#(<= ~SIZE~0 2)} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,434 INFO L273 TraceCheckUtils]: 40: Hoare triple {3132#(<= ~SIZE~0 2)} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,434 INFO L273 TraceCheckUtils]: 41: Hoare triple {3132#(<= ~SIZE~0 2)} assume !(~i~0 < ~SIZE~0); {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,437 INFO L273 TraceCheckUtils]: 42: Hoare triple {3132#(<= ~SIZE~0 2)} ~i~0 := 0; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,438 INFO L273 TraceCheckUtils]: 43: Hoare triple {3132#(<= ~SIZE~0 2)} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,438 INFO L273 TraceCheckUtils]: 44: Hoare triple {3132#(<= ~SIZE~0 2)} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,439 INFO L273 TraceCheckUtils]: 45: Hoare triple {3132#(<= ~SIZE~0 2)} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,439 INFO L273 TraceCheckUtils]: 46: Hoare triple {3132#(<= ~SIZE~0 2)} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,439 INFO L273 TraceCheckUtils]: 47: Hoare triple {3132#(<= ~SIZE~0 2)} assume !(~i~0 < ~SIZE~0); {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,440 INFO L273 TraceCheckUtils]: 48: Hoare triple {3132#(<= ~SIZE~0 2)} ~i~0 := 0; {3133#(and (<= ~SIZE~0 2) (= main_~i~0 0))} is VALID [2018-11-23 12:34:01,440 INFO L273 TraceCheckUtils]: 49: Hoare triple {3133#(and (<= ~SIZE~0 2) (= main_~i~0 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {3133#(and (<= ~SIZE~0 2) (= main_~i~0 0))} is VALID [2018-11-23 12:34:01,441 INFO L273 TraceCheckUtils]: 50: Hoare triple {3133#(and (<= ~SIZE~0 2) (= main_~i~0 0))} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {3134#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:34:01,441 INFO L273 TraceCheckUtils]: 51: Hoare triple {3134#(<= ~SIZE~0 (+ main_~i~0 1))} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {3134#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:34:01,442 INFO L273 TraceCheckUtils]: 52: Hoare triple {3134#(<= ~SIZE~0 (+ main_~i~0 1))} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {3135#(<= ~SIZE~0 main_~i~0)} is VALID [2018-11-23 12:34:01,443 INFO L273 TraceCheckUtils]: 53: Hoare triple {3135#(<= ~SIZE~0 main_~i~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {3128#false} is VALID [2018-11-23 12:34:01,443 INFO L273 TraceCheckUtils]: 54: Hoare triple {3128#false} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {3128#false} is VALID [2018-11-23 12:34:01,443 INFO L273 TraceCheckUtils]: 55: Hoare triple {3128#false} assume !(~i~0 < ~SIZE~0); {3128#false} is VALID [2018-11-23 12:34:01,444 INFO L256 TraceCheckUtils]: 56: Hoare triple {3128#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {3128#false} is VALID [2018-11-23 12:34:01,444 INFO L273 TraceCheckUtils]: 57: Hoare triple {3128#false} ~cond := #in~cond; {3128#false} is VALID [2018-11-23 12:34:01,444 INFO L273 TraceCheckUtils]: 58: Hoare triple {3128#false} assume 0 == ~cond; {3128#false} is VALID [2018-11-23 12:34:01,445 INFO L273 TraceCheckUtils]: 59: Hoare triple {3128#false} assume !false; {3128#false} is VALID [2018-11-23 12:34:01,447 INFO L134 CoverageAnalysis]: Checked inductivity of 37 backedges. 6 proven. 7 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2018-11-23 12:34:01,448 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:34:01,448 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:34:01,456 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:34:01,485 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2018-11-23 12:34:01,485 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:34:01,521 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:34:01,524 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:34:01,818 INFO L256 TraceCheckUtils]: 0: Hoare triple {3127#true} call ULTIMATE.init(); {3127#true} is VALID [2018-11-23 12:34:01,819 INFO L273 TraceCheckUtils]: 1: Hoare triple {3127#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {3127#true} is VALID [2018-11-23 12:34:01,819 INFO L273 TraceCheckUtils]: 2: Hoare triple {3127#true} assume true; {3127#true} is VALID [2018-11-23 12:34:01,819 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3127#true} {3127#true} #139#return; {3127#true} is VALID [2018-11-23 12:34:01,820 INFO L256 TraceCheckUtils]: 4: Hoare triple {3127#true} call #t~ret18 := main(); {3127#true} is VALID [2018-11-23 12:34:01,820 INFO L273 TraceCheckUtils]: 5: Hoare triple {3127#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {3127#true} is VALID [2018-11-23 12:34:01,820 INFO L273 TraceCheckUtils]: 6: Hoare triple {3127#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(2 * ~SIZE~0);~sum~0 := 0;~i~0 := 0; {3127#true} is VALID [2018-11-23 12:34:01,820 INFO L273 TraceCheckUtils]: 7: Hoare triple {3127#true} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {3127#true} is VALID [2018-11-23 12:34:01,820 INFO L273 TraceCheckUtils]: 8: Hoare triple {3127#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3127#true} is VALID [2018-11-23 12:34:01,821 INFO L273 TraceCheckUtils]: 9: Hoare triple {3127#true} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {3127#true} is VALID [2018-11-23 12:34:01,821 INFO L273 TraceCheckUtils]: 10: Hoare triple {3127#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3127#true} is VALID [2018-11-23 12:34:01,821 INFO L273 TraceCheckUtils]: 11: Hoare triple {3127#true} assume !(~i~0 < ~SIZE~0); {3127#true} is VALID [2018-11-23 12:34:01,821 INFO L273 TraceCheckUtils]: 12: Hoare triple {3127#true} ~i~0 := 0; {3127#true} is VALID [2018-11-23 12:34:01,821 INFO L273 TraceCheckUtils]: 13: Hoare triple {3127#true} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {3127#true} is VALID [2018-11-23 12:34:01,822 INFO L273 TraceCheckUtils]: 14: Hoare triple {3127#true} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {3127#true} is VALID [2018-11-23 12:34:01,822 INFO L273 TraceCheckUtils]: 15: Hoare triple {3127#true} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {3127#true} is VALID [2018-11-23 12:34:01,822 INFO L273 TraceCheckUtils]: 16: Hoare triple {3127#true} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {3127#true} is VALID [2018-11-23 12:34:01,822 INFO L273 TraceCheckUtils]: 17: Hoare triple {3127#true} assume !(~i~0 < ~SIZE~0); {3127#true} is VALID [2018-11-23 12:34:01,822 INFO L273 TraceCheckUtils]: 18: Hoare triple {3127#true} ~i~0 := 0; {3127#true} is VALID [2018-11-23 12:34:01,823 INFO L273 TraceCheckUtils]: 19: Hoare triple {3127#true} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {3127#true} is VALID [2018-11-23 12:34:01,823 INFO L273 TraceCheckUtils]: 20: Hoare triple {3127#true} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {3127#true} is VALID [2018-11-23 12:34:01,823 INFO L273 TraceCheckUtils]: 21: Hoare triple {3127#true} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {3127#true} is VALID [2018-11-23 12:34:01,823 INFO L273 TraceCheckUtils]: 22: Hoare triple {3127#true} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {3127#true} is VALID [2018-11-23 12:34:01,823 INFO L273 TraceCheckUtils]: 23: Hoare triple {3127#true} assume !(~i~0 < ~SIZE~0); {3127#true} is VALID [2018-11-23 12:34:01,823 INFO L273 TraceCheckUtils]: 24: Hoare triple {3127#true} ~i~0 := 0; {3127#true} is VALID [2018-11-23 12:34:01,824 INFO L273 TraceCheckUtils]: 25: Hoare triple {3127#true} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {3127#true} is VALID [2018-11-23 12:34:01,824 INFO L273 TraceCheckUtils]: 26: Hoare triple {3127#true} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {3127#true} is VALID [2018-11-23 12:34:01,824 INFO L273 TraceCheckUtils]: 27: Hoare triple {3127#true} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {3127#true} is VALID [2018-11-23 12:34:01,824 INFO L273 TraceCheckUtils]: 28: Hoare triple {3127#true} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {3127#true} is VALID [2018-11-23 12:34:01,824 INFO L273 TraceCheckUtils]: 29: Hoare triple {3127#true} assume !(~i~0 < ~SIZE~0); {3127#true} is VALID [2018-11-23 12:34:01,826 INFO L273 TraceCheckUtils]: 30: Hoare triple {3127#true} ~i~0 := 0; {3229#(<= main_~i~0 0)} is VALID [2018-11-23 12:34:01,826 INFO L273 TraceCheckUtils]: 31: Hoare triple {3229#(<= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {3229#(<= main_~i~0 0)} is VALID [2018-11-23 12:34:01,830 INFO L273 TraceCheckUtils]: 32: Hoare triple {3229#(<= main_~i~0 0)} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {3130#(<= main_~i~0 1)} is VALID [2018-11-23 12:34:01,830 INFO L273 TraceCheckUtils]: 33: Hoare triple {3130#(<= main_~i~0 1)} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {3130#(<= main_~i~0 1)} is VALID [2018-11-23 12:34:01,832 INFO L273 TraceCheckUtils]: 34: Hoare triple {3130#(<= main_~i~0 1)} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {3131#(<= main_~i~0 2)} is VALID [2018-11-23 12:34:01,832 INFO L273 TraceCheckUtils]: 35: Hoare triple {3131#(<= main_~i~0 2)} assume !(~i~0 < ~SIZE~0); {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,834 INFO L273 TraceCheckUtils]: 36: Hoare triple {3132#(<= ~SIZE~0 2)} ~i~0 := 0; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,834 INFO L273 TraceCheckUtils]: 37: Hoare triple {3132#(<= ~SIZE~0 2)} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,836 INFO L273 TraceCheckUtils]: 38: Hoare triple {3132#(<= ~SIZE~0 2)} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,836 INFO L273 TraceCheckUtils]: 39: Hoare triple {3132#(<= ~SIZE~0 2)} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,838 INFO L273 TraceCheckUtils]: 40: Hoare triple {3132#(<= ~SIZE~0 2)} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,838 INFO L273 TraceCheckUtils]: 41: Hoare triple {3132#(<= ~SIZE~0 2)} assume !(~i~0 < ~SIZE~0); {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,838 INFO L273 TraceCheckUtils]: 42: Hoare triple {3132#(<= ~SIZE~0 2)} ~i~0 := 0; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,839 INFO L273 TraceCheckUtils]: 43: Hoare triple {3132#(<= ~SIZE~0 2)} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,839 INFO L273 TraceCheckUtils]: 44: Hoare triple {3132#(<= ~SIZE~0 2)} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,839 INFO L273 TraceCheckUtils]: 45: Hoare triple {3132#(<= ~SIZE~0 2)} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,840 INFO L273 TraceCheckUtils]: 46: Hoare triple {3132#(<= ~SIZE~0 2)} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,840 INFO L273 TraceCheckUtils]: 47: Hoare triple {3132#(<= ~SIZE~0 2)} assume !(~i~0 < ~SIZE~0); {3132#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:34:01,840 INFO L273 TraceCheckUtils]: 48: Hoare triple {3132#(<= ~SIZE~0 2)} ~i~0 := 0; {3284#(and (<= 0 main_~i~0) (<= ~SIZE~0 2))} is VALID [2018-11-23 12:34:01,841 INFO L273 TraceCheckUtils]: 49: Hoare triple {3284#(and (<= 0 main_~i~0) (<= ~SIZE~0 2))} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {3284#(and (<= 0 main_~i~0) (<= ~SIZE~0 2))} is VALID [2018-11-23 12:34:01,841 INFO L273 TraceCheckUtils]: 50: Hoare triple {3284#(and (<= 0 main_~i~0) (<= ~SIZE~0 2))} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {3291#(and (<= 1 main_~i~0) (<= ~SIZE~0 2))} is VALID [2018-11-23 12:34:01,842 INFO L273 TraceCheckUtils]: 51: Hoare triple {3291#(and (<= 1 main_~i~0) (<= ~SIZE~0 2))} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {3291#(and (<= 1 main_~i~0) (<= ~SIZE~0 2))} is VALID [2018-11-23 12:34:01,843 INFO L273 TraceCheckUtils]: 52: Hoare triple {3291#(and (<= 1 main_~i~0) (<= ~SIZE~0 2))} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {3298#(and (<= 2 main_~i~0) (<= ~SIZE~0 2))} is VALID [2018-11-23 12:34:01,843 INFO L273 TraceCheckUtils]: 53: Hoare triple {3298#(and (<= 2 main_~i~0) (<= ~SIZE~0 2))} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {3128#false} is VALID [2018-11-23 12:34:01,844 INFO L273 TraceCheckUtils]: 54: Hoare triple {3128#false} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {3128#false} is VALID [2018-11-23 12:34:01,844 INFO L273 TraceCheckUtils]: 55: Hoare triple {3128#false} assume !(~i~0 < ~SIZE~0); {3128#false} is VALID [2018-11-23 12:34:01,844 INFO L256 TraceCheckUtils]: 56: Hoare triple {3128#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {3128#false} is VALID [2018-11-23 12:34:01,844 INFO L273 TraceCheckUtils]: 57: Hoare triple {3128#false} ~cond := #in~cond; {3128#false} is VALID [2018-11-23 12:34:01,845 INFO L273 TraceCheckUtils]: 58: Hoare triple {3128#false} assume 0 == ~cond; {3128#false} is VALID [2018-11-23 12:34:01,845 INFO L273 TraceCheckUtils]: 59: Hoare triple {3128#false} assume !false; {3128#false} is VALID [2018-11-23 12:34:01,849 INFO L134 CoverageAnalysis]: Checked inductivity of 37 backedges. 9 proven. 4 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2018-11-23 12:34:01,878 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:34:01,878 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 13 [2018-11-23 12:34:01,879 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 60 [2018-11-23 12:34:01,879 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:34:01,879 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states. [2018-11-23 12:34:01,976 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:34:01,976 INFO L459 AbstractCegarLoop]: Interpolant automaton has 13 states [2018-11-23 12:34:01,976 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2018-11-23 12:34:01,976 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=111, Unknown=0, NotChecked=0, Total=156 [2018-11-23 12:34:01,977 INFO L87 Difference]: Start difference. First operand 166 states and 195 transitions. Second operand 13 states. [2018-11-23 12:34:02,447 WARN L180 SmtUtils]: Spent 125.00 ms on a formula simplification that was a NOOP. DAG size: 8 [2018-11-23 12:34:04,339 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:34:04,340 INFO L93 Difference]: Finished difference Result 323 states and 378 transitions. [2018-11-23 12:34:04,340 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-23 12:34:04,340 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 60 [2018-11-23 12:34:04,340 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:34:04,340 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-23 12:34:04,344 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 189 transitions. [2018-11-23 12:34:04,344 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-23 12:34:04,347 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 189 transitions. [2018-11-23 12:34:04,347 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 189 transitions. [2018-11-23 12:34:04,605 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 189 edges. 189 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:34:04,609 INFO L225 Difference]: With dead ends: 323 [2018-11-23 12:34:04,609 INFO L226 Difference]: Without dead ends: 137 [2018-11-23 12:34:04,611 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 74 GetRequests, 60 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 45 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=69, Invalid=171, Unknown=0, NotChecked=0, Total=240 [2018-11-23 12:34:04,611 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 137 states. [2018-11-23 12:34:05,354 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 137 to 117. [2018-11-23 12:34:05,354 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:34:05,354 INFO L82 GeneralOperation]: Start isEquivalent. First operand 137 states. Second operand 117 states. [2018-11-23 12:34:05,354 INFO L74 IsIncluded]: Start isIncluded. First operand 137 states. Second operand 117 states. [2018-11-23 12:34:05,354 INFO L87 Difference]: Start difference. First operand 137 states. Second operand 117 states. [2018-11-23 12:34:05,359 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:34:05,360 INFO L93 Difference]: Finished difference Result 137 states and 151 transitions. [2018-11-23 12:34:05,360 INFO L276 IsEmpty]: Start isEmpty. Operand 137 states and 151 transitions. [2018-11-23 12:34:05,360 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:34:05,360 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:34:05,361 INFO L74 IsIncluded]: Start isIncluded. First operand 117 states. Second operand 137 states. [2018-11-23 12:34:05,361 INFO L87 Difference]: Start difference. First operand 117 states. Second operand 137 states. [2018-11-23 12:34:05,365 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:34:05,366 INFO L93 Difference]: Finished difference Result 137 states and 151 transitions. [2018-11-23 12:34:05,366 INFO L276 IsEmpty]: Start isEmpty. Operand 137 states and 151 transitions. [2018-11-23 12:34:05,366 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:34:05,367 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:34:05,367 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:34:05,367 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:34:05,367 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 117 states. [2018-11-23 12:34:05,370 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 117 states to 117 states and 131 transitions. [2018-11-23 12:34:05,371 INFO L78 Accepts]: Start accepts. Automaton has 117 states and 131 transitions. Word has length 60 [2018-11-23 12:34:05,371 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:34:05,371 INFO L480 AbstractCegarLoop]: Abstraction has 117 states and 131 transitions. [2018-11-23 12:34:05,371 INFO L481 AbstractCegarLoop]: Interpolant automaton has 13 states. [2018-11-23 12:34:05,371 INFO L276 IsEmpty]: Start isEmpty. Operand 117 states and 131 transitions. [2018-11-23 12:34:05,372 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 63 [2018-11-23 12:34:05,372 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:34:05,372 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:34:05,373 INFO L423 AbstractCegarLoop]: === Iteration 8 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:34:05,373 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:34:05,373 INFO L82 PathProgramCache]: Analyzing trace with hash 1714452185, now seen corresponding path program 4 times [2018-11-23 12:34:05,373 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:34:05,373 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:34:05,374 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:34:05,374 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:34:05,374 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:34:05,386 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:34:05,609 INFO L256 TraceCheckUtils]: 0: Hoare triple {4256#true} call ULTIMATE.init(); {4256#true} is VALID [2018-11-23 12:34:05,610 INFO L273 TraceCheckUtils]: 1: Hoare triple {4256#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {4256#true} is VALID [2018-11-23 12:34:05,610 INFO L273 TraceCheckUtils]: 2: Hoare triple {4256#true} assume true; {4256#true} is VALID [2018-11-23 12:34:05,610 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4256#true} {4256#true} #139#return; {4256#true} is VALID [2018-11-23 12:34:05,611 INFO L256 TraceCheckUtils]: 4: Hoare triple {4256#true} call #t~ret18 := main(); {4256#true} is VALID [2018-11-23 12:34:05,611 INFO L273 TraceCheckUtils]: 5: Hoare triple {4256#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {4256#true} is VALID [2018-11-23 12:34:05,611 INFO L273 TraceCheckUtils]: 6: Hoare triple {4256#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(2 * ~SIZE~0);~sum~0 := 0;~i~0 := 0; {4258#(= main_~i~0 0)} is VALID [2018-11-23 12:34:05,612 INFO L273 TraceCheckUtils]: 7: Hoare triple {4258#(= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {4258#(= main_~i~0 0)} is VALID [2018-11-23 12:34:05,612 INFO L273 TraceCheckUtils]: 8: Hoare triple {4258#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4259#(<= 1 main_~i~0)} is VALID [2018-11-23 12:34:05,613 INFO L273 TraceCheckUtils]: 9: Hoare triple {4259#(<= 1 main_~i~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {4259#(<= 1 main_~i~0)} is VALID [2018-11-23 12:34:05,613 INFO L273 TraceCheckUtils]: 10: Hoare triple {4259#(<= 1 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4260#(<= 2 main_~i~0)} is VALID [2018-11-23 12:34:05,614 INFO L273 TraceCheckUtils]: 11: Hoare triple {4260#(<= 2 main_~i~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {4260#(<= 2 main_~i~0)} is VALID [2018-11-23 12:34:05,614 INFO L273 TraceCheckUtils]: 12: Hoare triple {4260#(<= 2 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4261#(<= 3 main_~i~0)} is VALID [2018-11-23 12:34:05,615 INFO L273 TraceCheckUtils]: 13: Hoare triple {4261#(<= 3 main_~i~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {4262#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:34:05,615 INFO L273 TraceCheckUtils]: 14: Hoare triple {4262#(<= 4 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4262#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:34:05,616 INFO L273 TraceCheckUtils]: 15: Hoare triple {4262#(<= 4 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {4262#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:34:05,617 INFO L273 TraceCheckUtils]: 16: Hoare triple {4262#(<= 4 ~SIZE~0)} ~i~0 := 0; {4263#(and (<= 4 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:34:05,617 INFO L273 TraceCheckUtils]: 17: Hoare triple {4263#(and (<= 4 ~SIZE~0) (= main_~i~0 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {4263#(and (<= 4 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:34:05,618 INFO L273 TraceCheckUtils]: 18: Hoare triple {4263#(and (<= 4 ~SIZE~0) (= main_~i~0 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {4264#(<= (+ main_~i~0 3) ~SIZE~0)} is VALID [2018-11-23 12:34:05,619 INFO L273 TraceCheckUtils]: 19: Hoare triple {4264#(<= (+ main_~i~0 3) ~SIZE~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {4264#(<= (+ main_~i~0 3) ~SIZE~0)} is VALID [2018-11-23 12:34:05,619 INFO L273 TraceCheckUtils]: 20: Hoare triple {4264#(<= (+ main_~i~0 3) ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {4265#(<= (+ main_~i~0 2) ~SIZE~0)} is VALID [2018-11-23 12:34:05,620 INFO L273 TraceCheckUtils]: 21: Hoare triple {4265#(<= (+ main_~i~0 2) ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {4257#false} is VALID [2018-11-23 12:34:05,620 INFO L273 TraceCheckUtils]: 22: Hoare triple {4257#false} ~i~0 := 0; {4257#false} is VALID [2018-11-23 12:34:05,621 INFO L273 TraceCheckUtils]: 23: Hoare triple {4257#false} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {4257#false} is VALID [2018-11-23 12:34:05,621 INFO L273 TraceCheckUtils]: 24: Hoare triple {4257#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4257#false} is VALID [2018-11-23 12:34:05,621 INFO L273 TraceCheckUtils]: 25: Hoare triple {4257#false} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {4257#false} is VALID [2018-11-23 12:34:05,621 INFO L273 TraceCheckUtils]: 26: Hoare triple {4257#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4257#false} is VALID [2018-11-23 12:34:05,621 INFO L273 TraceCheckUtils]: 27: Hoare triple {4257#false} assume !(~i~0 < ~SIZE~0); {4257#false} is VALID [2018-11-23 12:34:05,622 INFO L273 TraceCheckUtils]: 28: Hoare triple {4257#false} ~i~0 := 0; {4257#false} is VALID [2018-11-23 12:34:05,622 INFO L273 TraceCheckUtils]: 29: Hoare triple {4257#false} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {4257#false} is VALID [2018-11-23 12:34:05,622 INFO L273 TraceCheckUtils]: 30: Hoare triple {4257#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4257#false} is VALID [2018-11-23 12:34:05,622 INFO L273 TraceCheckUtils]: 31: Hoare triple {4257#false} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {4257#false} is VALID [2018-11-23 12:34:05,623 INFO L273 TraceCheckUtils]: 32: Hoare triple {4257#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4257#false} is VALID [2018-11-23 12:34:05,623 INFO L273 TraceCheckUtils]: 33: Hoare triple {4257#false} assume !(~i~0 < ~SIZE~0); {4257#false} is VALID [2018-11-23 12:34:05,623 INFO L273 TraceCheckUtils]: 34: Hoare triple {4257#false} ~i~0 := 0; {4257#false} is VALID [2018-11-23 12:34:05,623 INFO L273 TraceCheckUtils]: 35: Hoare triple {4257#false} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {4257#false} is VALID [2018-11-23 12:34:05,623 INFO L273 TraceCheckUtils]: 36: Hoare triple {4257#false} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {4257#false} is VALID [2018-11-23 12:34:05,624 INFO L273 TraceCheckUtils]: 37: Hoare triple {4257#false} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {4257#false} is VALID [2018-11-23 12:34:05,624 INFO L273 TraceCheckUtils]: 38: Hoare triple {4257#false} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {4257#false} is VALID [2018-11-23 12:34:05,624 INFO L273 TraceCheckUtils]: 39: Hoare triple {4257#false} assume !(~i~0 < ~SIZE~0); {4257#false} is VALID [2018-11-23 12:34:05,624 INFO L273 TraceCheckUtils]: 40: Hoare triple {4257#false} ~i~0 := 0; {4257#false} is VALID [2018-11-23 12:34:05,624 INFO L273 TraceCheckUtils]: 41: Hoare triple {4257#false} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {4257#false} is VALID [2018-11-23 12:34:05,625 INFO L273 TraceCheckUtils]: 42: Hoare triple {4257#false} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {4257#false} is VALID [2018-11-23 12:34:05,625 INFO L273 TraceCheckUtils]: 43: Hoare triple {4257#false} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {4257#false} is VALID [2018-11-23 12:34:05,625 INFO L273 TraceCheckUtils]: 44: Hoare triple {4257#false} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {4257#false} is VALID [2018-11-23 12:34:05,625 INFO L273 TraceCheckUtils]: 45: Hoare triple {4257#false} assume !(~i~0 < ~SIZE~0); {4257#false} is VALID [2018-11-23 12:34:05,626 INFO L273 TraceCheckUtils]: 46: Hoare triple {4257#false} ~i~0 := 0; {4257#false} is VALID [2018-11-23 12:34:05,626 INFO L273 TraceCheckUtils]: 47: Hoare triple {4257#false} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {4257#false} is VALID [2018-11-23 12:34:05,626 INFO L273 TraceCheckUtils]: 48: Hoare triple {4257#false} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {4257#false} is VALID [2018-11-23 12:34:05,626 INFO L273 TraceCheckUtils]: 49: Hoare triple {4257#false} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {4257#false} is VALID [2018-11-23 12:34:05,626 INFO L273 TraceCheckUtils]: 50: Hoare triple {4257#false} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {4257#false} is VALID [2018-11-23 12:34:05,627 INFO L273 TraceCheckUtils]: 51: Hoare triple {4257#false} assume !(~i~0 < ~SIZE~0); {4257#false} is VALID [2018-11-23 12:34:05,627 INFO L273 TraceCheckUtils]: 52: Hoare triple {4257#false} ~i~0 := 0; {4257#false} is VALID [2018-11-23 12:34:05,627 INFO L273 TraceCheckUtils]: 53: Hoare triple {4257#false} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {4257#false} is VALID [2018-11-23 12:34:05,627 INFO L273 TraceCheckUtils]: 54: Hoare triple {4257#false} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {4257#false} is VALID [2018-11-23 12:34:05,627 INFO L273 TraceCheckUtils]: 55: Hoare triple {4257#false} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {4257#false} is VALID [2018-11-23 12:34:05,627 INFO L273 TraceCheckUtils]: 56: Hoare triple {4257#false} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {4257#false} is VALID [2018-11-23 12:34:05,628 INFO L273 TraceCheckUtils]: 57: Hoare triple {4257#false} assume !(~i~0 < ~SIZE~0); {4257#false} is VALID [2018-11-23 12:34:05,628 INFO L256 TraceCheckUtils]: 58: Hoare triple {4257#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {4257#false} is VALID [2018-11-23 12:34:05,628 INFO L273 TraceCheckUtils]: 59: Hoare triple {4257#false} ~cond := #in~cond; {4257#false} is VALID [2018-11-23 12:34:05,628 INFO L273 TraceCheckUtils]: 60: Hoare triple {4257#false} assume 0 == ~cond; {4257#false} is VALID [2018-11-23 12:34:05,628 INFO L273 TraceCheckUtils]: 61: Hoare triple {4257#false} assume !false; {4257#false} is VALID [2018-11-23 12:34:05,631 INFO L134 CoverageAnalysis]: Checked inductivity of 44 backedges. 4 proven. 16 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2018-11-23 12:34:05,631 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:34:05,631 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:34:05,645 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 12:34:05,672 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 12:34:05,672 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:34:05,688 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:34:05,689 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:34:05,854 INFO L256 TraceCheckUtils]: 0: Hoare triple {4256#true} call ULTIMATE.init(); {4256#true} is VALID [2018-11-23 12:34:05,855 INFO L273 TraceCheckUtils]: 1: Hoare triple {4256#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {4256#true} is VALID [2018-11-23 12:34:05,855 INFO L273 TraceCheckUtils]: 2: Hoare triple {4256#true} assume true; {4256#true} is VALID [2018-11-23 12:34:05,856 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4256#true} {4256#true} #139#return; {4256#true} is VALID [2018-11-23 12:34:05,856 INFO L256 TraceCheckUtils]: 4: Hoare triple {4256#true} call #t~ret18 := main(); {4256#true} is VALID [2018-11-23 12:34:05,856 INFO L273 TraceCheckUtils]: 5: Hoare triple {4256#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {4256#true} is VALID [2018-11-23 12:34:05,857 INFO L273 TraceCheckUtils]: 6: Hoare triple {4256#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(2 * ~SIZE~0);~sum~0 := 0;~i~0 := 0; {4287#(<= 0 main_~i~0)} is VALID [2018-11-23 12:34:05,857 INFO L273 TraceCheckUtils]: 7: Hoare triple {4287#(<= 0 main_~i~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {4287#(<= 0 main_~i~0)} is VALID [2018-11-23 12:34:05,857 INFO L273 TraceCheckUtils]: 8: Hoare triple {4287#(<= 0 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4259#(<= 1 main_~i~0)} is VALID [2018-11-23 12:34:05,858 INFO L273 TraceCheckUtils]: 9: Hoare triple {4259#(<= 1 main_~i~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {4259#(<= 1 main_~i~0)} is VALID [2018-11-23 12:34:05,858 INFO L273 TraceCheckUtils]: 10: Hoare triple {4259#(<= 1 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4260#(<= 2 main_~i~0)} is VALID [2018-11-23 12:34:05,859 INFO L273 TraceCheckUtils]: 11: Hoare triple {4260#(<= 2 main_~i~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {4260#(<= 2 main_~i~0)} is VALID [2018-11-23 12:34:05,859 INFO L273 TraceCheckUtils]: 12: Hoare triple {4260#(<= 2 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4261#(<= 3 main_~i~0)} is VALID [2018-11-23 12:34:05,860 INFO L273 TraceCheckUtils]: 13: Hoare triple {4261#(<= 3 main_~i~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {4262#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:34:05,860 INFO L273 TraceCheckUtils]: 14: Hoare triple {4262#(<= 4 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4262#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:34:05,861 INFO L273 TraceCheckUtils]: 15: Hoare triple {4262#(<= 4 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {4262#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:34:05,861 INFO L273 TraceCheckUtils]: 16: Hoare triple {4262#(<= 4 ~SIZE~0)} ~i~0 := 0; {4318#(and (<= main_~i~0 0) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:34:05,862 INFO L273 TraceCheckUtils]: 17: Hoare triple {4318#(and (<= main_~i~0 0) (<= 4 ~SIZE~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {4318#(and (<= main_~i~0 0) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:34:05,863 INFO L273 TraceCheckUtils]: 18: Hoare triple {4318#(and (<= main_~i~0 0) (<= 4 ~SIZE~0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {4325#(and (<= main_~i~0 1) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:34:05,864 INFO L273 TraceCheckUtils]: 19: Hoare triple {4325#(and (<= main_~i~0 1) (<= 4 ~SIZE~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {4325#(and (<= main_~i~0 1) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:34:05,864 INFO L273 TraceCheckUtils]: 20: Hoare triple {4325#(and (<= main_~i~0 1) (<= 4 ~SIZE~0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {4332#(and (<= main_~i~0 2) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:34:05,865 INFO L273 TraceCheckUtils]: 21: Hoare triple {4332#(and (<= main_~i~0 2) (<= 4 ~SIZE~0))} assume !(~i~0 < ~SIZE~0); {4257#false} is VALID [2018-11-23 12:34:05,865 INFO L273 TraceCheckUtils]: 22: Hoare triple {4257#false} ~i~0 := 0; {4257#false} is VALID [2018-11-23 12:34:05,866 INFO L273 TraceCheckUtils]: 23: Hoare triple {4257#false} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {4257#false} is VALID [2018-11-23 12:34:05,866 INFO L273 TraceCheckUtils]: 24: Hoare triple {4257#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4257#false} is VALID [2018-11-23 12:34:05,866 INFO L273 TraceCheckUtils]: 25: Hoare triple {4257#false} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {4257#false} is VALID [2018-11-23 12:34:05,866 INFO L273 TraceCheckUtils]: 26: Hoare triple {4257#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4257#false} is VALID [2018-11-23 12:34:05,866 INFO L273 TraceCheckUtils]: 27: Hoare triple {4257#false} assume !(~i~0 < ~SIZE~0); {4257#false} is VALID [2018-11-23 12:34:05,867 INFO L273 TraceCheckUtils]: 28: Hoare triple {4257#false} ~i~0 := 0; {4257#false} is VALID [2018-11-23 12:34:05,867 INFO L273 TraceCheckUtils]: 29: Hoare triple {4257#false} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {4257#false} is VALID [2018-11-23 12:34:05,867 INFO L273 TraceCheckUtils]: 30: Hoare triple {4257#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4257#false} is VALID [2018-11-23 12:34:05,867 INFO L273 TraceCheckUtils]: 31: Hoare triple {4257#false} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {4257#false} is VALID [2018-11-23 12:34:05,867 INFO L273 TraceCheckUtils]: 32: Hoare triple {4257#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4257#false} is VALID [2018-11-23 12:34:05,868 INFO L273 TraceCheckUtils]: 33: Hoare triple {4257#false} assume !(~i~0 < ~SIZE~0); {4257#false} is VALID [2018-11-23 12:34:05,868 INFO L273 TraceCheckUtils]: 34: Hoare triple {4257#false} ~i~0 := 0; {4257#false} is VALID [2018-11-23 12:34:05,868 INFO L273 TraceCheckUtils]: 35: Hoare triple {4257#false} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {4257#false} is VALID [2018-11-23 12:34:05,868 INFO L273 TraceCheckUtils]: 36: Hoare triple {4257#false} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {4257#false} is VALID [2018-11-23 12:34:05,868 INFO L273 TraceCheckUtils]: 37: Hoare triple {4257#false} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {4257#false} is VALID [2018-11-23 12:34:05,869 INFO L273 TraceCheckUtils]: 38: Hoare triple {4257#false} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {4257#false} is VALID [2018-11-23 12:34:05,869 INFO L273 TraceCheckUtils]: 39: Hoare triple {4257#false} assume !(~i~0 < ~SIZE~0); {4257#false} is VALID [2018-11-23 12:34:05,869 INFO L273 TraceCheckUtils]: 40: Hoare triple {4257#false} ~i~0 := 0; {4257#false} is VALID [2018-11-23 12:34:05,869 INFO L273 TraceCheckUtils]: 41: Hoare triple {4257#false} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {4257#false} is VALID [2018-11-23 12:34:05,869 INFO L273 TraceCheckUtils]: 42: Hoare triple {4257#false} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {4257#false} is VALID [2018-11-23 12:34:05,870 INFO L273 TraceCheckUtils]: 43: Hoare triple {4257#false} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {4257#false} is VALID [2018-11-23 12:34:05,870 INFO L273 TraceCheckUtils]: 44: Hoare triple {4257#false} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {4257#false} is VALID [2018-11-23 12:34:05,870 INFO L273 TraceCheckUtils]: 45: Hoare triple {4257#false} assume !(~i~0 < ~SIZE~0); {4257#false} is VALID [2018-11-23 12:34:05,870 INFO L273 TraceCheckUtils]: 46: Hoare triple {4257#false} ~i~0 := 0; {4257#false} is VALID [2018-11-23 12:34:05,870 INFO L273 TraceCheckUtils]: 47: Hoare triple {4257#false} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {4257#false} is VALID [2018-11-23 12:34:05,870 INFO L273 TraceCheckUtils]: 48: Hoare triple {4257#false} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {4257#false} is VALID [2018-11-23 12:34:05,870 INFO L273 TraceCheckUtils]: 49: Hoare triple {4257#false} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {4257#false} is VALID [2018-11-23 12:34:05,870 INFO L273 TraceCheckUtils]: 50: Hoare triple {4257#false} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {4257#false} is VALID [2018-11-23 12:34:05,871 INFO L273 TraceCheckUtils]: 51: Hoare triple {4257#false} assume !(~i~0 < ~SIZE~0); {4257#false} is VALID [2018-11-23 12:34:05,871 INFO L273 TraceCheckUtils]: 52: Hoare triple {4257#false} ~i~0 := 0; {4257#false} is VALID [2018-11-23 12:34:05,871 INFO L273 TraceCheckUtils]: 53: Hoare triple {4257#false} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {4257#false} is VALID [2018-11-23 12:34:05,871 INFO L273 TraceCheckUtils]: 54: Hoare triple {4257#false} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {4257#false} is VALID [2018-11-23 12:34:05,871 INFO L273 TraceCheckUtils]: 55: Hoare triple {4257#false} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {4257#false} is VALID [2018-11-23 12:34:05,871 INFO L273 TraceCheckUtils]: 56: Hoare triple {4257#false} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {4257#false} is VALID [2018-11-23 12:34:05,871 INFO L273 TraceCheckUtils]: 57: Hoare triple {4257#false} assume !(~i~0 < ~SIZE~0); {4257#false} is VALID [2018-11-23 12:34:05,871 INFO L256 TraceCheckUtils]: 58: Hoare triple {4257#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {4257#false} is VALID [2018-11-23 12:34:05,872 INFO L273 TraceCheckUtils]: 59: Hoare triple {4257#false} ~cond := #in~cond; {4257#false} is VALID [2018-11-23 12:34:05,872 INFO L273 TraceCheckUtils]: 60: Hoare triple {4257#false} assume 0 == ~cond; {4257#false} is VALID [2018-11-23 12:34:05,872 INFO L273 TraceCheckUtils]: 61: Hoare triple {4257#false} assume !false; {4257#false} is VALID [2018-11-23 12:34:05,874 INFO L134 CoverageAnalysis]: Checked inductivity of 44 backedges. 9 proven. 11 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2018-11-23 12:34:05,892 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:34:05,893 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 14 [2018-11-23 12:34:05,893 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 62 [2018-11-23 12:34:05,894 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:34:05,894 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states. [2018-11-23 12:34:05,952 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:34:05,952 INFO L459 AbstractCegarLoop]: Interpolant automaton has 14 states [2018-11-23 12:34:05,953 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2018-11-23 12:34:05,953 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=52, Invalid=130, Unknown=0, NotChecked=0, Total=182 [2018-11-23 12:34:05,953 INFO L87 Difference]: Start difference. First operand 117 states and 131 transitions. Second operand 14 states. [2018-11-23 12:34:08,512 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:34:08,513 INFO L93 Difference]: Finished difference Result 217 states and 243 transitions. [2018-11-23 12:34:08,513 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2018-11-23 12:34:08,513 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 62 [2018-11-23 12:34:08,513 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:34:08,513 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-23 12:34:08,517 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 206 transitions. [2018-11-23 12:34:08,517 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-23 12:34:08,520 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 206 transitions. [2018-11-23 12:34:08,520 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 206 transitions. [2018-11-23 12:34:08,734 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 206 edges. 206 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:34:08,739 INFO L225 Difference]: With dead ends: 217 [2018-11-23 12:34:08,739 INFO L226 Difference]: Without dead ends: 176 [2018-11-23 12:34:08,740 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 75 GetRequests, 59 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 57 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=82, Invalid=224, Unknown=0, NotChecked=0, Total=306 [2018-11-23 12:34:08,740 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 176 states. [2018-11-23 12:34:09,320 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 176 to 156. [2018-11-23 12:34:09,320 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:34:09,321 INFO L82 GeneralOperation]: Start isEquivalent. First operand 176 states. Second operand 156 states. [2018-11-23 12:34:09,321 INFO L74 IsIncluded]: Start isIncluded. First operand 176 states. Second operand 156 states. [2018-11-23 12:34:09,321 INFO L87 Difference]: Start difference. First operand 176 states. Second operand 156 states. [2018-11-23 12:34:09,327 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:34:09,327 INFO L93 Difference]: Finished difference Result 176 states and 196 transitions. [2018-11-23 12:34:09,327 INFO L276 IsEmpty]: Start isEmpty. Operand 176 states and 196 transitions. [2018-11-23 12:34:09,328 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:34:09,328 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:34:09,328 INFO L74 IsIncluded]: Start isIncluded. First operand 156 states. Second operand 176 states. [2018-11-23 12:34:09,328 INFO L87 Difference]: Start difference. First operand 156 states. Second operand 176 states. [2018-11-23 12:34:09,334 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:34:09,334 INFO L93 Difference]: Finished difference Result 176 states and 196 transitions. [2018-11-23 12:34:09,334 INFO L276 IsEmpty]: Start isEmpty. Operand 176 states and 196 transitions. [2018-11-23 12:34:09,335 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:34:09,335 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:34:09,335 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:34:09,335 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:34:09,335 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 156 states. [2018-11-23 12:34:09,340 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 156 states to 156 states and 175 transitions. [2018-11-23 12:34:09,340 INFO L78 Accepts]: Start accepts. Automaton has 156 states and 175 transitions. Word has length 62 [2018-11-23 12:34:09,340 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:34:09,341 INFO L480 AbstractCegarLoop]: Abstraction has 156 states and 175 transitions. [2018-11-23 12:34:09,341 INFO L481 AbstractCegarLoop]: Interpolant automaton has 14 states. [2018-11-23 12:34:09,341 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 175 transitions. [2018-11-23 12:34:09,342 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 63 [2018-11-23 12:34:09,342 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:34:09,342 INFO L402 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:34:09,342 INFO L423 AbstractCegarLoop]: === Iteration 9 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:34:09,342 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:34:09,343 INFO L82 PathProgramCache]: Analyzing trace with hash -459950439, now seen corresponding path program 5 times [2018-11-23 12:34:09,343 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:34:09,343 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:34:09,343 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:34:09,344 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:34:09,344 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:34:09,355 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:34:10,223 INFO L256 TraceCheckUtils]: 0: Hoare triple {5371#true} call ULTIMATE.init(); {5371#true} is VALID [2018-11-23 12:34:10,224 INFO L273 TraceCheckUtils]: 1: Hoare triple {5371#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {5371#true} is VALID [2018-11-23 12:34:10,224 INFO L273 TraceCheckUtils]: 2: Hoare triple {5371#true} assume true; {5371#true} is VALID [2018-11-23 12:34:10,224 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5371#true} {5371#true} #139#return; {5371#true} is VALID [2018-11-23 12:34:10,225 INFO L256 TraceCheckUtils]: 4: Hoare triple {5371#true} call #t~ret18 := main(); {5371#true} is VALID [2018-11-23 12:34:10,225 INFO L273 TraceCheckUtils]: 5: Hoare triple {5371#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {5371#true} is VALID [2018-11-23 12:34:10,225 INFO L273 TraceCheckUtils]: 6: Hoare triple {5371#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(2 * ~SIZE~0);~sum~0 := 0;~i~0 := 0; {5371#true} is VALID [2018-11-23 12:34:10,225 INFO L273 TraceCheckUtils]: 7: Hoare triple {5371#true} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {5371#true} is VALID [2018-11-23 12:34:10,225 INFO L273 TraceCheckUtils]: 8: Hoare triple {5371#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5371#true} is VALID [2018-11-23 12:34:10,226 INFO L273 TraceCheckUtils]: 9: Hoare triple {5371#true} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {5371#true} is VALID [2018-11-23 12:34:10,226 INFO L273 TraceCheckUtils]: 10: Hoare triple {5371#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5371#true} is VALID [2018-11-23 12:34:10,226 INFO L273 TraceCheckUtils]: 11: Hoare triple {5371#true} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {5371#true} is VALID [2018-11-23 12:34:10,226 INFO L273 TraceCheckUtils]: 12: Hoare triple {5371#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5371#true} is VALID [2018-11-23 12:34:10,226 INFO L273 TraceCheckUtils]: 13: Hoare triple {5371#true} assume !(~i~0 < ~SIZE~0); {5371#true} is VALID [2018-11-23 12:34:10,226 INFO L273 TraceCheckUtils]: 14: Hoare triple {5371#true} ~i~0 := 0; {5373#(= main_~i~0 0)} is VALID [2018-11-23 12:34:10,227 INFO L273 TraceCheckUtils]: 15: Hoare triple {5373#(= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {5373#(= main_~i~0 0)} is VALID [2018-11-23 12:34:10,227 INFO L273 TraceCheckUtils]: 16: Hoare triple {5373#(= main_~i~0 0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {5374#(<= 1 main_~i~0)} is VALID [2018-11-23 12:34:10,228 INFO L273 TraceCheckUtils]: 17: Hoare triple {5374#(<= 1 main_~i~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {5374#(<= 1 main_~i~0)} is VALID [2018-11-23 12:34:10,228 INFO L273 TraceCheckUtils]: 18: Hoare triple {5374#(<= 1 main_~i~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {5375#(<= 2 main_~i~0)} is VALID [2018-11-23 12:34:10,229 INFO L273 TraceCheckUtils]: 19: Hoare triple {5375#(<= 2 main_~i~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {5376#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:34:10,229 INFO L273 TraceCheckUtils]: 20: Hoare triple {5376#(<= 3 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {5376#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:34:10,229 INFO L273 TraceCheckUtils]: 21: Hoare triple {5376#(<= 3 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {5376#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:34:10,230 INFO L273 TraceCheckUtils]: 22: Hoare triple {5376#(<= 3 ~SIZE~0)} ~i~0 := 0; {5377#(and (<= 3 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:34:10,230 INFO L273 TraceCheckUtils]: 23: Hoare triple {5377#(and (<= 3 ~SIZE~0) (= main_~i~0 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {5377#(and (<= 3 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:34:10,231 INFO L273 TraceCheckUtils]: 24: Hoare triple {5377#(and (<= 3 ~SIZE~0) (= main_~i~0 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {5378#(<= (+ main_~i~0 2) ~SIZE~0)} is VALID [2018-11-23 12:34:10,231 INFO L273 TraceCheckUtils]: 25: Hoare triple {5378#(<= (+ main_~i~0 2) ~SIZE~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {5378#(<= (+ main_~i~0 2) ~SIZE~0)} is VALID [2018-11-23 12:34:10,232 INFO L273 TraceCheckUtils]: 26: Hoare triple {5378#(<= (+ main_~i~0 2) ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {5379#(<= (+ main_~i~0 1) ~SIZE~0)} is VALID [2018-11-23 12:34:10,233 INFO L273 TraceCheckUtils]: 27: Hoare triple {5379#(<= (+ main_~i~0 1) ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {5372#false} is VALID [2018-11-23 12:34:10,233 INFO L273 TraceCheckUtils]: 28: Hoare triple {5372#false} ~i~0 := 0; {5372#false} is VALID [2018-11-23 12:34:10,233 INFO L273 TraceCheckUtils]: 29: Hoare triple {5372#false} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {5372#false} is VALID [2018-11-23 12:34:10,233 INFO L273 TraceCheckUtils]: 30: Hoare triple {5372#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {5372#false} is VALID [2018-11-23 12:34:10,233 INFO L273 TraceCheckUtils]: 31: Hoare triple {5372#false} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {5372#false} is VALID [2018-11-23 12:34:10,234 INFO L273 TraceCheckUtils]: 32: Hoare triple {5372#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {5372#false} is VALID [2018-11-23 12:34:10,234 INFO L273 TraceCheckUtils]: 33: Hoare triple {5372#false} assume !(~i~0 < ~SIZE~0); {5372#false} is VALID [2018-11-23 12:34:10,234 INFO L273 TraceCheckUtils]: 34: Hoare triple {5372#false} ~i~0 := 0; {5372#false} is VALID [2018-11-23 12:34:10,234 INFO L273 TraceCheckUtils]: 35: Hoare triple {5372#false} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {5372#false} is VALID [2018-11-23 12:34:10,234 INFO L273 TraceCheckUtils]: 36: Hoare triple {5372#false} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {5372#false} is VALID [2018-11-23 12:34:10,235 INFO L273 TraceCheckUtils]: 37: Hoare triple {5372#false} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {5372#false} is VALID [2018-11-23 12:34:10,235 INFO L273 TraceCheckUtils]: 38: Hoare triple {5372#false} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {5372#false} is VALID [2018-11-23 12:34:10,235 INFO L273 TraceCheckUtils]: 39: Hoare triple {5372#false} assume !(~i~0 < ~SIZE~0); {5372#false} is VALID [2018-11-23 12:34:10,235 INFO L273 TraceCheckUtils]: 40: Hoare triple {5372#false} ~i~0 := 0; {5372#false} is VALID [2018-11-23 12:34:10,235 INFO L273 TraceCheckUtils]: 41: Hoare triple {5372#false} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {5372#false} is VALID [2018-11-23 12:34:10,236 INFO L273 TraceCheckUtils]: 42: Hoare triple {5372#false} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {5372#false} is VALID [2018-11-23 12:34:10,236 INFO L273 TraceCheckUtils]: 43: Hoare triple {5372#false} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {5372#false} is VALID [2018-11-23 12:34:10,236 INFO L273 TraceCheckUtils]: 44: Hoare triple {5372#false} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {5372#false} is VALID [2018-11-23 12:34:10,236 INFO L273 TraceCheckUtils]: 45: Hoare triple {5372#false} assume !(~i~0 < ~SIZE~0); {5372#false} is VALID [2018-11-23 12:34:10,236 INFO L273 TraceCheckUtils]: 46: Hoare triple {5372#false} ~i~0 := 0; {5372#false} is VALID [2018-11-23 12:34:10,236 INFO L273 TraceCheckUtils]: 47: Hoare triple {5372#false} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {5372#false} is VALID [2018-11-23 12:34:10,236 INFO L273 TraceCheckUtils]: 48: Hoare triple {5372#false} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {5372#false} is VALID [2018-11-23 12:34:10,237 INFO L273 TraceCheckUtils]: 49: Hoare triple {5372#false} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {5372#false} is VALID [2018-11-23 12:34:10,237 INFO L273 TraceCheckUtils]: 50: Hoare triple {5372#false} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {5372#false} is VALID [2018-11-23 12:34:10,237 INFO L273 TraceCheckUtils]: 51: Hoare triple {5372#false} assume !(~i~0 < ~SIZE~0); {5372#false} is VALID [2018-11-23 12:34:10,237 INFO L273 TraceCheckUtils]: 52: Hoare triple {5372#false} ~i~0 := 0; {5372#false} is VALID [2018-11-23 12:34:10,237 INFO L273 TraceCheckUtils]: 53: Hoare triple {5372#false} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {5372#false} is VALID [2018-11-23 12:34:10,237 INFO L273 TraceCheckUtils]: 54: Hoare triple {5372#false} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {5372#false} is VALID [2018-11-23 12:34:10,237 INFO L273 TraceCheckUtils]: 55: Hoare triple {5372#false} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {5372#false} is VALID [2018-11-23 12:34:10,237 INFO L273 TraceCheckUtils]: 56: Hoare triple {5372#false} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {5372#false} is VALID [2018-11-23 12:34:10,238 INFO L273 TraceCheckUtils]: 57: Hoare triple {5372#false} assume !(~i~0 < ~SIZE~0); {5372#false} is VALID [2018-11-23 12:34:10,238 INFO L256 TraceCheckUtils]: 58: Hoare triple {5372#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {5372#false} is VALID [2018-11-23 12:34:10,238 INFO L273 TraceCheckUtils]: 59: Hoare triple {5372#false} ~cond := #in~cond; {5372#false} is VALID [2018-11-23 12:34:10,238 INFO L273 TraceCheckUtils]: 60: Hoare triple {5372#false} assume 0 == ~cond; {5372#false} is VALID [2018-11-23 12:34:10,238 INFO L273 TraceCheckUtils]: 61: Hoare triple {5372#false} assume !false; {5372#false} is VALID [2018-11-23 12:34:10,240 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 1 proven. 12 refuted. 0 times theorem prover too weak. 29 trivial. 0 not checked. [2018-11-23 12:34:10,240 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:34:10,240 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:34:10,250 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 12:34:10,280 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 4 check-sat command(s) [2018-11-23 12:34:10,280 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:34:10,306 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:34:10,307 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:34:10,461 INFO L256 TraceCheckUtils]: 0: Hoare triple {5371#true} call ULTIMATE.init(); {5371#true} is VALID [2018-11-23 12:34:10,462 INFO L273 TraceCheckUtils]: 1: Hoare triple {5371#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {5371#true} is VALID [2018-11-23 12:34:10,462 INFO L273 TraceCheckUtils]: 2: Hoare triple {5371#true} assume true; {5371#true} is VALID [2018-11-23 12:34:10,462 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5371#true} {5371#true} #139#return; {5371#true} is VALID [2018-11-23 12:34:10,462 INFO L256 TraceCheckUtils]: 4: Hoare triple {5371#true} call #t~ret18 := main(); {5371#true} is VALID [2018-11-23 12:34:10,463 INFO L273 TraceCheckUtils]: 5: Hoare triple {5371#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {5371#true} is VALID [2018-11-23 12:34:10,463 INFO L273 TraceCheckUtils]: 6: Hoare triple {5371#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(2 * ~SIZE~0);~sum~0 := 0;~i~0 := 0; {5401#(<= 0 main_~i~0)} is VALID [2018-11-23 12:34:10,464 INFO L273 TraceCheckUtils]: 7: Hoare triple {5401#(<= 0 main_~i~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {5401#(<= 0 main_~i~0)} is VALID [2018-11-23 12:34:10,465 INFO L273 TraceCheckUtils]: 8: Hoare triple {5401#(<= 0 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5374#(<= 1 main_~i~0)} is VALID [2018-11-23 12:34:10,465 INFO L273 TraceCheckUtils]: 9: Hoare triple {5374#(<= 1 main_~i~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {5374#(<= 1 main_~i~0)} is VALID [2018-11-23 12:34:10,465 INFO L273 TraceCheckUtils]: 10: Hoare triple {5374#(<= 1 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5375#(<= 2 main_~i~0)} is VALID [2018-11-23 12:34:10,466 INFO L273 TraceCheckUtils]: 11: Hoare triple {5375#(<= 2 main_~i~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {5376#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:34:10,466 INFO L273 TraceCheckUtils]: 12: Hoare triple {5376#(<= 3 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5376#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:34:10,467 INFO L273 TraceCheckUtils]: 13: Hoare triple {5376#(<= 3 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {5376#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:34:10,467 INFO L273 TraceCheckUtils]: 14: Hoare triple {5376#(<= 3 ~SIZE~0)} ~i~0 := 0; {5376#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:34:10,488 INFO L273 TraceCheckUtils]: 15: Hoare triple {5376#(<= 3 ~SIZE~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {5376#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:34:10,490 INFO L273 TraceCheckUtils]: 16: Hoare triple {5376#(<= 3 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {5376#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:34:10,491 INFO L273 TraceCheckUtils]: 17: Hoare triple {5376#(<= 3 ~SIZE~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {5376#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:34:10,491 INFO L273 TraceCheckUtils]: 18: Hoare triple {5376#(<= 3 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {5376#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:34:10,491 INFO L273 TraceCheckUtils]: 19: Hoare triple {5376#(<= 3 ~SIZE~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {5376#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:34:10,492 INFO L273 TraceCheckUtils]: 20: Hoare triple {5376#(<= 3 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {5376#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:34:10,492 INFO L273 TraceCheckUtils]: 21: Hoare triple {5376#(<= 3 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {5376#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:34:10,492 INFO L273 TraceCheckUtils]: 22: Hoare triple {5376#(<= 3 ~SIZE~0)} ~i~0 := 0; {5450#(and (<= main_~i~0 0) (<= 3 ~SIZE~0))} is VALID [2018-11-23 12:34:10,493 INFO L273 TraceCheckUtils]: 23: Hoare triple {5450#(and (<= main_~i~0 0) (<= 3 ~SIZE~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {5450#(and (<= main_~i~0 0) (<= 3 ~SIZE~0))} is VALID [2018-11-23 12:34:10,493 INFO L273 TraceCheckUtils]: 24: Hoare triple {5450#(and (<= main_~i~0 0) (<= 3 ~SIZE~0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {5457#(and (<= main_~i~0 1) (<= 3 ~SIZE~0))} is VALID [2018-11-23 12:34:10,494 INFO L273 TraceCheckUtils]: 25: Hoare triple {5457#(and (<= main_~i~0 1) (<= 3 ~SIZE~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {5457#(and (<= main_~i~0 1) (<= 3 ~SIZE~0))} is VALID [2018-11-23 12:34:10,494 INFO L273 TraceCheckUtils]: 26: Hoare triple {5457#(and (<= main_~i~0 1) (<= 3 ~SIZE~0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {5464#(and (<= main_~i~0 2) (<= 3 ~SIZE~0))} is VALID [2018-11-23 12:34:10,495 INFO L273 TraceCheckUtils]: 27: Hoare triple {5464#(and (<= main_~i~0 2) (<= 3 ~SIZE~0))} assume !(~i~0 < ~SIZE~0); {5372#false} is VALID [2018-11-23 12:34:10,495 INFO L273 TraceCheckUtils]: 28: Hoare triple {5372#false} ~i~0 := 0; {5372#false} is VALID [2018-11-23 12:34:10,496 INFO L273 TraceCheckUtils]: 29: Hoare triple {5372#false} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {5372#false} is VALID [2018-11-23 12:34:10,496 INFO L273 TraceCheckUtils]: 30: Hoare triple {5372#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {5372#false} is VALID [2018-11-23 12:34:10,496 INFO L273 TraceCheckUtils]: 31: Hoare triple {5372#false} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {5372#false} is VALID [2018-11-23 12:34:10,496 INFO L273 TraceCheckUtils]: 32: Hoare triple {5372#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {5372#false} is VALID [2018-11-23 12:34:10,496 INFO L273 TraceCheckUtils]: 33: Hoare triple {5372#false} assume !(~i~0 < ~SIZE~0); {5372#false} is VALID [2018-11-23 12:34:10,497 INFO L273 TraceCheckUtils]: 34: Hoare triple {5372#false} ~i~0 := 0; {5372#false} is VALID [2018-11-23 12:34:10,497 INFO L273 TraceCheckUtils]: 35: Hoare triple {5372#false} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {5372#false} is VALID [2018-11-23 12:34:10,497 INFO L273 TraceCheckUtils]: 36: Hoare triple {5372#false} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {5372#false} is VALID [2018-11-23 12:34:10,497 INFO L273 TraceCheckUtils]: 37: Hoare triple {5372#false} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {5372#false} is VALID [2018-11-23 12:34:10,497 INFO L273 TraceCheckUtils]: 38: Hoare triple {5372#false} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {5372#false} is VALID [2018-11-23 12:34:10,498 INFO L273 TraceCheckUtils]: 39: Hoare triple {5372#false} assume !(~i~0 < ~SIZE~0); {5372#false} is VALID [2018-11-23 12:34:10,498 INFO L273 TraceCheckUtils]: 40: Hoare triple {5372#false} ~i~0 := 0; {5372#false} is VALID [2018-11-23 12:34:10,498 INFO L273 TraceCheckUtils]: 41: Hoare triple {5372#false} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {5372#false} is VALID [2018-11-23 12:34:10,498 INFO L273 TraceCheckUtils]: 42: Hoare triple {5372#false} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {5372#false} is VALID [2018-11-23 12:34:10,498 INFO L273 TraceCheckUtils]: 43: Hoare triple {5372#false} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {5372#false} is VALID [2018-11-23 12:34:10,499 INFO L273 TraceCheckUtils]: 44: Hoare triple {5372#false} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {5372#false} is VALID [2018-11-23 12:34:10,499 INFO L273 TraceCheckUtils]: 45: Hoare triple {5372#false} assume !(~i~0 < ~SIZE~0); {5372#false} is VALID [2018-11-23 12:34:10,499 INFO L273 TraceCheckUtils]: 46: Hoare triple {5372#false} ~i~0 := 0; {5372#false} is VALID [2018-11-23 12:34:10,499 INFO L273 TraceCheckUtils]: 47: Hoare triple {5372#false} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {5372#false} is VALID [2018-11-23 12:34:10,499 INFO L273 TraceCheckUtils]: 48: Hoare triple {5372#false} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {5372#false} is VALID [2018-11-23 12:34:10,500 INFO L273 TraceCheckUtils]: 49: Hoare triple {5372#false} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {5372#false} is VALID [2018-11-23 12:34:10,500 INFO L273 TraceCheckUtils]: 50: Hoare triple {5372#false} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {5372#false} is VALID [2018-11-23 12:34:10,500 INFO L273 TraceCheckUtils]: 51: Hoare triple {5372#false} assume !(~i~0 < ~SIZE~0); {5372#false} is VALID [2018-11-23 12:34:10,500 INFO L273 TraceCheckUtils]: 52: Hoare triple {5372#false} ~i~0 := 0; {5372#false} is VALID [2018-11-23 12:34:10,500 INFO L273 TraceCheckUtils]: 53: Hoare triple {5372#false} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {5372#false} is VALID [2018-11-23 12:34:10,500 INFO L273 TraceCheckUtils]: 54: Hoare triple {5372#false} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {5372#false} is VALID [2018-11-23 12:34:10,501 INFO L273 TraceCheckUtils]: 55: Hoare triple {5372#false} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {5372#false} is VALID [2018-11-23 12:34:10,501 INFO L273 TraceCheckUtils]: 56: Hoare triple {5372#false} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {5372#false} is VALID [2018-11-23 12:34:10,501 INFO L273 TraceCheckUtils]: 57: Hoare triple {5372#false} assume !(~i~0 < ~SIZE~0); {5372#false} is VALID [2018-11-23 12:34:10,501 INFO L256 TraceCheckUtils]: 58: Hoare triple {5372#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {5372#false} is VALID [2018-11-23 12:34:10,501 INFO L273 TraceCheckUtils]: 59: Hoare triple {5372#false} ~cond := #in~cond; {5372#false} is VALID [2018-11-23 12:34:10,501 INFO L273 TraceCheckUtils]: 60: Hoare triple {5372#false} assume 0 == ~cond; {5372#false} is VALID [2018-11-23 12:34:10,501 INFO L273 TraceCheckUtils]: 61: Hoare triple {5372#false} assume !false; {5372#false} is VALID [2018-11-23 12:34:10,503 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 4 proven. 9 refuted. 0 times theorem prover too weak. 29 trivial. 0 not checked. [2018-11-23 12:34:10,523 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:34:10,523 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 13 [2018-11-23 12:34:10,523 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 62 [2018-11-23 12:34:10,524 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:34:10,524 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states. [2018-11-23 12:34:10,584 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:34:10,584 INFO L459 AbstractCegarLoop]: Interpolant automaton has 13 states [2018-11-23 12:34:10,584 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2018-11-23 12:34:10,584 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=47, Invalid=109, Unknown=0, NotChecked=0, Total=156 [2018-11-23 12:34:10,585 INFO L87 Difference]: Start difference. First operand 156 states and 175 transitions. Second operand 13 states. [2018-11-23 12:34:12,368 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:34:12,369 INFO L93 Difference]: Finished difference Result 173 states and 192 transitions. [2018-11-23 12:34:12,369 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-23 12:34:12,369 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 62 [2018-11-23 12:34:12,369 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:34:12,369 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-23 12:34:12,371 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 119 transitions. [2018-11-23 12:34:12,371 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-23 12:34:12,373 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 119 transitions. [2018-11-23 12:34:12,373 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 119 transitions. [2018-11-23 12:34:12,566 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:34:12,571 INFO L225 Difference]: With dead ends: 173 [2018-11-23 12:34:12,571 INFO L226 Difference]: Without dead ends: 138 [2018-11-23 12:34:12,572 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 78 GetRequests, 61 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 58 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=95, Invalid=247, Unknown=0, NotChecked=0, Total=342 [2018-11-23 12:34:12,573 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 138 states. [2018-11-23 12:34:13,211 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 138 to 75. [2018-11-23 12:34:13,211 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:34:13,211 INFO L82 GeneralOperation]: Start isEquivalent. First operand 138 states. Second operand 75 states. [2018-11-23 12:34:13,211 INFO L74 IsIncluded]: Start isIncluded. First operand 138 states. Second operand 75 states. [2018-11-23 12:34:13,211 INFO L87 Difference]: Start difference. First operand 138 states. Second operand 75 states. [2018-11-23 12:34:13,215 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:34:13,215 INFO L93 Difference]: Finished difference Result 138 states and 152 transitions. [2018-11-23 12:34:13,215 INFO L276 IsEmpty]: Start isEmpty. Operand 138 states and 152 transitions. [2018-11-23 12:34:13,216 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:34:13,216 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:34:13,216 INFO L74 IsIncluded]: Start isIncluded. First operand 75 states. Second operand 138 states. [2018-11-23 12:34:13,216 INFO L87 Difference]: Start difference. First operand 75 states. Second operand 138 states. [2018-11-23 12:34:13,220 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:34:13,221 INFO L93 Difference]: Finished difference Result 138 states and 152 transitions. [2018-11-23 12:34:13,221 INFO L276 IsEmpty]: Start isEmpty. Operand 138 states and 152 transitions. [2018-11-23 12:34:13,221 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:34:13,221 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:34:13,222 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:34:13,222 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:34:13,222 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 75 states. [2018-11-23 12:34:13,224 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 75 states to 75 states and 82 transitions. [2018-11-23 12:34:13,224 INFO L78 Accepts]: Start accepts. Automaton has 75 states and 82 transitions. Word has length 62 [2018-11-23 12:34:13,224 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:34:13,225 INFO L480 AbstractCegarLoop]: Abstraction has 75 states and 82 transitions. [2018-11-23 12:34:13,225 INFO L481 AbstractCegarLoop]: Interpolant automaton has 13 states. [2018-11-23 12:34:13,225 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 82 transitions. [2018-11-23 12:34:13,226 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 75 [2018-11-23 12:34:13,226 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:34:13,226 INFO L402 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 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, 1, 1, 1, 1] [2018-11-23 12:34:13,226 INFO L423 AbstractCegarLoop]: === Iteration 10 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:34:13,226 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:34:13,226 INFO L82 PathProgramCache]: Analyzing trace with hash 238533325, now seen corresponding path program 6 times [2018-11-23 12:34:13,227 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:34:13,227 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:34:13,227 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:34:13,228 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:34:13,228 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:34:13,372 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:34:14,374 WARN L180 SmtUtils]: Spent 109.00 ms on a formula simplification. DAG size of input: 51 DAG size of output: 38 [2018-11-23 12:34:16,753 WARN L180 SmtUtils]: Spent 115.00 ms on a formula simplification. DAG size of input: 59 DAG size of output: 45 [2018-11-23 12:34:16,959 WARN L180 SmtUtils]: Spent 115.00 ms on a formula simplification. DAG size of input: 59 DAG size of output: 46 [2018-11-23 12:34:21,056 WARN L180 SmtUtils]: Spent 302.00 ms on a formula simplification. DAG size of input: 62 DAG size of output: 46 [2018-11-23 12:34:21,335 WARN L180 SmtUtils]: Spent 101.00 ms on a formula simplification. DAG size of input: 65 DAG size of output: 49 [2018-11-23 12:34:22,770 WARN L180 SmtUtils]: Spent 116.00 ms on a formula simplification. DAG size of input: 64 DAG size of output: 35 [2018-11-23 12:34:25,249 INFO L256 TraceCheckUtils]: 0: Hoare triple {6228#true} call ULTIMATE.init(); {6228#true} is VALID [2018-11-23 12:34:25,250 INFO L273 TraceCheckUtils]: 1: Hoare triple {6228#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {6228#true} is VALID [2018-11-23 12:34:25,250 INFO L273 TraceCheckUtils]: 2: Hoare triple {6228#true} assume true; {6228#true} is VALID [2018-11-23 12:34:25,250 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6228#true} {6228#true} #139#return; {6228#true} is VALID [2018-11-23 12:34:25,250 INFO L256 TraceCheckUtils]: 4: Hoare triple {6228#true} call #t~ret18 := main(); {6228#true} is VALID [2018-11-23 12:34:25,250 INFO L273 TraceCheckUtils]: 5: Hoare triple {6228#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {6228#true} is VALID [2018-11-23 12:34:25,251 INFO L273 TraceCheckUtils]: 6: Hoare triple {6228#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(2 * ~SIZE~0);~sum~0 := 0;~i~0 := 0; {6230#(and (= main_~sum~0 0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,252 INFO L273 TraceCheckUtils]: 7: Hoare triple {6230#(and (= main_~sum~0 0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {6231#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,253 INFO L273 TraceCheckUtils]: 8: Hoare triple {6231#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6232#(and (or (and (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) 0)) (<= 1 main_~i~0) (<= (select (select |#memory_int| |main_~#a~0.base|) 0) main_~sum~0)) (<= 3 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,254 INFO L273 TraceCheckUtils]: 9: Hoare triple {6232#(and (or (and (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) 0)) (<= 1 main_~i~0) (<= (select (select |#memory_int| |main_~#a~0.base|) 0) main_~sum~0)) (<= 3 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {6233#(and (or (<= 3 (+ (* 2 main_~i~0) |main_~#a~0.offset|)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0) (<= 1 main_~i~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,255 INFO L273 TraceCheckUtils]: 10: Hoare triple {6233#(and (or (<= 3 (+ (* 2 main_~i~0) |main_~#a~0.offset|)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0) (<= 1 main_~i~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))))) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6234#(or (and (or (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ main_~i~0 (- 1))) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ main_~i~0 (- 1))) |main_~#a~0.offset|))) main_~sum~0)) (<= 5 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (or (<= 3 main_~i~0) (= (* 2 main_~i~0) 4)) (= |main_~#a~0.offset| 0)) (< (+ main_~i~0 1) ~SIZE~0))} is VALID [2018-11-23 12:34:25,256 INFO L273 TraceCheckUtils]: 11: Hoare triple {6234#(or (and (or (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ main_~i~0 (- 1))) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ main_~i~0 (- 1))) |main_~#a~0.offset|))) main_~sum~0)) (<= 5 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (or (<= 3 main_~i~0) (= (* 2 main_~i~0) 4)) (= |main_~#a~0.offset| 0)) (< (+ main_~i~0 1) ~SIZE~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {6235#(and (or (<= (+ main_~i~0 2) ~SIZE~0) (and (or (<= 7 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))) (<= (+ main_~i~0 1) ~SIZE~0))} is VALID [2018-11-23 12:34:25,258 INFO L273 TraceCheckUtils]: 12: Hoare triple {6235#(and (or (<= (+ main_~i~0 2) ~SIZE~0) (and (or (<= 7 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))) (<= (+ main_~i~0 1) ~SIZE~0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6236#(or (<= (+ main_~i~0 1) ~SIZE~0) (and (or (<= 7 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0)))} is VALID [2018-11-23 12:34:25,260 INFO L273 TraceCheckUtils]: 13: Hoare triple {6236#(or (<= (+ main_~i~0 1) ~SIZE~0) (and (or (<= 7 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0)))} assume !(~i~0 < ~SIZE~0); {6237#(and (or (<= 7 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,261 INFO L273 TraceCheckUtils]: 14: Hoare triple {6237#(and (or (<= 7 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {6237#(and (or (<= 7 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,262 INFO L273 TraceCheckUtils]: 15: Hoare triple {6237#(and (or (<= 7 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {6238#(and (or (<= 7 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,264 INFO L273 TraceCheckUtils]: 16: Hoare triple {6238#(and (or (<= 7 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {6239#(and (or (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) main_~sum~0)) (<= 3 (+ (* 2 main_~i~0) |main_~#a~0.offset|)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,266 INFO L273 TraceCheckUtils]: 17: Hoare triple {6239#(and (or (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) main_~sum~0)) (<= 3 (+ (* 2 main_~i~0) |main_~#a~0.offset|)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {6240#(and (or (<= 3 (+ (* 2 main_~i~0) |main_~#a~0.offset|)) (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,268 INFO L273 TraceCheckUtils]: 18: Hoare triple {6240#(and (or (<= 3 (+ (* 2 main_~i~0) |main_~#a~0.offset|)) (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {6241#(and (or (<= (+ main_~i~0 2) ~SIZE~0) (<= 5 (+ (* 2 main_~i~0) |main_~#a~0.offset|)) (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,270 INFO L273 TraceCheckUtils]: 19: Hoare triple {6241#(and (or (<= (+ main_~i~0 2) ~SIZE~0) (<= 5 (+ (* 2 main_~i~0) |main_~#a~0.offset|)) (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {6242#(and (or (<= 7 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (or (<= (+ main_~i~0 2) ~SIZE~0) (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))))) (or (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ main_~i~0 2) ~SIZE~0)))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,272 INFO L273 TraceCheckUtils]: 20: Hoare triple {6242#(and (or (<= 7 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (or (<= (+ main_~i~0 2) ~SIZE~0) (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))))) (or (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ main_~i~0 2) ~SIZE~0)))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {6243#(and (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0) (or (<= 7 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0)) (<= (+ main_~i~0 1) ~SIZE~0)))} is VALID [2018-11-23 12:34:25,273 INFO L273 TraceCheckUtils]: 21: Hoare triple {6243#(and (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0) (or (<= 7 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0)) (<= (+ main_~i~0 1) ~SIZE~0)))} assume !(~i~0 < ~SIZE~0); {6244#(and (or (<= 7 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,274 INFO L273 TraceCheckUtils]: 22: Hoare triple {6244#(and (or (<= 7 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {6245#(and (or (<= 7 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0))) (<= 3 ~SIZE~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,276 INFO L273 TraceCheckUtils]: 23: Hoare triple {6245#(and (or (<= 7 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0))) (<= 3 ~SIZE~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {6246#(and (or (<= 7 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0))) (<= 3 ~SIZE~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,277 INFO L273 TraceCheckUtils]: 24: Hoare triple {6246#(and (or (<= 7 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0))) (<= 3 ~SIZE~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {6247#(and (<= main_~i~0 1) (or (and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0)) (<= (+ (* 2 main_~i~0) 5) (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,279 INFO L273 TraceCheckUtils]: 25: Hoare triple {6247#(and (<= main_~i~0 1) (or (and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0)) (<= (+ (* 2 main_~i~0) 5) (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {6248#(and (<= main_~i~0 1) (or (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))))) (<= (+ (* 2 main_~i~0) 5) (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,281 INFO L273 TraceCheckUtils]: 26: Hoare triple {6248#(and (<= main_~i~0 1) (or (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))))) (<= (+ (* 2 main_~i~0) 5) (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {6249#(and (<= main_~i~0 2) (or (and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0)) (<= (+ (* 2 main_~i~0) 3) (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,282 INFO L273 TraceCheckUtils]: 27: Hoare triple {6249#(and (<= main_~i~0 2) (or (and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0)) (<= (+ (* 2 main_~i~0) 3) (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {6250#(and (<= main_~i~0 2) (or (and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0)) (<= (+ (* 2 main_~i~0) 3) (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,284 INFO L273 TraceCheckUtils]: 28: Hoare triple {6250#(and (<= main_~i~0 2) (or (and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0)) (<= (+ (* 2 main_~i~0) 3) (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {6251#(and (or (<= (+ (* 2 main_~i~0) 1) (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))))) (<= main_~i~0 3) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,285 INFO L273 TraceCheckUtils]: 29: Hoare triple {6251#(and (or (<= (+ (* 2 main_~i~0) 1) (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))))) (<= main_~i~0 3) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {6252#(and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))))} is VALID [2018-11-23 12:34:25,287 INFO L273 TraceCheckUtils]: 30: Hoare triple {6252#(and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))))} ~i~0 := 0; {6253#(and (or (<= ~SIZE~0 3) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0)) (or (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= 3 ~SIZE~0)) (or (and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) main_~sum~0) (<= ~SIZE~0 3) (<= 3 ~SIZE~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,289 INFO L273 TraceCheckUtils]: 31: Hoare triple {6253#(and (or (<= ~SIZE~0 3) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0)) (or (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= 3 ~SIZE~0)) (or (and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) main_~sum~0) (<= ~SIZE~0 3) (<= 3 ~SIZE~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {6254#(and (or (<= ~SIZE~0 3) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0)) (or (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= 3 ~SIZE~0)) (or (and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) main_~sum~0) (<= ~SIZE~0 3) (<= 3 ~SIZE~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,291 INFO L273 TraceCheckUtils]: 32: Hoare triple {6254#(and (or (<= ~SIZE~0 3) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0)) (or (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= 3 ~SIZE~0)) (or (and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) main_~sum~0) (<= ~SIZE~0 3) (<= 3 ~SIZE~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {6255#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 3)) (and (<= ~SIZE~0 3) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= 3 ~SIZE~0) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,292 INFO L273 TraceCheckUtils]: 33: Hoare triple {6255#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 3)) (and (<= ~SIZE~0 3) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= 3 ~SIZE~0) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {6256#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 3)) (and (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= ~SIZE~0 3) (<= 3 ~SIZE~0)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,294 INFO L273 TraceCheckUtils]: 34: Hoare triple {6256#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 3)) (and (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= ~SIZE~0 3) (<= 3 ~SIZE~0)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {6257#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (and (<= ~SIZE~0 3) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= 3 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,296 INFO L273 TraceCheckUtils]: 35: Hoare triple {6257#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (and (<= ~SIZE~0 3) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= 3 ~SIZE~0))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {6258#(and (= |main_~#a~0.offset| 0) (or (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= ~SIZE~0 3) (<= 3 ~SIZE~0)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0))))} is VALID [2018-11-23 12:34:25,299 INFO L273 TraceCheckUtils]: 36: Hoare triple {6258#(and (= |main_~#a~0.offset| 0) (or (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= ~SIZE~0 3) (<= 3 ~SIZE~0)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0))))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {6259#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 1) (* 2 ~SIZE~0)) (and (<= ~SIZE~0 3) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= 3 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,300 INFO L273 TraceCheckUtils]: 37: Hoare triple {6259#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 1) (* 2 ~SIZE~0)) (and (<= ~SIZE~0 3) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= 3 ~SIZE~0))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {6260#(and (<= ~SIZE~0 3) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,301 INFO L273 TraceCheckUtils]: 38: Hoare triple {6260#(and (<= ~SIZE~0 3) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {6261#(and (<= ~SIZE~0 3) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0) (= main_~i~0 0))} is VALID [2018-11-23 12:34:25,303 INFO L273 TraceCheckUtils]: 39: Hoare triple {6261#(and (<= ~SIZE~0 3) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0) (= main_~i~0 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {6262#(and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,305 INFO L273 TraceCheckUtils]: 40: Hoare triple {6262#(and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {6263#(and (or (and (= (+ (* 2 main_~i~0) 4) (* 2 ~SIZE~0)) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= ~SIZE~0 3)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,306 INFO L273 TraceCheckUtils]: 41: Hoare triple {6263#(and (or (and (= (+ (* 2 main_~i~0) 4) (* 2 ~SIZE~0)) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= ~SIZE~0 3)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {6264#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (= (+ (* 2 main_~i~0) 4) (* 2 ~SIZE~0)) (<= ~SIZE~0 3)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,308 INFO L273 TraceCheckUtils]: 42: Hoare triple {6264#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (= (+ (* 2 main_~i~0) 4) (* 2 ~SIZE~0)) (<= ~SIZE~0 3)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {6265#(and (or (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= ~SIZE~0 3) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))))) (<= (+ main_~i~0 2) ~SIZE~0)) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,310 INFO L273 TraceCheckUtils]: 43: Hoare triple {6265#(and (or (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= ~SIZE~0 3) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))))) (<= (+ main_~i~0 2) ~SIZE~0)) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {6266#(and (or (<= (+ main_~i~0 2) ~SIZE~0) (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= ~SIZE~0 3))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,312 INFO L273 TraceCheckUtils]: 44: Hoare triple {6266#(and (or (<= (+ main_~i~0 2) ~SIZE~0) (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= ~SIZE~0 3))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {6267#(and (or (<= (+ main_~i~0 1) ~SIZE~0) (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= ~SIZE~0 3) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,313 INFO L273 TraceCheckUtils]: 45: Hoare triple {6267#(and (or (<= (+ main_~i~0 1) ~SIZE~0) (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= ~SIZE~0 3) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {6252#(and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))))} is VALID [2018-11-23 12:34:25,315 INFO L273 TraceCheckUtils]: 46: Hoare triple {6252#(and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))))} ~i~0 := 0; {6268#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0) (= main_~i~0 0))} is VALID [2018-11-23 12:34:25,316 INFO L273 TraceCheckUtils]: 47: Hoare triple {6268#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0) (= main_~i~0 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {6269#(and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= ~SIZE~0 3) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= 3 ~SIZE~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,318 INFO L273 TraceCheckUtils]: 48: Hoare triple {6269#(and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= ~SIZE~0 3) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= 3 ~SIZE~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {6270#(and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= ~SIZE~0 3) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (or (<= (+ main_~i~0 3) ~SIZE~0) (= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) 4))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,320 INFO L273 TraceCheckUtils]: 49: Hoare triple {6270#(and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= ~SIZE~0 3) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (or (<= (+ main_~i~0 3) ~SIZE~0) (= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) 4))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {6271#(and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= ~SIZE~0 3)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (<= 3 ~SIZE~0) (or (= (+ (* 2 main_~i~0) 4) (* 2 ~SIZE~0)) (<= (+ main_~i~0 3) ~SIZE~0)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,322 INFO L273 TraceCheckUtils]: 50: Hoare triple {6271#(and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= ~SIZE~0 3)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (<= 3 ~SIZE~0) (or (= (+ (* 2 main_~i~0) 4) (* 2 ~SIZE~0)) (<= (+ main_~i~0 3) ~SIZE~0)) (= |main_~#a~0.offset| 0))} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {6272#(and (or (<= (+ main_~i~0 2) ~SIZE~0) (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= ~SIZE~0 3))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,324 INFO L273 TraceCheckUtils]: 51: Hoare triple {6272#(and (or (<= (+ main_~i~0 2) ~SIZE~0) (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= ~SIZE~0 3))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {6273#(and (or (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ main_~i~0 2) ~SIZE~0)) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0) (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (and (<= ~SIZE~0 3) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))))))} is VALID [2018-11-23 12:34:25,326 INFO L273 TraceCheckUtils]: 52: Hoare triple {6273#(and (or (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ main_~i~0 2) ~SIZE~0)) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0) (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (and (<= ~SIZE~0 3) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))))))} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {6274#(and (or (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= ~SIZE~0 3)) (<= (+ main_~i~0 1) ~SIZE~0)) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,327 INFO L273 TraceCheckUtils]: 53: Hoare triple {6274#(and (or (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= ~SIZE~0 3)) (<= (+ main_~i~0 1) ~SIZE~0)) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {6275#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,329 INFO L273 TraceCheckUtils]: 54: Hoare triple {6275#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {6276#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,330 INFO L273 TraceCheckUtils]: 55: Hoare triple {6276#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {6277#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0) (= main_~i~0 0))} is VALID [2018-11-23 12:34:25,332 INFO L273 TraceCheckUtils]: 56: Hoare triple {6277#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0) (= main_~i~0 0))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {6278#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= ~SIZE~0 3) (<= 3 ~SIZE~0)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (or (= (+ (* 2 main_~i~0) 4) (* 2 ~SIZE~0)) (<= (+ main_~i~0 3) ~SIZE~0)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,334 INFO L273 TraceCheckUtils]: 57: Hoare triple {6278#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= ~SIZE~0 3) (<= 3 ~SIZE~0)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (or (= (+ (* 2 main_~i~0) 4) (* 2 ~SIZE~0)) (<= (+ main_~i~0 3) ~SIZE~0)) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {6279#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (<= ~SIZE~0 3) (<= 3 ~SIZE~0)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (or (= (+ (* 2 main_~i~0) 4) (* 2 ~SIZE~0)) (<= (+ main_~i~0 3) ~SIZE~0)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,336 INFO L273 TraceCheckUtils]: 58: Hoare triple {6279#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (<= ~SIZE~0 3) (<= 3 ~SIZE~0)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (or (= (+ (* 2 main_~i~0) 4) (* 2 ~SIZE~0)) (<= (+ main_~i~0 3) ~SIZE~0)) (= |main_~#a~0.offset| 0))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {6280#(and (or (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) (<= ~SIZE~0 3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) main_~sum~0) (<= 3 ~SIZE~0)) (<= (+ main_~i~0 2) ~SIZE~0)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,338 INFO L273 TraceCheckUtils]: 59: Hoare triple {6280#(and (or (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) (<= ~SIZE~0 3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) main_~sum~0) (<= 3 ~SIZE~0)) (<= (+ main_~i~0 2) ~SIZE~0)) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {6281#(and (or (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) (<= ~SIZE~0 3) (<= 3 ~SIZE~0)) (<= (+ main_~i~0 2) ~SIZE~0)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,340 INFO L273 TraceCheckUtils]: 60: Hoare triple {6281#(and (or (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) (<= ~SIZE~0 3) (<= 3 ~SIZE~0)) (<= (+ main_~i~0 2) ~SIZE~0)) (= |main_~#a~0.offset| 0))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {6282#(and (= |main_~#a~0.offset| 0) (or (<= (+ main_~i~0 1) ~SIZE~0) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) (<= ~SIZE~0 3) (<= 3 ~SIZE~0))))} is VALID [2018-11-23 12:34:25,341 INFO L273 TraceCheckUtils]: 61: Hoare triple {6282#(and (= |main_~#a~0.offset| 0) (or (<= (+ main_~i~0 1) ~SIZE~0) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) (<= ~SIZE~0 3) (<= 3 ~SIZE~0))))} assume !(~i~0 < ~SIZE~0); {6283#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,343 INFO L273 TraceCheckUtils]: 62: Hoare triple {6283#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {6284#(and (or (and (or (<= ~SIZE~0 3) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0)) (or (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= 3 ~SIZE~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,345 INFO L273 TraceCheckUtils]: 63: Hoare triple {6284#(and (or (and (or (<= ~SIZE~0 3) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0)) (or (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= 3 ~SIZE~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {6285#(and (or (and (or (<= ~SIZE~0 3) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0)) (or (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= 3 ~SIZE~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:25,347 INFO L273 TraceCheckUtils]: 64: Hoare triple {6285#(and (or (and (or (<= ~SIZE~0 3) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0)) (or (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= 3 ~SIZE~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {6286#(or (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0)) (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ main_~i~0 3) ~SIZE~0))} is VALID [2018-11-23 12:34:25,349 INFO L273 TraceCheckUtils]: 65: Hoare triple {6286#(or (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0)) (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ main_~i~0 3) ~SIZE~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {6287#(or (and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) main_~sum~0) (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (= |main_~#a~0.offset| 0)) (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ main_~i~0 3) ~SIZE~0))} is VALID [2018-11-23 12:34:25,350 INFO L273 TraceCheckUtils]: 66: Hoare triple {6287#(or (and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) main_~sum~0) (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (= |main_~#a~0.offset| 0)) (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ main_~i~0 3) ~SIZE~0))} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {6288#(or (and (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (= |main_~#a~0.offset| 0)) (<= ~SIZE~0 main_~i~0) (<= (+ main_~i~0 2) ~SIZE~0))} is VALID [2018-11-23 12:34:25,367 INFO L273 TraceCheckUtils]: 67: Hoare triple {6288#(or (and (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (= |main_~#a~0.offset| 0)) (<= ~SIZE~0 main_~i~0) (<= (+ main_~i~0 2) ~SIZE~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {6289#(or (<= (+ main_~i~0 2) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} is VALID [2018-11-23 12:34:25,381 INFO L273 TraceCheckUtils]: 68: Hoare triple {6289#(or (<= (+ main_~i~0 2) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {6290#(or (<= (+ main_~i~0 1) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} is VALID [2018-11-23 12:34:25,397 INFO L273 TraceCheckUtils]: 69: Hoare triple {6290#(or (<= (+ main_~i~0 1) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} assume !(~i~0 < ~SIZE~0); {6291#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:34:25,413 INFO L256 TraceCheckUtils]: 70: Hoare triple {6291#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {6292#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:34:25,422 INFO L273 TraceCheckUtils]: 71: Hoare triple {6292#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {6293#(= __VERIFIER_assert_~cond 1)} is VALID [2018-11-23 12:34:25,425 INFO L273 TraceCheckUtils]: 72: Hoare triple {6293#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {6229#false} is VALID [2018-11-23 12:34:25,425 INFO L273 TraceCheckUtils]: 73: Hoare triple {6229#false} assume !false; {6229#false} is VALID [2018-11-23 12:34:25,472 INFO L134 CoverageAnalysis]: Checked inductivity of 72 backedges. 0 proven. 72 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:34:25,472 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:34:25,473 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:34:25,483 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 12:34:25,522 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 4 check-sat command(s) [2018-11-23 12:34:25,522 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:34:25,548 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:34:25,550 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:34:30,266 INFO L256 TraceCheckUtils]: 0: Hoare triple {6228#true} call ULTIMATE.init(); {6228#true} is VALID [2018-11-23 12:34:30,267 INFO L273 TraceCheckUtils]: 1: Hoare triple {6228#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {6228#true} is VALID [2018-11-23 12:34:30,267 INFO L273 TraceCheckUtils]: 2: Hoare triple {6228#true} assume true; {6228#true} is VALID [2018-11-23 12:34:30,267 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6228#true} {6228#true} #139#return; {6228#true} is VALID [2018-11-23 12:34:30,267 INFO L256 TraceCheckUtils]: 4: Hoare triple {6228#true} call #t~ret18 := main(); {6228#true} is VALID [2018-11-23 12:34:30,267 INFO L273 TraceCheckUtils]: 5: Hoare triple {6228#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {6228#true} is VALID [2018-11-23 12:34:30,287 INFO L273 TraceCheckUtils]: 6: Hoare triple {6228#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(2 * ~SIZE~0);~sum~0 := 0;~i~0 := 0; {6230#(and (= main_~sum~0 0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,296 INFO L273 TraceCheckUtils]: 7: Hoare triple {6230#(and (= main_~sum~0 0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {6231#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,302 INFO L273 TraceCheckUtils]: 8: Hoare triple {6231#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6321#(and (= main_~i~0 1) (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (<= (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,303 INFO L273 TraceCheckUtils]: 9: Hoare triple {6321#(and (= main_~i~0 1) (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (<= (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {6325#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,304 INFO L273 TraceCheckUtils]: 10: Hoare triple {6325#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6329#(and (= main_~i~0 2) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,305 INFO L273 TraceCheckUtils]: 11: Hoare triple {6329#(and (= main_~i~0 2) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {6333#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,306 INFO L273 TraceCheckUtils]: 12: Hoare triple {6333#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6333#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,306 INFO L273 TraceCheckUtils]: 13: Hoare triple {6333#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {6333#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,307 INFO L273 TraceCheckUtils]: 14: Hoare triple {6333#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {6343#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,307 INFO L273 TraceCheckUtils]: 15: Hoare triple {6343#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {6347#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,309 INFO L273 TraceCheckUtils]: 16: Hoare triple {6347#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {6351#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,310 INFO L273 TraceCheckUtils]: 17: Hoare triple {6351#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {6355#(and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= main_~i~0 1) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,311 INFO L273 TraceCheckUtils]: 18: Hoare triple {6355#(and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= main_~i~0 1) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {6359#(and (= main_~i~0 2) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,313 INFO L273 TraceCheckUtils]: 19: Hoare triple {6359#(and (= main_~i~0 2) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {6363#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,314 INFO L273 TraceCheckUtils]: 20: Hoare triple {6363#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {6363#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,315 INFO L273 TraceCheckUtils]: 21: Hoare triple {6363#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {6363#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,316 INFO L273 TraceCheckUtils]: 22: Hoare triple {6363#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {6373#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,317 INFO L273 TraceCheckUtils]: 23: Hoare triple {6373#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {6377#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,319 INFO L273 TraceCheckUtils]: 24: Hoare triple {6377#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {6381#(and (= main_~i~0 1) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0))} is VALID [2018-11-23 12:34:30,320 INFO L273 TraceCheckUtils]: 25: Hoare triple {6381#(and (= main_~i~0 1) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {6385#(and (= main_~i~0 1) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,321 INFO L273 TraceCheckUtils]: 26: Hoare triple {6385#(and (= main_~i~0 1) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {6389#(and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= main_~i~0 2) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,323 INFO L273 TraceCheckUtils]: 27: Hoare triple {6389#(and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= main_~i~0 2) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {6393#(and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,324 INFO L273 TraceCheckUtils]: 28: Hoare triple {6393#(and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {6393#(and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,325 INFO L273 TraceCheckUtils]: 29: Hoare triple {6393#(and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {6393#(and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,326 INFO L273 TraceCheckUtils]: 30: Hoare triple {6393#(and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {6403#(and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,327 INFO L273 TraceCheckUtils]: 31: Hoare triple {6403#(and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {6407#(and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,328 INFO L273 TraceCheckUtils]: 32: Hoare triple {6407#(and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {6411#(and (= main_~i~0 1) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,330 INFO L273 TraceCheckUtils]: 33: Hoare triple {6411#(and (= main_~i~0 1) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {6415#(and (= main_~i~0 1) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,331 INFO L273 TraceCheckUtils]: 34: Hoare triple {6415#(and (= main_~i~0 1) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {6419#(and (= main_~i~0 2) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,333 INFO L273 TraceCheckUtils]: 35: Hoare triple {6419#(and (= main_~i~0 2) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {6423#(and (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,334 INFO L273 TraceCheckUtils]: 36: Hoare triple {6423#(and (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {6423#(and (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,335 INFO L273 TraceCheckUtils]: 37: Hoare triple {6423#(and (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {6423#(and (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,336 INFO L273 TraceCheckUtils]: 38: Hoare triple {6423#(and (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {6433#(and (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= main_~i~0 0) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,337 INFO L273 TraceCheckUtils]: 39: Hoare triple {6433#(and (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= main_~i~0 0) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {6437#(and (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,338 INFO L273 TraceCheckUtils]: 40: Hoare triple {6437#(and (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {6441#(and (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,352 INFO L273 TraceCheckUtils]: 41: Hoare triple {6441#(and (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {6445#(and (<= (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= main_~i~0 1) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,353 INFO L273 TraceCheckUtils]: 42: Hoare triple {6445#(and (<= (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= main_~i~0 1) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {6449#(and (= main_~i~0 2) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,354 INFO L273 TraceCheckUtils]: 43: Hoare triple {6449#(and (= main_~i~0 2) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {6393#(and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,355 INFO L273 TraceCheckUtils]: 44: Hoare triple {6393#(and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {6393#(and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,355 INFO L273 TraceCheckUtils]: 45: Hoare triple {6393#(and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {6393#(and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,356 INFO L273 TraceCheckUtils]: 46: Hoare triple {6393#(and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {6403#(and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,357 INFO L273 TraceCheckUtils]: 47: Hoare triple {6403#(and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {6465#(and (<= (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,358 INFO L273 TraceCheckUtils]: 48: Hoare triple {6465#(and (<= (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {6469#(and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,359 INFO L273 TraceCheckUtils]: 49: Hoare triple {6469#(and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {6473#(and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= main_~i~0 1) (<= (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,361 INFO L273 TraceCheckUtils]: 50: Hoare triple {6473#(and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= main_~i~0 1) (<= (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {6477#(and (= main_~i~0 2) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,362 INFO L273 TraceCheckUtils]: 51: Hoare triple {6477#(and (= main_~i~0 2) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {6363#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,363 INFO L273 TraceCheckUtils]: 52: Hoare triple {6363#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {6363#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,364 INFO L273 TraceCheckUtils]: 53: Hoare triple {6363#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {6363#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,365 INFO L273 TraceCheckUtils]: 54: Hoare triple {6363#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {6373#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,367 INFO L273 TraceCheckUtils]: 55: Hoare triple {6373#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {6493#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,368 INFO L273 TraceCheckUtils]: 56: Hoare triple {6493#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {6497#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (= main_~i~0 1) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,369 INFO L273 TraceCheckUtils]: 57: Hoare triple {6497#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (= main_~i~0 1) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {6501#(and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,371 INFO L273 TraceCheckUtils]: 58: Hoare triple {6501#(and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {6505#(and (= main_~i~0 2) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,372 INFO L273 TraceCheckUtils]: 59: Hoare triple {6505#(and (= main_~i~0 2) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {6333#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,373 INFO L273 TraceCheckUtils]: 60: Hoare triple {6333#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {6333#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,374 INFO L273 TraceCheckUtils]: 61: Hoare triple {6333#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {6333#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,375 INFO L273 TraceCheckUtils]: 62: Hoare triple {6333#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {6343#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,376 INFO L273 TraceCheckUtils]: 63: Hoare triple {6343#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {6521#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,377 INFO L273 TraceCheckUtils]: 64: Hoare triple {6521#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {6525#(and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)))) (= main_~i~0 1) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,379 INFO L273 TraceCheckUtils]: 65: Hoare triple {6525#(and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)))) (= main_~i~0 1) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) main_~sum~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {6529#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)))) (= main_~i~0 1) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,380 INFO L273 TraceCheckUtils]: 66: Hoare triple {6529#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)))) (= main_~i~0 1) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (= |main_~#a~0.offset| 0))} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {6533#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) main_~sum~0) (= main_~i~0 2) (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:30,381 INFO L273 TraceCheckUtils]: 67: Hoare triple {6533#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) main_~sum~0) (= main_~i~0 2) (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {6291#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:34:30,382 INFO L273 TraceCheckUtils]: 68: Hoare triple {6291#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {6291#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:34:30,382 INFO L273 TraceCheckUtils]: 69: Hoare triple {6291#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} assume !(~i~0 < ~SIZE~0); {6291#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:34:30,384 INFO L256 TraceCheckUtils]: 70: Hoare triple {6291#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {6292#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:34:30,384 INFO L273 TraceCheckUtils]: 71: Hoare triple {6292#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {6293#(= __VERIFIER_assert_~cond 1)} is VALID [2018-11-23 12:34:30,385 INFO L273 TraceCheckUtils]: 72: Hoare triple {6293#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {6229#false} is VALID [2018-11-23 12:34:30,385 INFO L273 TraceCheckUtils]: 73: Hoare triple {6229#false} assume !false; {6229#false} is VALID [2018-11-23 12:34:30,417 INFO L134 CoverageAnalysis]: Checked inductivity of 72 backedges. 0 proven. 72 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:34:30,435 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:34:30,435 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [66, 46] total 105 [2018-11-23 12:34:30,436 INFO L78 Accepts]: Start accepts. Automaton has 105 states. Word has length 74 [2018-11-23 12:34:30,437 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:34:30,437 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 105 states. [2018-11-23 12:34:30,681 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 136 edges. 136 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:34:30,681 INFO L459 AbstractCegarLoop]: Interpolant automaton has 105 states [2018-11-23 12:34:30,682 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 105 interpolants. [2018-11-23 12:34:30,685 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=801, Invalid=10119, Unknown=0, NotChecked=0, Total=10920 [2018-11-23 12:34:30,685 INFO L87 Difference]: Start difference. First operand 75 states and 82 transitions. Second operand 105 states. [2018-11-23 12:34:33,487 WARN L180 SmtUtils]: Spent 151.00 ms on a formula simplification. DAG size of input: 103 DAG size of output: 67 [2018-11-23 12:34:34,204 WARN L180 SmtUtils]: Spent 228.00 ms on a formula simplification. DAG size of input: 101 DAG size of output: 88 [2018-11-23 12:34:35,201 WARN L180 SmtUtils]: Spent 237.00 ms on a formula simplification. DAG size of input: 141 DAG size of output: 76 [2018-11-23 12:34:36,053 WARN L180 SmtUtils]: Spent 263.00 ms on a formula simplification. DAG size of input: 151 DAG size of output: 54 [2018-11-23 12:34:36,728 WARN L180 SmtUtils]: Spent 161.00 ms on a formula simplification. DAG size of input: 95 DAG size of output: 71 [2018-11-23 12:34:37,269 WARN L180 SmtUtils]: Spent 112.00 ms on a formula simplification. DAG size of input: 141 DAG size of output: 40 [2018-11-23 12:34:38,537 WARN L180 SmtUtils]: Spent 248.00 ms on a formula simplification. DAG size of input: 138 DAG size of output: 81 [2018-11-23 12:34:42,756 WARN L180 SmtUtils]: Spent 155.00 ms on a formula simplification. DAG size of input: 103 DAG size of output: 72 [2018-11-23 12:34:43,832 WARN L180 SmtUtils]: Spent 217.00 ms on a formula simplification. DAG size of input: 105 DAG size of output: 86 [2018-11-23 12:34:45,099 WARN L180 SmtUtils]: Spent 290.00 ms on a formula simplification. DAG size of input: 157 DAG size of output: 57 [2018-11-23 12:34:47,369 WARN L180 SmtUtils]: Spent 294.00 ms on a formula simplification. DAG size of input: 166 DAG size of output: 63 [2018-11-23 12:34:50,993 WARN L180 SmtUtils]: Spent 101.00 ms on a formula simplification. DAG size of input: 109 DAG size of output: 33 [2018-11-23 12:34:52,149 WARN L180 SmtUtils]: Spent 121.00 ms on a formula simplification. DAG size of input: 112 DAG size of output: 35 [2018-11-23 12:34:52,676 WARN L180 SmtUtils]: Spent 121.00 ms on a formula simplification. DAG size of input: 79 DAG size of output: 63 [2018-11-23 12:34:53,412 WARN L180 SmtUtils]: Spent 216.00 ms on a formula simplification. DAG size of input: 152 DAG size of output: 44 [2018-11-23 12:34:54,117 WARN L180 SmtUtils]: Spent 204.00 ms on a formula simplification. DAG size of input: 104 DAG size of output: 84 [2018-11-23 12:34:55,036 WARN L180 SmtUtils]: Spent 322.00 ms on a formula simplification. DAG size of input: 157 DAG size of output: 66 [2018-11-23 12:34:55,877 WARN L180 SmtUtils]: Spent 296.00 ms on a formula simplification. DAG size of input: 157 DAG size of output: 58 [2018-11-23 12:34:56,989 WARN L180 SmtUtils]: Spent 348.00 ms on a formula simplification. DAG size of input: 144 DAG size of output: 81 [2018-11-23 12:34:59,657 WARN L180 SmtUtils]: Spent 444.00 ms on a formula simplification. DAG size of input: 214 DAG size of output: 78 [2018-11-23 12:35:00,271 WARN L180 SmtUtils]: Spent 126.00 ms on a formula simplification. DAG size of input: 154 DAG size of output: 39 [2018-11-23 12:35:01,917 WARN L180 SmtUtils]: Spent 155.00 ms on a formula simplification. DAG size of input: 174 DAG size of output: 29 [2018-11-23 12:35:02,925 WARN L180 SmtUtils]: Spent 162.00 ms on a formula simplification. DAG size of input: 174 DAG size of output: 32 [2018-11-23 12:35:03,970 WARN L180 SmtUtils]: Spent 143.00 ms on a formula simplification. DAG size of input: 154 DAG size of output: 31 [2018-11-23 12:35:05,023 WARN L180 SmtUtils]: Spent 222.00 ms on a formula simplification. DAG size of input: 147 DAG size of output: 63 [2018-11-23 12:35:06,178 WARN L180 SmtUtils]: Spent 285.00 ms on a formula simplification. DAG size of input: 157 DAG size of output: 58 [2018-11-23 12:35:09,622 WARN L180 SmtUtils]: Spent 108.00 ms on a formula simplification. DAG size of input: 105 DAG size of output: 37 [2018-11-23 12:35:10,537 WARN L180 SmtUtils]: Spent 107.00 ms on a formula simplification. DAG size of input: 107 DAG size of output: 40 [2018-11-23 12:35:11,147 WARN L180 SmtUtils]: Spent 173.00 ms on a formula simplification. DAG size of input: 136 DAG size of output: 41 [2018-11-23 12:35:11,830 WARN L180 SmtUtils]: Spent 133.00 ms on a formula simplification. DAG size of input: 138 DAG size of output: 42 [2018-11-23 12:35:12,373 WARN L180 SmtUtils]: Spent 156.00 ms on a formula simplification. DAG size of input: 137 DAG size of output: 54 [2018-11-23 12:35:13,064 WARN L180 SmtUtils]: Spent 178.00 ms on a formula simplification. DAG size of input: 124 DAG size of output: 58 [2018-11-23 12:35:13,777 WARN L180 SmtUtils]: Spent 230.00 ms on a formula simplification. DAG size of input: 169 DAG size of output: 42 [2018-11-23 12:35:17,340 WARN L180 SmtUtils]: Spent 108.00 ms on a formula simplification. DAG size of input: 107 DAG size of output: 43 [2018-11-23 12:35:18,977 WARN L180 SmtUtils]: Spent 144.00 ms on a formula simplification. DAG size of input: 138 DAG size of output: 27 [2018-11-23 12:35:20,036 WARN L180 SmtUtils]: Spent 289.00 ms on a formula simplification. DAG size of input: 143 DAG size of output: 62 [2018-11-23 12:35:23,819 WARN L180 SmtUtils]: Spent 132.00 ms on a formula simplification. DAG size of input: 136 DAG size of output: 35 [2018-11-23 12:35:24,664 WARN L180 SmtUtils]: Spent 122.00 ms on a formula simplification. DAG size of input: 137 DAG size of output: 31 [2018-11-23 12:35:25,584 WARN L180 SmtUtils]: Spent 149.00 ms on a formula simplification. DAG size of input: 150 DAG size of output: 40 [2018-11-23 12:35:26,552 WARN L180 SmtUtils]: Spent 215.00 ms on a formula simplification. DAG size of input: 142 DAG size of output: 65 [2018-11-23 12:35:30,346 WARN L180 SmtUtils]: Spent 114.00 ms on a formula simplification. DAG size of input: 151 DAG size of output: 43 [2018-11-23 12:35:31,172 WARN L180 SmtUtils]: Spent 104.00 ms on a formula simplification. DAG size of input: 153 DAG size of output: 37 [2018-11-23 12:35:33,657 WARN L180 SmtUtils]: Spent 144.00 ms on a formula simplification. DAG size of input: 96 DAG size of output: 63 [2018-11-23 12:35:34,682 WARN L180 SmtUtils]: Spent 183.00 ms on a formula simplification. DAG size of input: 84 DAG size of output: 74 [2018-11-23 12:35:35,717 WARN L180 SmtUtils]: Spent 233.00 ms on a formula simplification. DAG size of input: 127 DAG size of output: 84 [2018-11-23 12:35:39,450 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:35:39,451 INFO L93 Difference]: Finished difference Result 222 states and 248 transitions. [2018-11-23 12:35:39,451 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 83 states. [2018-11-23 12:35:39,451 INFO L78 Accepts]: Start accepts. Automaton has 105 states. Word has length 74 [2018-11-23 12:35:39,451 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:35:39,452 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 105 states. [2018-11-23 12:35:39,457 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 83 states to 83 states and 218 transitions. [2018-11-23 12:35:39,457 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 105 states. [2018-11-23 12:35:39,462 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 83 states to 83 states and 218 transitions. [2018-11-23 12:35:39,462 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 83 states and 218 transitions. [2018-11-23 12:35:40,130 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 218 edges. 218 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:35:40,135 INFO L225 Difference]: With dead ends: 222 [2018-11-23 12:35:40,135 INFO L226 Difference]: Without dead ends: 162 [2018-11-23 12:35:40,142 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 214 GetRequests, 33 SyntacticMatches, 5 SemanticMatches, 176 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9625 ImplicationChecksByTransitivity, 37.9s TimeCoverageRelationStatistics Valid=3110, Invalid=28396, Unknown=0, NotChecked=0, Total=31506 [2018-11-23 12:35:40,142 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 162 states. [2018-11-23 12:35:41,029 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 162 to 140. [2018-11-23 12:35:41,030 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:35:41,030 INFO L82 GeneralOperation]: Start isEquivalent. First operand 162 states. Second operand 140 states. [2018-11-23 12:35:41,030 INFO L74 IsIncluded]: Start isIncluded. First operand 162 states. Second operand 140 states. [2018-11-23 12:35:41,030 INFO L87 Difference]: Start difference. First operand 162 states. Second operand 140 states. [2018-11-23 12:35:41,035 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:35:41,035 INFO L93 Difference]: Finished difference Result 162 states and 175 transitions. [2018-11-23 12:35:41,035 INFO L276 IsEmpty]: Start isEmpty. Operand 162 states and 175 transitions. [2018-11-23 12:35:41,036 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:35:41,036 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:35:41,036 INFO L74 IsIncluded]: Start isIncluded. First operand 140 states. Second operand 162 states. [2018-11-23 12:35:41,036 INFO L87 Difference]: Start difference. First operand 140 states. Second operand 162 states. [2018-11-23 12:35:41,041 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:35:41,041 INFO L93 Difference]: Finished difference Result 162 states and 175 transitions. [2018-11-23 12:35:41,041 INFO L276 IsEmpty]: Start isEmpty. Operand 162 states and 175 transitions. [2018-11-23 12:35:41,041 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:35:41,042 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:35:41,042 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:35:41,042 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:35:41,042 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 140 states. [2018-11-23 12:35:41,046 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 140 states to 140 states and 152 transitions. [2018-11-23 12:35:41,046 INFO L78 Accepts]: Start accepts. Automaton has 140 states and 152 transitions. Word has length 74 [2018-11-23 12:35:41,046 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:35:41,046 INFO L480 AbstractCegarLoop]: Abstraction has 140 states and 152 transitions. [2018-11-23 12:35:41,047 INFO L481 AbstractCegarLoop]: Interpolant automaton has 105 states. [2018-11-23 12:35:41,047 INFO L276 IsEmpty]: Start isEmpty. Operand 140 states and 152 transitions. [2018-11-23 12:35:41,047 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 77 [2018-11-23 12:35:41,048 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:35:41,048 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 3, 3, 3, 3, 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, 1, 1, 1, 1] [2018-11-23 12:35:41,048 INFO L423 AbstractCegarLoop]: === Iteration 11 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:35:41,048 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:35:41,048 INFO L82 PathProgramCache]: Analyzing trace with hash -1680555189, now seen corresponding path program 7 times [2018-11-23 12:35:41,048 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:35:41,049 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:35:41,049 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:35:41,049 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:35:41,049 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:35:41,061 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:35:41,774 INFO L256 TraceCheckUtils]: 0: Hoare triple {7562#true} call ULTIMATE.init(); {7562#true} is VALID [2018-11-23 12:35:41,775 INFO L273 TraceCheckUtils]: 1: Hoare triple {7562#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {7562#true} is VALID [2018-11-23 12:35:41,775 INFO L273 TraceCheckUtils]: 2: Hoare triple {7562#true} assume true; {7562#true} is VALID [2018-11-23 12:35:41,775 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {7562#true} {7562#true} #139#return; {7562#true} is VALID [2018-11-23 12:35:41,775 INFO L256 TraceCheckUtils]: 4: Hoare triple {7562#true} call #t~ret18 := main(); {7562#true} is VALID [2018-11-23 12:35:41,775 INFO L273 TraceCheckUtils]: 5: Hoare triple {7562#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {7562#true} is VALID [2018-11-23 12:35:41,775 INFO L273 TraceCheckUtils]: 6: Hoare triple {7562#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(2 * ~SIZE~0);~sum~0 := 0;~i~0 := 0; {7562#true} is VALID [2018-11-23 12:35:41,775 INFO L273 TraceCheckUtils]: 7: Hoare triple {7562#true} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {7562#true} is VALID [2018-11-23 12:35:41,776 INFO L273 TraceCheckUtils]: 8: Hoare triple {7562#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7562#true} is VALID [2018-11-23 12:35:41,776 INFO L273 TraceCheckUtils]: 9: Hoare triple {7562#true} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {7562#true} is VALID [2018-11-23 12:35:41,776 INFO L273 TraceCheckUtils]: 10: Hoare triple {7562#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7562#true} is VALID [2018-11-23 12:35:41,776 INFO L273 TraceCheckUtils]: 11: Hoare triple {7562#true} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {7562#true} is VALID [2018-11-23 12:35:41,776 INFO L273 TraceCheckUtils]: 12: Hoare triple {7562#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7562#true} is VALID [2018-11-23 12:35:41,777 INFO L273 TraceCheckUtils]: 13: Hoare triple {7562#true} assume !(~i~0 < ~SIZE~0); {7562#true} is VALID [2018-11-23 12:35:41,777 INFO L273 TraceCheckUtils]: 14: Hoare triple {7562#true} ~i~0 := 0; {7562#true} is VALID [2018-11-23 12:35:41,777 INFO L273 TraceCheckUtils]: 15: Hoare triple {7562#true} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {7562#true} is VALID [2018-11-23 12:35:41,777 INFO L273 TraceCheckUtils]: 16: Hoare triple {7562#true} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {7562#true} is VALID [2018-11-23 12:35:41,777 INFO L273 TraceCheckUtils]: 17: Hoare triple {7562#true} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {7562#true} is VALID [2018-11-23 12:35:41,777 INFO L273 TraceCheckUtils]: 18: Hoare triple {7562#true} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {7562#true} is VALID [2018-11-23 12:35:41,777 INFO L273 TraceCheckUtils]: 19: Hoare triple {7562#true} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {7562#true} is VALID [2018-11-23 12:35:41,777 INFO L273 TraceCheckUtils]: 20: Hoare triple {7562#true} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {7562#true} is VALID [2018-11-23 12:35:41,778 INFO L273 TraceCheckUtils]: 21: Hoare triple {7562#true} assume !(~i~0 < ~SIZE~0); {7562#true} is VALID [2018-11-23 12:35:41,778 INFO L273 TraceCheckUtils]: 22: Hoare triple {7562#true} ~i~0 := 0; {7564#(= main_~i~0 0)} is VALID [2018-11-23 12:35:41,778 INFO L273 TraceCheckUtils]: 23: Hoare triple {7564#(= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {7564#(= main_~i~0 0)} is VALID [2018-11-23 12:35:41,779 INFO L273 TraceCheckUtils]: 24: Hoare triple {7564#(= main_~i~0 0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {7565#(<= main_~i~0 1)} is VALID [2018-11-23 12:35:41,779 INFO L273 TraceCheckUtils]: 25: Hoare triple {7565#(<= main_~i~0 1)} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {7565#(<= main_~i~0 1)} is VALID [2018-11-23 12:35:41,779 INFO L273 TraceCheckUtils]: 26: Hoare triple {7565#(<= main_~i~0 1)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {7566#(<= main_~i~0 2)} is VALID [2018-11-23 12:35:41,780 INFO L273 TraceCheckUtils]: 27: Hoare triple {7566#(<= main_~i~0 2)} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {7566#(<= main_~i~0 2)} is VALID [2018-11-23 12:35:41,780 INFO L273 TraceCheckUtils]: 28: Hoare triple {7566#(<= main_~i~0 2)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {7567#(<= main_~i~0 3)} is VALID [2018-11-23 12:35:41,781 INFO L273 TraceCheckUtils]: 29: Hoare triple {7567#(<= main_~i~0 3)} assume !(~i~0 < ~SIZE~0); {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,781 INFO L273 TraceCheckUtils]: 30: Hoare triple {7568#(<= ~SIZE~0 3)} ~i~0 := 0; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,781 INFO L273 TraceCheckUtils]: 31: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,782 INFO L273 TraceCheckUtils]: 32: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,782 INFO L273 TraceCheckUtils]: 33: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,783 INFO L273 TraceCheckUtils]: 34: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,783 INFO L273 TraceCheckUtils]: 35: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,784 INFO L273 TraceCheckUtils]: 36: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,784 INFO L273 TraceCheckUtils]: 37: Hoare triple {7568#(<= ~SIZE~0 3)} assume !(~i~0 < ~SIZE~0); {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,785 INFO L273 TraceCheckUtils]: 38: Hoare triple {7568#(<= ~SIZE~0 3)} ~i~0 := 0; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,785 INFO L273 TraceCheckUtils]: 39: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,786 INFO L273 TraceCheckUtils]: 40: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,786 INFO L273 TraceCheckUtils]: 41: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,787 INFO L273 TraceCheckUtils]: 42: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,787 INFO L273 TraceCheckUtils]: 43: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,788 INFO L273 TraceCheckUtils]: 44: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,788 INFO L273 TraceCheckUtils]: 45: Hoare triple {7568#(<= ~SIZE~0 3)} assume !(~i~0 < ~SIZE~0); {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,789 INFO L273 TraceCheckUtils]: 46: Hoare triple {7568#(<= ~SIZE~0 3)} ~i~0 := 0; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,789 INFO L273 TraceCheckUtils]: 47: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,790 INFO L273 TraceCheckUtils]: 48: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,790 INFO L273 TraceCheckUtils]: 49: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,791 INFO L273 TraceCheckUtils]: 50: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,791 INFO L273 TraceCheckUtils]: 51: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,792 INFO L273 TraceCheckUtils]: 52: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,792 INFO L273 TraceCheckUtils]: 53: Hoare triple {7568#(<= ~SIZE~0 3)} assume !(~i~0 < ~SIZE~0); {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,793 INFO L273 TraceCheckUtils]: 54: Hoare triple {7568#(<= ~SIZE~0 3)} ~i~0 := 0; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,793 INFO L273 TraceCheckUtils]: 55: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,794 INFO L273 TraceCheckUtils]: 56: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,794 INFO L273 TraceCheckUtils]: 57: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,795 INFO L273 TraceCheckUtils]: 58: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,795 INFO L273 TraceCheckUtils]: 59: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,796 INFO L273 TraceCheckUtils]: 60: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,796 INFO L273 TraceCheckUtils]: 61: Hoare triple {7568#(<= ~SIZE~0 3)} assume !(~i~0 < ~SIZE~0); {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:41,797 INFO L273 TraceCheckUtils]: 62: Hoare triple {7568#(<= ~SIZE~0 3)} ~i~0 := 0; {7569#(and (<= ~SIZE~0 3) (= main_~i~0 0))} is VALID [2018-11-23 12:35:41,798 INFO L273 TraceCheckUtils]: 63: Hoare triple {7569#(and (<= ~SIZE~0 3) (= main_~i~0 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {7569#(and (<= ~SIZE~0 3) (= main_~i~0 0))} is VALID [2018-11-23 12:35:41,799 INFO L273 TraceCheckUtils]: 64: Hoare triple {7569#(and (<= ~SIZE~0 3) (= main_~i~0 0))} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {7570#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:35:41,799 INFO L273 TraceCheckUtils]: 65: Hoare triple {7570#(<= ~SIZE~0 (+ main_~i~0 2))} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {7570#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:35:41,800 INFO L273 TraceCheckUtils]: 66: Hoare triple {7570#(<= ~SIZE~0 (+ main_~i~0 2))} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {7571#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:35:41,801 INFO L273 TraceCheckUtils]: 67: Hoare triple {7571#(<= ~SIZE~0 (+ main_~i~0 1))} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {7571#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:35:41,801 INFO L273 TraceCheckUtils]: 68: Hoare triple {7571#(<= ~SIZE~0 (+ main_~i~0 1))} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {7572#(<= ~SIZE~0 main_~i~0)} is VALID [2018-11-23 12:35:41,802 INFO L273 TraceCheckUtils]: 69: Hoare triple {7572#(<= ~SIZE~0 main_~i~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {7563#false} is VALID [2018-11-23 12:35:41,802 INFO L273 TraceCheckUtils]: 70: Hoare triple {7563#false} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {7563#false} is VALID [2018-11-23 12:35:41,802 INFO L273 TraceCheckUtils]: 71: Hoare triple {7563#false} assume !(~i~0 < ~SIZE~0); {7563#false} is VALID [2018-11-23 12:35:41,803 INFO L256 TraceCheckUtils]: 72: Hoare triple {7563#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {7563#false} is VALID [2018-11-23 12:35:41,803 INFO L273 TraceCheckUtils]: 73: Hoare triple {7563#false} ~cond := #in~cond; {7563#false} is VALID [2018-11-23 12:35:41,803 INFO L273 TraceCheckUtils]: 74: Hoare triple {7563#false} assume 0 == ~cond; {7563#false} is VALID [2018-11-23 12:35:41,803 INFO L273 TraceCheckUtils]: 75: Hoare triple {7563#false} assume !false; {7563#false} is VALID [2018-11-23 12:35:41,809 INFO L134 CoverageAnalysis]: Checked inductivity of 79 backedges. 11 proven. 14 refuted. 0 times theorem prover too weak. 54 trivial. 0 not checked. [2018-11-23 12:35:41,809 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:35:41,809 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:35:41,824 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:35:41,859 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:35:41,877 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:35:41,878 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:35:42,069 INFO L256 TraceCheckUtils]: 0: Hoare triple {7562#true} call ULTIMATE.init(); {7562#true} is VALID [2018-11-23 12:35:42,069 INFO L273 TraceCheckUtils]: 1: Hoare triple {7562#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {7562#true} is VALID [2018-11-23 12:35:42,069 INFO L273 TraceCheckUtils]: 2: Hoare triple {7562#true} assume true; {7562#true} is VALID [2018-11-23 12:35:42,069 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {7562#true} {7562#true} #139#return; {7562#true} is VALID [2018-11-23 12:35:42,070 INFO L256 TraceCheckUtils]: 4: Hoare triple {7562#true} call #t~ret18 := main(); {7562#true} is VALID [2018-11-23 12:35:42,070 INFO L273 TraceCheckUtils]: 5: Hoare triple {7562#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {7562#true} is VALID [2018-11-23 12:35:42,071 INFO L273 TraceCheckUtils]: 6: Hoare triple {7562#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(2 * ~SIZE~0);~sum~0 := 0;~i~0 := 0; {7594#(<= main_~i~0 0)} is VALID [2018-11-23 12:35:42,071 INFO L273 TraceCheckUtils]: 7: Hoare triple {7594#(<= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {7594#(<= main_~i~0 0)} is VALID [2018-11-23 12:35:42,072 INFO L273 TraceCheckUtils]: 8: Hoare triple {7594#(<= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7565#(<= main_~i~0 1)} is VALID [2018-11-23 12:35:42,072 INFO L273 TraceCheckUtils]: 9: Hoare triple {7565#(<= main_~i~0 1)} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {7565#(<= main_~i~0 1)} is VALID [2018-11-23 12:35:42,072 INFO L273 TraceCheckUtils]: 10: Hoare triple {7565#(<= main_~i~0 1)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7566#(<= main_~i~0 2)} is VALID [2018-11-23 12:35:42,073 INFO L273 TraceCheckUtils]: 11: Hoare triple {7566#(<= main_~i~0 2)} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {7566#(<= main_~i~0 2)} is VALID [2018-11-23 12:35:42,073 INFO L273 TraceCheckUtils]: 12: Hoare triple {7566#(<= main_~i~0 2)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7567#(<= main_~i~0 3)} is VALID [2018-11-23 12:35:42,074 INFO L273 TraceCheckUtils]: 13: Hoare triple {7567#(<= main_~i~0 3)} assume !(~i~0 < ~SIZE~0); {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,075 INFO L273 TraceCheckUtils]: 14: Hoare triple {7568#(<= ~SIZE~0 3)} ~i~0 := 0; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,075 INFO L273 TraceCheckUtils]: 15: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,076 INFO L273 TraceCheckUtils]: 16: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,076 INFO L273 TraceCheckUtils]: 17: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,077 INFO L273 TraceCheckUtils]: 18: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,077 INFO L273 TraceCheckUtils]: 19: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,078 INFO L273 TraceCheckUtils]: 20: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,078 INFO L273 TraceCheckUtils]: 21: Hoare triple {7568#(<= ~SIZE~0 3)} assume !(~i~0 < ~SIZE~0); {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,079 INFO L273 TraceCheckUtils]: 22: Hoare triple {7568#(<= ~SIZE~0 3)} ~i~0 := 0; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,079 INFO L273 TraceCheckUtils]: 23: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,080 INFO L273 TraceCheckUtils]: 24: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,080 INFO L273 TraceCheckUtils]: 25: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,081 INFO L273 TraceCheckUtils]: 26: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,081 INFO L273 TraceCheckUtils]: 27: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,082 INFO L273 TraceCheckUtils]: 28: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,082 INFO L273 TraceCheckUtils]: 29: Hoare triple {7568#(<= ~SIZE~0 3)} assume !(~i~0 < ~SIZE~0); {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,083 INFO L273 TraceCheckUtils]: 30: Hoare triple {7568#(<= ~SIZE~0 3)} ~i~0 := 0; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,083 INFO L273 TraceCheckUtils]: 31: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,084 INFO L273 TraceCheckUtils]: 32: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,084 INFO L273 TraceCheckUtils]: 33: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,085 INFO L273 TraceCheckUtils]: 34: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,085 INFO L273 TraceCheckUtils]: 35: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,086 INFO L273 TraceCheckUtils]: 36: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,086 INFO L273 TraceCheckUtils]: 37: Hoare triple {7568#(<= ~SIZE~0 3)} assume !(~i~0 < ~SIZE~0); {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,087 INFO L273 TraceCheckUtils]: 38: Hoare triple {7568#(<= ~SIZE~0 3)} ~i~0 := 0; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,088 INFO L273 TraceCheckUtils]: 39: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,088 INFO L273 TraceCheckUtils]: 40: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,089 INFO L273 TraceCheckUtils]: 41: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,089 INFO L273 TraceCheckUtils]: 42: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,090 INFO L273 TraceCheckUtils]: 43: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,090 INFO L273 TraceCheckUtils]: 44: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,091 INFO L273 TraceCheckUtils]: 45: Hoare triple {7568#(<= ~SIZE~0 3)} assume !(~i~0 < ~SIZE~0); {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,091 INFO L273 TraceCheckUtils]: 46: Hoare triple {7568#(<= ~SIZE~0 3)} ~i~0 := 0; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,092 INFO L273 TraceCheckUtils]: 47: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,092 INFO L273 TraceCheckUtils]: 48: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,093 INFO L273 TraceCheckUtils]: 49: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,093 INFO L273 TraceCheckUtils]: 50: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,094 INFO L273 TraceCheckUtils]: 51: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,094 INFO L273 TraceCheckUtils]: 52: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,095 INFO L273 TraceCheckUtils]: 53: Hoare triple {7568#(<= ~SIZE~0 3)} assume !(~i~0 < ~SIZE~0); {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,095 INFO L273 TraceCheckUtils]: 54: Hoare triple {7568#(<= ~SIZE~0 3)} ~i~0 := 0; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,096 INFO L273 TraceCheckUtils]: 55: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,096 INFO L273 TraceCheckUtils]: 56: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,097 INFO L273 TraceCheckUtils]: 57: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,097 INFO L273 TraceCheckUtils]: 58: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,098 INFO L273 TraceCheckUtils]: 59: Hoare triple {7568#(<= ~SIZE~0 3)} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,098 INFO L273 TraceCheckUtils]: 60: Hoare triple {7568#(<= ~SIZE~0 3)} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,099 INFO L273 TraceCheckUtils]: 61: Hoare triple {7568#(<= ~SIZE~0 3)} assume !(~i~0 < ~SIZE~0); {7568#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:35:42,100 INFO L273 TraceCheckUtils]: 62: Hoare triple {7568#(<= ~SIZE~0 3)} ~i~0 := 0; {7763#(and (<= 0 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:35:42,100 INFO L273 TraceCheckUtils]: 63: Hoare triple {7763#(and (<= 0 main_~i~0) (<= ~SIZE~0 3))} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {7763#(and (<= 0 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:35:42,101 INFO L273 TraceCheckUtils]: 64: Hoare triple {7763#(and (<= 0 main_~i~0) (<= ~SIZE~0 3))} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {7770#(and (<= 1 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:35:42,102 INFO L273 TraceCheckUtils]: 65: Hoare triple {7770#(and (<= 1 main_~i~0) (<= ~SIZE~0 3))} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {7770#(and (<= 1 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:35:42,103 INFO L273 TraceCheckUtils]: 66: Hoare triple {7770#(and (<= 1 main_~i~0) (<= ~SIZE~0 3))} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {7777#(and (<= 2 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:35:42,104 INFO L273 TraceCheckUtils]: 67: Hoare triple {7777#(and (<= 2 main_~i~0) (<= ~SIZE~0 3))} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {7777#(and (<= 2 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:35:42,105 INFO L273 TraceCheckUtils]: 68: Hoare triple {7777#(and (<= 2 main_~i~0) (<= ~SIZE~0 3))} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {7784#(and (<= ~SIZE~0 3) (<= 3 main_~i~0))} is VALID [2018-11-23 12:35:42,105 INFO L273 TraceCheckUtils]: 69: Hoare triple {7784#(and (<= ~SIZE~0 3) (<= 3 main_~i~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {7563#false} is VALID [2018-11-23 12:35:42,106 INFO L273 TraceCheckUtils]: 70: Hoare triple {7563#false} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {7563#false} is VALID [2018-11-23 12:35:42,106 INFO L273 TraceCheckUtils]: 71: Hoare triple {7563#false} assume !(~i~0 < ~SIZE~0); {7563#false} is VALID [2018-11-23 12:35:42,106 INFO L256 TraceCheckUtils]: 72: Hoare triple {7563#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {7563#false} is VALID [2018-11-23 12:35:42,106 INFO L273 TraceCheckUtils]: 73: Hoare triple {7563#false} ~cond := #in~cond; {7563#false} is VALID [2018-11-23 12:35:42,107 INFO L273 TraceCheckUtils]: 74: Hoare triple {7563#false} assume 0 == ~cond; {7563#false} is VALID [2018-11-23 12:35:42,107 INFO L273 TraceCheckUtils]: 75: Hoare triple {7563#false} assume !false; {7563#false} is VALID [2018-11-23 12:35:42,111 INFO L134 CoverageAnalysis]: Checked inductivity of 79 backedges. 16 proven. 9 refuted. 0 times theorem prover too weak. 54 trivial. 0 not checked. [2018-11-23 12:35:42,132 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:35:42,132 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 16 [2018-11-23 12:35:42,133 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 76 [2018-11-23 12:35:42,133 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:35:42,133 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states. [2018-11-23 12:35:42,210 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:35:42,210 INFO L459 AbstractCegarLoop]: Interpolant automaton has 16 states [2018-11-23 12:35:42,210 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2018-11-23 12:35:42,210 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=65, Invalid=175, Unknown=0, NotChecked=0, Total=240 [2018-11-23 12:35:42,210 INFO L87 Difference]: Start difference. First operand 140 states and 152 transitions. Second operand 16 states. [2018-11-23 12:35:45,638 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:35:45,638 INFO L93 Difference]: Finished difference Result 267 states and 294 transitions. [2018-11-23 12:35:45,638 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2018-11-23 12:35:45,638 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 76 [2018-11-23 12:35:45,639 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:35:45,639 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-23 12:35:45,644 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 217 transitions. [2018-11-23 12:35:45,644 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-23 12:35:45,646 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 217 transitions. [2018-11-23 12:35:45,646 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 217 transitions. [2018-11-23 12:35:45,866 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 217 edges. 217 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:35:45,869 INFO L225 Difference]: With dead ends: 267 [2018-11-23 12:35:45,869 INFO L226 Difference]: Without dead ends: 149 [2018-11-23 12:35:45,870 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 94 GetRequests, 76 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 78 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=103, Invalid=277, Unknown=0, NotChecked=0, Total=380 [2018-11-23 12:35:45,870 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 149 states. [2018-11-23 12:35:47,512 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 149 to 129. [2018-11-23 12:35:47,512 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:35:47,512 INFO L82 GeneralOperation]: Start isEquivalent. First operand 149 states. Second operand 129 states. [2018-11-23 12:35:47,512 INFO L74 IsIncluded]: Start isIncluded. First operand 149 states. Second operand 129 states. [2018-11-23 12:35:47,513 INFO L87 Difference]: Start difference. First operand 149 states. Second operand 129 states. [2018-11-23 12:35:47,516 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:35:47,516 INFO L93 Difference]: Finished difference Result 149 states and 161 transitions. [2018-11-23 12:35:47,517 INFO L276 IsEmpty]: Start isEmpty. Operand 149 states and 161 transitions. [2018-11-23 12:35:47,517 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:35:47,517 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:35:47,517 INFO L74 IsIncluded]: Start isIncluded. First operand 129 states. Second operand 149 states. [2018-11-23 12:35:47,518 INFO L87 Difference]: Start difference. First operand 129 states. Second operand 149 states. [2018-11-23 12:35:47,520 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:35:47,521 INFO L93 Difference]: Finished difference Result 149 states and 161 transitions. [2018-11-23 12:35:47,521 INFO L276 IsEmpty]: Start isEmpty. Operand 149 states and 161 transitions. [2018-11-23 12:35:47,521 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:35:47,521 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:35:47,521 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:35:47,522 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:35:47,522 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 129 states. [2018-11-23 12:35:47,524 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 129 states to 129 states and 141 transitions. [2018-11-23 12:35:47,524 INFO L78 Accepts]: Start accepts. Automaton has 129 states and 141 transitions. Word has length 76 [2018-11-23 12:35:47,525 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:35:47,525 INFO L480 AbstractCegarLoop]: Abstraction has 129 states and 141 transitions. [2018-11-23 12:35:47,525 INFO L481 AbstractCegarLoop]: Interpolant automaton has 16 states. [2018-11-23 12:35:47,525 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 141 transitions. [2018-11-23 12:35:47,526 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 79 [2018-11-23 12:35:47,526 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:35:47,526 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 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, 1, 1, 1, 1] [2018-11-23 12:35:47,526 INFO L423 AbstractCegarLoop]: === Iteration 12 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:35:47,526 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:35:47,527 INFO L82 PathProgramCache]: Analyzing trace with hash -579614839, now seen corresponding path program 8 times [2018-11-23 12:35:47,527 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:35:47,527 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:35:47,528 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:35:47,528 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:35:47,528 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:35:47,541 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:35:48,133 INFO L256 TraceCheckUtils]: 0: Hoare triple {8703#true} call ULTIMATE.init(); {8703#true} is VALID [2018-11-23 12:35:48,133 INFO L273 TraceCheckUtils]: 1: Hoare triple {8703#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {8703#true} is VALID [2018-11-23 12:35:48,133 INFO L273 TraceCheckUtils]: 2: Hoare triple {8703#true} assume true; {8703#true} is VALID [2018-11-23 12:35:48,134 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {8703#true} {8703#true} #139#return; {8703#true} is VALID [2018-11-23 12:35:48,134 INFO L256 TraceCheckUtils]: 4: Hoare triple {8703#true} call #t~ret18 := main(); {8703#true} is VALID [2018-11-23 12:35:48,134 INFO L273 TraceCheckUtils]: 5: Hoare triple {8703#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {8703#true} is VALID [2018-11-23 12:35:48,134 INFO L273 TraceCheckUtils]: 6: Hoare triple {8703#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(2 * ~SIZE~0);~sum~0 := 0;~i~0 := 0; {8703#true} is VALID [2018-11-23 12:35:48,134 INFO L273 TraceCheckUtils]: 7: Hoare triple {8703#true} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {8703#true} is VALID [2018-11-23 12:35:48,135 INFO L273 TraceCheckUtils]: 8: Hoare triple {8703#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {8703#true} is VALID [2018-11-23 12:35:48,135 INFO L273 TraceCheckUtils]: 9: Hoare triple {8703#true} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {8703#true} is VALID [2018-11-23 12:35:48,135 INFO L273 TraceCheckUtils]: 10: Hoare triple {8703#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {8703#true} is VALID [2018-11-23 12:35:48,135 INFO L273 TraceCheckUtils]: 11: Hoare triple {8703#true} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {8703#true} is VALID [2018-11-23 12:35:48,135 INFO L273 TraceCheckUtils]: 12: Hoare triple {8703#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {8703#true} is VALID [2018-11-23 12:35:48,136 INFO L273 TraceCheckUtils]: 13: Hoare triple {8703#true} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {8703#true} is VALID [2018-11-23 12:35:48,136 INFO L273 TraceCheckUtils]: 14: Hoare triple {8703#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {8703#true} is VALID [2018-11-23 12:35:48,136 INFO L273 TraceCheckUtils]: 15: Hoare triple {8703#true} assume !(~i~0 < ~SIZE~0); {8703#true} is VALID [2018-11-23 12:35:48,137 INFO L273 TraceCheckUtils]: 16: Hoare triple {8703#true} ~i~0 := 0; {8705#(= main_~i~0 0)} is VALID [2018-11-23 12:35:48,137 INFO L273 TraceCheckUtils]: 17: Hoare triple {8705#(= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {8705#(= main_~i~0 0)} is VALID [2018-11-23 12:35:48,138 INFO L273 TraceCheckUtils]: 18: Hoare triple {8705#(= main_~i~0 0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {8706#(<= 1 main_~i~0)} is VALID [2018-11-23 12:35:48,138 INFO L273 TraceCheckUtils]: 19: Hoare triple {8706#(<= 1 main_~i~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {8706#(<= 1 main_~i~0)} is VALID [2018-11-23 12:35:48,139 INFO L273 TraceCheckUtils]: 20: Hoare triple {8706#(<= 1 main_~i~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {8707#(<= 2 main_~i~0)} is VALID [2018-11-23 12:35:48,139 INFO L273 TraceCheckUtils]: 21: Hoare triple {8707#(<= 2 main_~i~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {8707#(<= 2 main_~i~0)} is VALID [2018-11-23 12:35:48,139 INFO L273 TraceCheckUtils]: 22: Hoare triple {8707#(<= 2 main_~i~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {8708#(<= 3 main_~i~0)} is VALID [2018-11-23 12:35:48,140 INFO L273 TraceCheckUtils]: 23: Hoare triple {8708#(<= 3 main_~i~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,141 INFO L273 TraceCheckUtils]: 24: Hoare triple {8709#(<= 4 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,141 INFO L273 TraceCheckUtils]: 25: Hoare triple {8709#(<= 4 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,142 INFO L273 TraceCheckUtils]: 26: Hoare triple {8709#(<= 4 ~SIZE~0)} ~i~0 := 0; {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,142 INFO L273 TraceCheckUtils]: 27: Hoare triple {8709#(<= 4 ~SIZE~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,143 INFO L273 TraceCheckUtils]: 28: Hoare triple {8709#(<= 4 ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,143 INFO L273 TraceCheckUtils]: 29: Hoare triple {8709#(<= 4 ~SIZE~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,144 INFO L273 TraceCheckUtils]: 30: Hoare triple {8709#(<= 4 ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,144 INFO L273 TraceCheckUtils]: 31: Hoare triple {8709#(<= 4 ~SIZE~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,145 INFO L273 TraceCheckUtils]: 32: Hoare triple {8709#(<= 4 ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,145 INFO L273 TraceCheckUtils]: 33: Hoare triple {8709#(<= 4 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,146 INFO L273 TraceCheckUtils]: 34: Hoare triple {8709#(<= 4 ~SIZE~0)} ~i~0 := 0; {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,147 INFO L273 TraceCheckUtils]: 35: Hoare triple {8709#(<= 4 ~SIZE~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,147 INFO L273 TraceCheckUtils]: 36: Hoare triple {8709#(<= 4 ~SIZE~0)} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,148 INFO L273 TraceCheckUtils]: 37: Hoare triple {8709#(<= 4 ~SIZE~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,148 INFO L273 TraceCheckUtils]: 38: Hoare triple {8709#(<= 4 ~SIZE~0)} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,149 INFO L273 TraceCheckUtils]: 39: Hoare triple {8709#(<= 4 ~SIZE~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,149 INFO L273 TraceCheckUtils]: 40: Hoare triple {8709#(<= 4 ~SIZE~0)} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,150 INFO L273 TraceCheckUtils]: 41: Hoare triple {8709#(<= 4 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,150 INFO L273 TraceCheckUtils]: 42: Hoare triple {8709#(<= 4 ~SIZE~0)} ~i~0 := 0; {8710#(and (<= 4 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:35:48,151 INFO L273 TraceCheckUtils]: 43: Hoare triple {8710#(and (<= 4 ~SIZE~0) (= main_~i~0 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {8710#(and (<= 4 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:35:48,152 INFO L273 TraceCheckUtils]: 44: Hoare triple {8710#(and (<= 4 ~SIZE~0) (= main_~i~0 0))} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {8711#(<= (+ main_~i~0 3) ~SIZE~0)} is VALID [2018-11-23 12:35:48,153 INFO L273 TraceCheckUtils]: 45: Hoare triple {8711#(<= (+ main_~i~0 3) ~SIZE~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {8711#(<= (+ main_~i~0 3) ~SIZE~0)} is VALID [2018-11-23 12:35:48,153 INFO L273 TraceCheckUtils]: 46: Hoare triple {8711#(<= (+ main_~i~0 3) ~SIZE~0)} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {8712#(<= (+ main_~i~0 2) ~SIZE~0)} is VALID [2018-11-23 12:35:48,154 INFO L273 TraceCheckUtils]: 47: Hoare triple {8712#(<= (+ main_~i~0 2) ~SIZE~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {8712#(<= (+ main_~i~0 2) ~SIZE~0)} is VALID [2018-11-23 12:35:48,155 INFO L273 TraceCheckUtils]: 48: Hoare triple {8712#(<= (+ main_~i~0 2) ~SIZE~0)} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {8713#(<= (+ main_~i~0 1) ~SIZE~0)} is VALID [2018-11-23 12:35:48,155 INFO L273 TraceCheckUtils]: 49: Hoare triple {8713#(<= (+ main_~i~0 1) ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {8704#false} is VALID [2018-11-23 12:35:48,156 INFO L273 TraceCheckUtils]: 50: Hoare triple {8704#false} ~i~0 := 0; {8704#false} is VALID [2018-11-23 12:35:48,156 INFO L273 TraceCheckUtils]: 51: Hoare triple {8704#false} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {8704#false} is VALID [2018-11-23 12:35:48,156 INFO L273 TraceCheckUtils]: 52: Hoare triple {8704#false} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {8704#false} is VALID [2018-11-23 12:35:48,156 INFO L273 TraceCheckUtils]: 53: Hoare triple {8704#false} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {8704#false} is VALID [2018-11-23 12:35:48,157 INFO L273 TraceCheckUtils]: 54: Hoare triple {8704#false} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {8704#false} is VALID [2018-11-23 12:35:48,157 INFO L273 TraceCheckUtils]: 55: Hoare triple {8704#false} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {8704#false} is VALID [2018-11-23 12:35:48,157 INFO L273 TraceCheckUtils]: 56: Hoare triple {8704#false} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {8704#false} is VALID [2018-11-23 12:35:48,157 INFO L273 TraceCheckUtils]: 57: Hoare triple {8704#false} assume !(~i~0 < ~SIZE~0); {8704#false} is VALID [2018-11-23 12:35:48,157 INFO L273 TraceCheckUtils]: 58: Hoare triple {8704#false} ~i~0 := 0; {8704#false} is VALID [2018-11-23 12:35:48,158 INFO L273 TraceCheckUtils]: 59: Hoare triple {8704#false} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {8704#false} is VALID [2018-11-23 12:35:48,158 INFO L273 TraceCheckUtils]: 60: Hoare triple {8704#false} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {8704#false} is VALID [2018-11-23 12:35:48,158 INFO L273 TraceCheckUtils]: 61: Hoare triple {8704#false} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {8704#false} is VALID [2018-11-23 12:35:48,158 INFO L273 TraceCheckUtils]: 62: Hoare triple {8704#false} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {8704#false} is VALID [2018-11-23 12:35:48,158 INFO L273 TraceCheckUtils]: 63: Hoare triple {8704#false} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {8704#false} is VALID [2018-11-23 12:35:48,159 INFO L273 TraceCheckUtils]: 64: Hoare triple {8704#false} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {8704#false} is VALID [2018-11-23 12:35:48,159 INFO L273 TraceCheckUtils]: 65: Hoare triple {8704#false} assume !(~i~0 < ~SIZE~0); {8704#false} is VALID [2018-11-23 12:35:48,159 INFO L273 TraceCheckUtils]: 66: Hoare triple {8704#false} ~i~0 := 0; {8704#false} is VALID [2018-11-23 12:35:48,159 INFO L273 TraceCheckUtils]: 67: Hoare triple {8704#false} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {8704#false} is VALID [2018-11-23 12:35:48,159 INFO L273 TraceCheckUtils]: 68: Hoare triple {8704#false} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {8704#false} is VALID [2018-11-23 12:35:48,159 INFO L273 TraceCheckUtils]: 69: Hoare triple {8704#false} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {8704#false} is VALID [2018-11-23 12:35:48,159 INFO L273 TraceCheckUtils]: 70: Hoare triple {8704#false} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {8704#false} is VALID [2018-11-23 12:35:48,159 INFO L273 TraceCheckUtils]: 71: Hoare triple {8704#false} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {8704#false} is VALID [2018-11-23 12:35:48,160 INFO L273 TraceCheckUtils]: 72: Hoare triple {8704#false} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {8704#false} is VALID [2018-11-23 12:35:48,160 INFO L273 TraceCheckUtils]: 73: Hoare triple {8704#false} assume !(~i~0 < ~SIZE~0); {8704#false} is VALID [2018-11-23 12:35:48,160 INFO L256 TraceCheckUtils]: 74: Hoare triple {8704#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {8704#false} is VALID [2018-11-23 12:35:48,160 INFO L273 TraceCheckUtils]: 75: Hoare triple {8704#false} ~cond := #in~cond; {8704#false} is VALID [2018-11-23 12:35:48,160 INFO L273 TraceCheckUtils]: 76: Hoare triple {8704#false} assume 0 == ~cond; {8704#false} is VALID [2018-11-23 12:35:48,160 INFO L273 TraceCheckUtils]: 77: Hoare triple {8704#false} assume !false; {8704#false} is VALID [2018-11-23 12:35:48,163 INFO L134 CoverageAnalysis]: Checked inductivity of 86 backedges. 4 proven. 21 refuted. 0 times theorem prover too weak. 61 trivial. 0 not checked. [2018-11-23 12:35:48,164 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:35:48,164 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:35:48,174 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:35:48,208 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:35:48,208 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:35:48,224 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:35:48,226 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:35:48,403 INFO L256 TraceCheckUtils]: 0: Hoare triple {8703#true} call ULTIMATE.init(); {8703#true} is VALID [2018-11-23 12:35:48,403 INFO L273 TraceCheckUtils]: 1: Hoare triple {8703#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {8703#true} is VALID [2018-11-23 12:35:48,404 INFO L273 TraceCheckUtils]: 2: Hoare triple {8703#true} assume true; {8703#true} is VALID [2018-11-23 12:35:48,404 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {8703#true} {8703#true} #139#return; {8703#true} is VALID [2018-11-23 12:35:48,404 INFO L256 TraceCheckUtils]: 4: Hoare triple {8703#true} call #t~ret18 := main(); {8703#true} is VALID [2018-11-23 12:35:48,404 INFO L273 TraceCheckUtils]: 5: Hoare triple {8703#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {8703#true} is VALID [2018-11-23 12:35:48,405 INFO L273 TraceCheckUtils]: 6: Hoare triple {8703#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(2 * ~SIZE~0);~sum~0 := 0;~i~0 := 0; {8735#(<= 0 main_~i~0)} is VALID [2018-11-23 12:35:48,412 INFO L273 TraceCheckUtils]: 7: Hoare triple {8735#(<= 0 main_~i~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {8735#(<= 0 main_~i~0)} is VALID [2018-11-23 12:35:48,413 INFO L273 TraceCheckUtils]: 8: Hoare triple {8735#(<= 0 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {8706#(<= 1 main_~i~0)} is VALID [2018-11-23 12:35:48,413 INFO L273 TraceCheckUtils]: 9: Hoare triple {8706#(<= 1 main_~i~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {8706#(<= 1 main_~i~0)} is VALID [2018-11-23 12:35:48,414 INFO L273 TraceCheckUtils]: 10: Hoare triple {8706#(<= 1 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {8707#(<= 2 main_~i~0)} is VALID [2018-11-23 12:35:48,414 INFO L273 TraceCheckUtils]: 11: Hoare triple {8707#(<= 2 main_~i~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {8707#(<= 2 main_~i~0)} is VALID [2018-11-23 12:35:48,414 INFO L273 TraceCheckUtils]: 12: Hoare triple {8707#(<= 2 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {8708#(<= 3 main_~i~0)} is VALID [2018-11-23 12:35:48,415 INFO L273 TraceCheckUtils]: 13: Hoare triple {8708#(<= 3 main_~i~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,415 INFO L273 TraceCheckUtils]: 14: Hoare triple {8709#(<= 4 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,416 INFO L273 TraceCheckUtils]: 15: Hoare triple {8709#(<= 4 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,417 INFO L273 TraceCheckUtils]: 16: Hoare triple {8709#(<= 4 ~SIZE~0)} ~i~0 := 0; {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,417 INFO L273 TraceCheckUtils]: 17: Hoare triple {8709#(<= 4 ~SIZE~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,418 INFO L273 TraceCheckUtils]: 18: Hoare triple {8709#(<= 4 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,418 INFO L273 TraceCheckUtils]: 19: Hoare triple {8709#(<= 4 ~SIZE~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,419 INFO L273 TraceCheckUtils]: 20: Hoare triple {8709#(<= 4 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,419 INFO L273 TraceCheckUtils]: 21: Hoare triple {8709#(<= 4 ~SIZE~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,420 INFO L273 TraceCheckUtils]: 22: Hoare triple {8709#(<= 4 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,420 INFO L273 TraceCheckUtils]: 23: Hoare triple {8709#(<= 4 ~SIZE~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,421 INFO L273 TraceCheckUtils]: 24: Hoare triple {8709#(<= 4 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,421 INFO L273 TraceCheckUtils]: 25: Hoare triple {8709#(<= 4 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {8709#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:35:48,422 INFO L273 TraceCheckUtils]: 26: Hoare triple {8709#(<= 4 ~SIZE~0)} ~i~0 := 0; {8796#(and (<= main_~i~0 0) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:35:48,423 INFO L273 TraceCheckUtils]: 27: Hoare triple {8796#(and (<= main_~i~0 0) (<= 4 ~SIZE~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {8796#(and (<= main_~i~0 0) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:35:48,424 INFO L273 TraceCheckUtils]: 28: Hoare triple {8796#(and (<= main_~i~0 0) (<= 4 ~SIZE~0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {8803#(and (<= main_~i~0 1) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:35:48,424 INFO L273 TraceCheckUtils]: 29: Hoare triple {8803#(and (<= main_~i~0 1) (<= 4 ~SIZE~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {8803#(and (<= main_~i~0 1) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:35:48,425 INFO L273 TraceCheckUtils]: 30: Hoare triple {8803#(and (<= main_~i~0 1) (<= 4 ~SIZE~0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {8810#(and (<= main_~i~0 2) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:35:48,426 INFO L273 TraceCheckUtils]: 31: Hoare triple {8810#(and (<= main_~i~0 2) (<= 4 ~SIZE~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {8810#(and (<= main_~i~0 2) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:35:48,427 INFO L273 TraceCheckUtils]: 32: Hoare triple {8810#(and (<= main_~i~0 2) (<= 4 ~SIZE~0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {8817#(and (<= main_~i~0 3) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:35:48,428 INFO L273 TraceCheckUtils]: 33: Hoare triple {8817#(and (<= main_~i~0 3) (<= 4 ~SIZE~0))} assume !(~i~0 < ~SIZE~0); {8704#false} is VALID [2018-11-23 12:35:48,428 INFO L273 TraceCheckUtils]: 34: Hoare triple {8704#false} ~i~0 := 0; {8704#false} is VALID [2018-11-23 12:35:48,428 INFO L273 TraceCheckUtils]: 35: Hoare triple {8704#false} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {8704#false} is VALID [2018-11-23 12:35:48,428 INFO L273 TraceCheckUtils]: 36: Hoare triple {8704#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {8704#false} is VALID [2018-11-23 12:35:48,428 INFO L273 TraceCheckUtils]: 37: Hoare triple {8704#false} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {8704#false} is VALID [2018-11-23 12:35:48,429 INFO L273 TraceCheckUtils]: 38: Hoare triple {8704#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {8704#false} is VALID [2018-11-23 12:35:48,429 INFO L273 TraceCheckUtils]: 39: Hoare triple {8704#false} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {8704#false} is VALID [2018-11-23 12:35:48,429 INFO L273 TraceCheckUtils]: 40: Hoare triple {8704#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {8704#false} is VALID [2018-11-23 12:35:48,429 INFO L273 TraceCheckUtils]: 41: Hoare triple {8704#false} assume !(~i~0 < ~SIZE~0); {8704#false} is VALID [2018-11-23 12:35:48,430 INFO L273 TraceCheckUtils]: 42: Hoare triple {8704#false} ~i~0 := 0; {8704#false} is VALID [2018-11-23 12:35:48,430 INFO L273 TraceCheckUtils]: 43: Hoare triple {8704#false} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {8704#false} is VALID [2018-11-23 12:35:48,430 INFO L273 TraceCheckUtils]: 44: Hoare triple {8704#false} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {8704#false} is VALID [2018-11-23 12:35:48,430 INFO L273 TraceCheckUtils]: 45: Hoare triple {8704#false} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {8704#false} is VALID [2018-11-23 12:35:48,430 INFO L273 TraceCheckUtils]: 46: Hoare triple {8704#false} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {8704#false} is VALID [2018-11-23 12:35:48,431 INFO L273 TraceCheckUtils]: 47: Hoare triple {8704#false} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {8704#false} is VALID [2018-11-23 12:35:48,431 INFO L273 TraceCheckUtils]: 48: Hoare triple {8704#false} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {8704#false} is VALID [2018-11-23 12:35:48,431 INFO L273 TraceCheckUtils]: 49: Hoare triple {8704#false} assume !(~i~0 < ~SIZE~0); {8704#false} is VALID [2018-11-23 12:35:48,431 INFO L273 TraceCheckUtils]: 50: Hoare triple {8704#false} ~i~0 := 0; {8704#false} is VALID [2018-11-23 12:35:48,431 INFO L273 TraceCheckUtils]: 51: Hoare triple {8704#false} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {8704#false} is VALID [2018-11-23 12:35:48,432 INFO L273 TraceCheckUtils]: 52: Hoare triple {8704#false} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {8704#false} is VALID [2018-11-23 12:35:48,432 INFO L273 TraceCheckUtils]: 53: Hoare triple {8704#false} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {8704#false} is VALID [2018-11-23 12:35:48,432 INFO L273 TraceCheckUtils]: 54: Hoare triple {8704#false} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {8704#false} is VALID [2018-11-23 12:35:48,432 INFO L273 TraceCheckUtils]: 55: Hoare triple {8704#false} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {8704#false} is VALID [2018-11-23 12:35:48,432 INFO L273 TraceCheckUtils]: 56: Hoare triple {8704#false} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {8704#false} is VALID [2018-11-23 12:35:48,432 INFO L273 TraceCheckUtils]: 57: Hoare triple {8704#false} assume !(~i~0 < ~SIZE~0); {8704#false} is VALID [2018-11-23 12:35:48,433 INFO L273 TraceCheckUtils]: 58: Hoare triple {8704#false} ~i~0 := 0; {8704#false} is VALID [2018-11-23 12:35:48,433 INFO L273 TraceCheckUtils]: 59: Hoare triple {8704#false} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {8704#false} is VALID [2018-11-23 12:35:48,433 INFO L273 TraceCheckUtils]: 60: Hoare triple {8704#false} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {8704#false} is VALID [2018-11-23 12:35:48,433 INFO L273 TraceCheckUtils]: 61: Hoare triple {8704#false} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {8704#false} is VALID [2018-11-23 12:35:48,433 INFO L273 TraceCheckUtils]: 62: Hoare triple {8704#false} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {8704#false} is VALID [2018-11-23 12:35:48,433 INFO L273 TraceCheckUtils]: 63: Hoare triple {8704#false} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {8704#false} is VALID [2018-11-23 12:35:48,433 INFO L273 TraceCheckUtils]: 64: Hoare triple {8704#false} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {8704#false} is VALID [2018-11-23 12:35:48,433 INFO L273 TraceCheckUtils]: 65: Hoare triple {8704#false} assume !(~i~0 < ~SIZE~0); {8704#false} is VALID [2018-11-23 12:35:48,433 INFO L273 TraceCheckUtils]: 66: Hoare triple {8704#false} ~i~0 := 0; {8704#false} is VALID [2018-11-23 12:35:48,434 INFO L273 TraceCheckUtils]: 67: Hoare triple {8704#false} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {8704#false} is VALID [2018-11-23 12:35:48,434 INFO L273 TraceCheckUtils]: 68: Hoare triple {8704#false} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {8704#false} is VALID [2018-11-23 12:35:48,434 INFO L273 TraceCheckUtils]: 69: Hoare triple {8704#false} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {8704#false} is VALID [2018-11-23 12:35:48,434 INFO L273 TraceCheckUtils]: 70: Hoare triple {8704#false} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {8704#false} is VALID [2018-11-23 12:35:48,434 INFO L273 TraceCheckUtils]: 71: Hoare triple {8704#false} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {8704#false} is VALID [2018-11-23 12:35:48,434 INFO L273 TraceCheckUtils]: 72: Hoare triple {8704#false} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {8704#false} is VALID [2018-11-23 12:35:48,434 INFO L273 TraceCheckUtils]: 73: Hoare triple {8704#false} assume !(~i~0 < ~SIZE~0); {8704#false} is VALID [2018-11-23 12:35:48,434 INFO L256 TraceCheckUtils]: 74: Hoare triple {8704#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {8704#false} is VALID [2018-11-23 12:35:48,435 INFO L273 TraceCheckUtils]: 75: Hoare triple {8704#false} ~cond := #in~cond; {8704#false} is VALID [2018-11-23 12:35:48,435 INFO L273 TraceCheckUtils]: 76: Hoare triple {8704#false} assume 0 == ~cond; {8704#false} is VALID [2018-11-23 12:35:48,435 INFO L273 TraceCheckUtils]: 77: Hoare triple {8704#false} assume !false; {8704#false} is VALID [2018-11-23 12:35:48,438 INFO L134 CoverageAnalysis]: Checked inductivity of 86 backedges. 9 proven. 16 refuted. 0 times theorem prover too weak. 61 trivial. 0 not checked. [2018-11-23 12:35:48,457 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:35:48,457 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 16 [2018-11-23 12:35:48,458 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 78 [2018-11-23 12:35:48,458 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:35:48,458 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states. [2018-11-23 12:35:48,534 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:35:48,534 INFO L459 AbstractCegarLoop]: Interpolant automaton has 16 states [2018-11-23 12:35:48,535 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2018-11-23 12:35:48,535 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=68, Invalid=172, Unknown=0, NotChecked=0, Total=240 [2018-11-23 12:35:48,536 INFO L87 Difference]: Start difference. First operand 129 states and 141 transitions. Second operand 16 states. [2018-11-23 12:35:50,617 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:35:50,617 INFO L93 Difference]: Finished difference Result 143 states and 155 transitions. [2018-11-23 12:35:50,617 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2018-11-23 12:35:50,618 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 78 [2018-11-23 12:35:50,618 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:35:50,618 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-23 12:35:50,620 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 135 transitions. [2018-11-23 12:35:50,620 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-23 12:35:50,621 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 135 transitions. [2018-11-23 12:35:50,621 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 135 transitions. [2018-11-23 12:35:51,156 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 135 edges. 135 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:35:51,159 INFO L225 Difference]: With dead ends: 143 [2018-11-23 12:35:51,159 INFO L226 Difference]: Without dead ends: 98 [2018-11-23 12:35:51,160 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 98 GetRequests, 76 SyntacticMatches, 0 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 110 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=142, Invalid=410, Unknown=0, NotChecked=0, Total=552 [2018-11-23 12:35:51,160 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states. [2018-11-23 12:35:52,046 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 91. [2018-11-23 12:35:52,047 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:35:52,047 INFO L82 GeneralOperation]: Start isEquivalent. First operand 98 states. Second operand 91 states. [2018-11-23 12:35:52,047 INFO L74 IsIncluded]: Start isIncluded. First operand 98 states. Second operand 91 states. [2018-11-23 12:35:52,047 INFO L87 Difference]: Start difference. First operand 98 states. Second operand 91 states. [2018-11-23 12:35:52,049 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:35:52,049 INFO L93 Difference]: Finished difference Result 98 states and 105 transitions. [2018-11-23 12:35:52,050 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 105 transitions. [2018-11-23 12:35:52,050 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:35:52,050 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:35:52,050 INFO L74 IsIncluded]: Start isIncluded. First operand 91 states. Second operand 98 states. [2018-11-23 12:35:52,050 INFO L87 Difference]: Start difference. First operand 91 states. Second operand 98 states. [2018-11-23 12:35:52,052 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:35:52,052 INFO L93 Difference]: Finished difference Result 98 states and 105 transitions. [2018-11-23 12:35:52,052 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 105 transitions. [2018-11-23 12:35:52,052 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:35:52,053 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:35:52,053 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:35:52,053 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:35:52,053 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 91 states. [2018-11-23 12:35:52,055 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 91 states to 91 states and 98 transitions. [2018-11-23 12:35:52,055 INFO L78 Accepts]: Start accepts. Automaton has 91 states and 98 transitions. Word has length 78 [2018-11-23 12:35:52,055 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:35:52,055 INFO L480 AbstractCegarLoop]: Abstraction has 91 states and 98 transitions. [2018-11-23 12:35:52,055 INFO L481 AbstractCegarLoop]: Interpolant automaton has 16 states. [2018-11-23 12:35:52,055 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 98 transitions. [2018-11-23 12:35:52,056 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 91 [2018-11-23 12:35:52,056 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:35:52,056 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:35:52,057 INFO L423 AbstractCegarLoop]: === Iteration 13 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:35:52,057 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:35:52,057 INFO L82 PathProgramCache]: Analyzing trace with hash -485444675, now seen corresponding path program 9 times [2018-11-23 12:35:52,057 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:35:52,057 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:35:52,058 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:35:52,058 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:35:52,058 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:35:52,306 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:35:53,974 WARN L180 SmtUtils]: Spent 102.00 ms on a formula simplification. DAG size of input: 60 DAG size of output: 43 [2018-11-23 12:35:54,520 WARN L180 SmtUtils]: Spent 116.00 ms on a formula simplification. DAG size of input: 62 DAG size of output: 43 [2018-11-23 12:35:54,822 WARN L180 SmtUtils]: Spent 155.00 ms on a formula simplification. DAG size of input: 64 DAG size of output: 45 [2018-11-23 12:36:07,873 INFO L256 TraceCheckUtils]: 0: Hoare triple {9514#true} call ULTIMATE.init(); {9514#true} is VALID [2018-11-23 12:36:07,874 INFO L273 TraceCheckUtils]: 1: Hoare triple {9514#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {9514#true} is VALID [2018-11-23 12:36:07,874 INFO L273 TraceCheckUtils]: 2: Hoare triple {9514#true} assume true; {9514#true} is VALID [2018-11-23 12:36:07,874 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {9514#true} {9514#true} #139#return; {9514#true} is VALID [2018-11-23 12:36:07,874 INFO L256 TraceCheckUtils]: 4: Hoare triple {9514#true} call #t~ret18 := main(); {9514#true} is VALID [2018-11-23 12:36:07,875 INFO L273 TraceCheckUtils]: 5: Hoare triple {9514#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {9514#true} is VALID [2018-11-23 12:36:07,875 INFO L273 TraceCheckUtils]: 6: Hoare triple {9514#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(2 * ~SIZE~0);~sum~0 := 0;~i~0 := 0; {9516#(and (= main_~sum~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,877 INFO L273 TraceCheckUtils]: 7: Hoare triple {9516#(and (= main_~sum~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {9517#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,878 INFO L273 TraceCheckUtils]: 8: Hoare triple {9517#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9518#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 1) (and (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) 0)) (<= (select (select |#memory_int| |main_~#a~0.base|) 0) main_~sum~0)) (<= 3 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,879 INFO L273 TraceCheckUtils]: 9: Hoare triple {9518#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 1) (and (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) 0)) (<= (select (select |#memory_int| |main_~#a~0.base|) 0) main_~sum~0)) (<= 3 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {9519#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 1) (<= 3 (+ (* 2 main_~i~0) |main_~#a~0.offset|)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,881 INFO L273 TraceCheckUtils]: 10: Hoare triple {9519#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 1) (<= 3 (+ (* 2 main_~i~0) |main_~#a~0.offset|)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))))) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9520#(and (= |main_~#a~0.offset| 0) (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) 0)) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) 0)))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 3) (<= 5 (+ (* 2 main_~i~0) |main_~#a~0.offset|))))} is VALID [2018-11-23 12:36:07,882 INFO L273 TraceCheckUtils]: 11: Hoare triple {9520#(and (= |main_~#a~0.offset| 0) (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) 0)) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) 0)))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 3) (<= 5 (+ (* 2 main_~i~0) |main_~#a~0.offset|))))} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {9521#(and (or (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 3) (<= 5 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,884 INFO L273 TraceCheckUtils]: 12: Hoare triple {9521#(and (or (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 3) (<= 5 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9522#(or (< (+ main_~i~0 1) ~SIZE~0) (and (or (<= 7 (+ (* 2 main_~i~0) |main_~#a~0.offset|)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 5) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ main_~i~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2))))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ main_~i~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2)))))) main_~sum~0))) (= |main_~#a~0.offset| 0)))} is VALID [2018-11-23 12:36:07,886 INFO L273 TraceCheckUtils]: 13: Hoare triple {9522#(or (< (+ main_~i~0 1) ~SIZE~0) (and (or (<= 7 (+ (* 2 main_~i~0) |main_~#a~0.offset|)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 5) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ main_~i~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2))))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ main_~i~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2)))))) main_~sum~0))) (= |main_~#a~0.offset| 0)))} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {9523#(or (< (+ main_~i~0 1) ~SIZE~0) (and (<= (+ main_~i~0 1) ~SIZE~0) (or (<= 9 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 5) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) main_~sum~0))) (= |main_~#a~0.offset| 0)))} is VALID [2018-11-23 12:36:07,888 INFO L273 TraceCheckUtils]: 14: Hoare triple {9523#(or (< (+ main_~i~0 1) ~SIZE~0) (and (<= (+ main_~i~0 1) ~SIZE~0) (or (<= 9 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 5) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) main_~sum~0))) (= |main_~#a~0.offset| 0)))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9524#(or (and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= 9 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (<= (+ (* 2 ~SIZE~0) |main_~#a~0.offset|) 7)) (= |main_~#a~0.offset| 0)) (<= (+ main_~i~0 1) ~SIZE~0))} is VALID [2018-11-23 12:36:07,890 INFO L273 TraceCheckUtils]: 15: Hoare triple {9524#(or (and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= 9 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (<= (+ (* 2 ~SIZE~0) |main_~#a~0.offset|) 7)) (= |main_~#a~0.offset| 0)) (<= (+ main_~i~0 1) ~SIZE~0))} assume !(~i~0 < ~SIZE~0); {9525#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= 9 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (<= (+ (* 2 ~SIZE~0) |main_~#a~0.offset|) 7)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,891 INFO L273 TraceCheckUtils]: 16: Hoare triple {9525#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= 9 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (<= (+ (* 2 ~SIZE~0) |main_~#a~0.offset|) 7)) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {9526#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= 9 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (<= (+ (* 2 ~SIZE~0) |main_~#a~0.offset|) 7)) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,893 INFO L273 TraceCheckUtils]: 17: Hoare triple {9526#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= 9 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (<= (+ (* 2 ~SIZE~0) |main_~#a~0.offset|) 7)) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {9527#(and (or (<= 9 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (<= (+ (* 2 ~SIZE~0) |main_~#a~0.offset|) 7) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,895 INFO L273 TraceCheckUtils]: 18: Hoare triple {9527#(and (or (<= 9 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (<= (+ (* 2 ~SIZE~0) |main_~#a~0.offset|) 7) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {9528#(and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 2 ~SIZE~0) |main_~#a~0.offset|) (+ (* 2 main_~i~0) 5)) (<= (+ (* 2 main_~i~0) 7) (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= (* 2 main_~i~0) 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,896 INFO L273 TraceCheckUtils]: 19: Hoare triple {9528#(and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 2 ~SIZE~0) |main_~#a~0.offset|) (+ (* 2 main_~i~0) 5)) (<= (+ (* 2 main_~i~0) 7) (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= (* 2 main_~i~0) 2) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {9529#(and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 2 ~SIZE~0) |main_~#a~0.offset|) (+ (* 2 main_~i~0) 5)) (<= (+ (* 2 main_~i~0) 7) (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= (* 2 main_~i~0) 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,898 INFO L273 TraceCheckUtils]: 20: Hoare triple {9529#(and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 2 ~SIZE~0) |main_~#a~0.offset|) (+ (* 2 main_~i~0) 5)) (<= (+ (* 2 main_~i~0) 7) (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= (* 2 main_~i~0) 2) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {9530#(and (or (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ main_~i~0 3) ~SIZE~0) (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0))) (= (* 2 main_~i~0) 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,900 INFO L273 TraceCheckUtils]: 21: Hoare triple {9530#(and (or (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ main_~i~0 3) ~SIZE~0) (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0))) (= (* 2 main_~i~0) 4) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {9531#(and (or (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0)) (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ main_~i~0 3) ~SIZE~0)) (= (* 2 main_~i~0) 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,902 INFO L273 TraceCheckUtils]: 22: Hoare triple {9531#(and (or (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0)) (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ main_~i~0 3) ~SIZE~0)) (= (* 2 main_~i~0) 4) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {9532#(and (<= main_~i~0 3) (or (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0)) (<= (+ (* 2 main_~i~0) 3) (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (<= (+ (* 2 ~SIZE~0) |main_~#a~0.offset|) (+ (* 2 main_~i~0) 1))) (<= 3 main_~i~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,904 INFO L273 TraceCheckUtils]: 23: Hoare triple {9532#(and (<= main_~i~0 3) (or (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0)) (<= (+ (* 2 main_~i~0) 3) (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (<= (+ (* 2 ~SIZE~0) |main_~#a~0.offset|) (+ (* 2 main_~i~0) 1))) (<= 3 main_~i~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {9533#(and (<= main_~i~0 3) (<= 4 ~SIZE~0) (or (<= (+ main_~i~0 2) ~SIZE~0) (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,906 INFO L273 TraceCheckUtils]: 24: Hoare triple {9533#(and (<= main_~i~0 3) (<= 4 ~SIZE~0) (or (<= (+ main_~i~0 2) ~SIZE~0) (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {9534#(and (<= main_~i~0 4) (or (<= (+ main_~i~0 1) ~SIZE~0) (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,908 INFO L273 TraceCheckUtils]: 25: Hoare triple {9534#(and (<= main_~i~0 4) (or (<= (+ main_~i~0 1) ~SIZE~0) (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {9535#(and (<= ~SIZE~0 4) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,909 INFO L273 TraceCheckUtils]: 26: Hoare triple {9535#(and (<= ~SIZE~0 4) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {9535#(and (<= ~SIZE~0 4) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,912 INFO L273 TraceCheckUtils]: 27: Hoare triple {9535#(and (<= ~SIZE~0 4) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {9536#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= ~SIZE~0 4) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,913 INFO L273 TraceCheckUtils]: 28: Hoare triple {9536#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= ~SIZE~0 4) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {9537#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0)) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 5)) (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,915 INFO L273 TraceCheckUtils]: 29: Hoare triple {9537#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0)) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 5)) (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {9538#(and (<= ~SIZE~0 4) (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0)) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 5)) (and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,917 INFO L273 TraceCheckUtils]: 30: Hoare triple {9538#(and (<= ~SIZE~0 4) (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0)) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 5)) (and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {9539#(and (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (or (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))))) (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,919 INFO L273 TraceCheckUtils]: 31: Hoare triple {9539#(and (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (or (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))))) (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {9540#(and (or (and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0)) (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,921 INFO L273 TraceCheckUtils]: 32: Hoare triple {9540#(and (or (and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0)) (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {9541#(and (or (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))))) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,923 INFO L273 TraceCheckUtils]: 33: Hoare triple {9541#(and (or (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))))) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {9542#(and (or (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,926 INFO L273 TraceCheckUtils]: 34: Hoare triple {9542#(and (or (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {9543#(and (<= ~SIZE~0 4) (or (<= (+ main_~i~0 1) ~SIZE~0) (and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,927 INFO L273 TraceCheckUtils]: 35: Hoare triple {9543#(and (<= ~SIZE~0 4) (or (<= (+ main_~i~0 1) ~SIZE~0) (and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {9544#(and (<= ~SIZE~0 4) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,928 INFO L273 TraceCheckUtils]: 36: Hoare triple {9544#(and (<= ~SIZE~0 4) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {9545#(and (<= ~SIZE~0 4) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= 4 ~SIZE~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,930 INFO L273 TraceCheckUtils]: 37: Hoare triple {9545#(and (<= ~SIZE~0 4) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= 4 ~SIZE~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {9546#(and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= ~SIZE~0 4) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 4 ~SIZE~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,932 INFO L273 TraceCheckUtils]: 38: Hoare triple {9546#(and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= ~SIZE~0 4) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 4 ~SIZE~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {9547#(and (or (and (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (or (= (+ (* 2 main_~i~0) 6) (* 2 ~SIZE~0)) (<= (+ main_~i~0 4) ~SIZE~0)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,934 INFO L273 TraceCheckUtils]: 39: Hoare triple {9547#(and (or (and (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (or (= (+ (* 2 main_~i~0) 6) (* 2 ~SIZE~0)) (<= (+ main_~i~0 4) ~SIZE~0)) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {9548#(and (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0)) (and (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0))) (or (= (+ (* 2 main_~i~0) 6) (* 2 ~SIZE~0)) (<= (+ main_~i~0 4) ~SIZE~0)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,936 INFO L273 TraceCheckUtils]: 40: Hoare triple {9548#(and (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0)) (and (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0))) (or (= (+ (* 2 main_~i~0) 6) (* 2 ~SIZE~0)) (<= (+ main_~i~0 4) ~SIZE~0)) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {9549#(and (<= ~SIZE~0 4) (or (and (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) 4))) (<= (+ main_~i~0 3) ~SIZE~0)) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,938 INFO L273 TraceCheckUtils]: 41: Hoare triple {9549#(and (<= ~SIZE~0 4) (or (and (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) 4))) (<= (+ main_~i~0 3) ~SIZE~0)) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {9550#(and (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (or (and (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) 4))) (<= (+ main_~i~0 3) ~SIZE~0)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,940 INFO L273 TraceCheckUtils]: 42: Hoare triple {9550#(and (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (or (and (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) 4))) (<= (+ main_~i~0 3) ~SIZE~0)) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {9551#(and (or (<= (+ main_~i~0 2) ~SIZE~0) (and (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0))) (<= ~SIZE~0 4) (or (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ main_~i~0 2) ~SIZE~0)) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,942 INFO L273 TraceCheckUtils]: 43: Hoare triple {9551#(and (or (<= (+ main_~i~0 2) ~SIZE~0) (and (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0))) (<= ~SIZE~0 4) (or (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ main_~i~0 2) ~SIZE~0)) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem9;havoc #t~mem9; {9552#(and (<= ~SIZE~0 4) (or (<= (+ main_~i~0 2) ~SIZE~0) (and (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0))) (or (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ main_~i~0 2) ~SIZE~0)) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,944 INFO L273 TraceCheckUtils]: 44: Hoare triple {9552#(and (<= ~SIZE~0 4) (or (<= (+ main_~i~0 2) ~SIZE~0) (and (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0))) (or (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ main_~i~0 2) ~SIZE~0)) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {9553#(and (or (and (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0)) (<= (+ main_~i~0 1) ~SIZE~0)) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,945 INFO L273 TraceCheckUtils]: 45: Hoare triple {9553#(and (or (and (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0)) (<= (+ main_~i~0 1) ~SIZE~0)) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {9554#(and (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,946 INFO L273 TraceCheckUtils]: 46: Hoare triple {9554#(and (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {9554#(and (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,948 INFO L273 TraceCheckUtils]: 47: Hoare triple {9554#(and (<= main_~sum~0 (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {9555#(and (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,950 INFO L273 TraceCheckUtils]: 48: Hoare triple {9555#(and (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (<= (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (* 4 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (= |main_~#a~0.offset| 0))} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {9556#(and (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0)) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 5)) (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,952 INFO L273 TraceCheckUtils]: 49: Hoare triple {9556#(and (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0)) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 5)) (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {9557#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0))) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 5))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,954 INFO L273 TraceCheckUtils]: 50: Hoare triple {9557#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0))) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 5))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {9558#(and (or (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))))) (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ main_~i~0 3) ~SIZE~0)) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,956 INFO L273 TraceCheckUtils]: 51: Hoare triple {9558#(and (or (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))))) (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ main_~i~0 3) ~SIZE~0)) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {9559#(and (<= ~SIZE~0 4) (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 3)) (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,958 INFO L273 TraceCheckUtils]: 52: Hoare triple {9559#(and (<= ~SIZE~0 4) (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 3)) (and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {9560#(and (<= ~SIZE~0 4) (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,960 INFO L273 TraceCheckUtils]: 53: Hoare triple {9560#(and (<= ~SIZE~0 4) (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 4 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem11 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem11;havoc #t~mem11; {9542#(and (or (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,962 INFO L273 TraceCheckUtils]: 54: Hoare triple {9542#(and (or (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} #t~post10 := ~i~0;~i~0 := 1 + #t~post10;havoc #t~post10; {9543#(and (<= ~SIZE~0 4) (or (<= (+ main_~i~0 1) ~SIZE~0) (and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,964 INFO L273 TraceCheckUtils]: 55: Hoare triple {9543#(and (<= ~SIZE~0 4) (or (<= (+ main_~i~0 1) ~SIZE~0) (and (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {9544#(and (<= ~SIZE~0 4) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,965 INFO L273 TraceCheckUtils]: 56: Hoare triple {9544#(and (<= ~SIZE~0 4) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {9544#(and (<= ~SIZE~0 4) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,966 INFO L273 TraceCheckUtils]: 57: Hoare triple {9544#(and (<= ~SIZE~0 4) (<= main_~sum~0 (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {9561#(and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= ~SIZE~0 4) (<= (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,968 INFO L273 TraceCheckUtils]: 58: Hoare triple {9561#(and (<= (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= ~SIZE~0 4) (<= (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (* 3 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {9562#(and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0)) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 5))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,970 INFO L273 TraceCheckUtils]: 59: Hoare triple {9562#(and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0)) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 5))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {9563#(and (<= ~SIZE~0 4) (or (and (<= (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0)) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 5))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,972 INFO L273 TraceCheckUtils]: 60: Hoare triple {9563#(and (<= ~SIZE~0 4) (or (and (<= (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0)) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 5))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {9564#(and (<= ~SIZE~0 4) (or (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ main_~i~0 3) ~SIZE~0) (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,974 INFO L273 TraceCheckUtils]: 61: Hoare triple {9564#(and (<= ~SIZE~0 4) (or (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ main_~i~0 3) ~SIZE~0) (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {9565#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 3)) (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,976 INFO L273 TraceCheckUtils]: 62: Hoare triple {9565#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 3)) (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {9566#(and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))))) (<= ~SIZE~0 main_~i~0) (<= (+ main_~i~0 2) ~SIZE~0)) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,978 INFO L273 TraceCheckUtils]: 63: Hoare triple {9566#(and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))))) (<= ~SIZE~0 main_~i~0) (<= (+ main_~i~0 2) ~SIZE~0)) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem13 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem13;havoc #t~mem13; {9567#(and (<= ~SIZE~0 4) (or (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ main_~i~0 2) ~SIZE~0)) (<= 4 ~SIZE~0) (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))))) (<= (+ main_~i~0 2) ~SIZE~0)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,980 INFO L273 TraceCheckUtils]: 64: Hoare triple {9567#(and (<= ~SIZE~0 4) (or (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ main_~i~0 2) ~SIZE~0)) (<= 4 ~SIZE~0) (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 3 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))))) (<= (+ main_~i~0 2) ~SIZE~0)) (= |main_~#a~0.offset| 0))} #t~post12 := ~i~0;~i~0 := 1 + #t~post12;havoc #t~post12; {9568#(and (<= ~SIZE~0 4) (or (<= (+ main_~i~0 1) ~SIZE~0) (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,982 INFO L273 TraceCheckUtils]: 65: Hoare triple {9568#(and (<= ~SIZE~0 4) (or (<= (+ main_~i~0 1) ~SIZE~0) (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {9535#(and (<= ~SIZE~0 4) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,983 INFO L273 TraceCheckUtils]: 66: Hoare triple {9535#(and (<= ~SIZE~0 4) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {9535#(and (<= ~SIZE~0 4) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,985 INFO L273 TraceCheckUtils]: 67: Hoare triple {9535#(and (<= ~SIZE~0 4) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {9569#(and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,986 INFO L273 TraceCheckUtils]: 68: Hoare triple {9569#(and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (= |main_~#a~0.offset| 0))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {9570#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))))) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 5))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,988 INFO L273 TraceCheckUtils]: 69: Hoare triple {9570#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))))) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 5))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {9571#(and (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0) (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0)) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 5)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))))))} is VALID [2018-11-23 12:36:07,990 INFO L273 TraceCheckUtils]: 70: Hoare triple {9571#(and (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0) (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0)) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 5)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))))))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {9572#(and (<= ~SIZE~0 4) (or (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0)) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) main_~sum~0))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,992 INFO L273 TraceCheckUtils]: 71: Hoare triple {9572#(and (<= ~SIZE~0 4) (or (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0)) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) main_~sum~0))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {9573#(and (<= ~SIZE~0 4) (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,994 INFO L273 TraceCheckUtils]: 72: Hoare triple {9573#(and (<= ~SIZE~0 4) (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {9574#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= (+ main_~i~0 2) ~SIZE~0) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,996 INFO L273 TraceCheckUtils]: 73: Hoare triple {9574#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= (+ main_~i~0 2) ~SIZE~0) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem15 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem15;havoc #t~mem15; {9575#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ main_~i~0 2) ~SIZE~0)) (<= ~SIZE~0 4) (or (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ main_~i~0 2) ~SIZE~0)) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:07,998 INFO L273 TraceCheckUtils]: 74: Hoare triple {9575#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ main_~i~0 2) ~SIZE~0)) (<= ~SIZE~0 4) (or (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ main_~i~0 2) ~SIZE~0)) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} #t~post14 := ~i~0;~i~0 := 1 + #t~post14;havoc #t~post14; {9576#(and (<= ~SIZE~0 4) (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ main_~i~0 1) ~SIZE~0)) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:08,000 INFO L273 TraceCheckUtils]: 75: Hoare triple {9576#(and (<= ~SIZE~0 4) (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))))) (<= (+ main_~i~0 1) ~SIZE~0)) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {9577#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) main_~sum~0) (<= ~SIZE~0 4) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:08,001 INFO L273 TraceCheckUtils]: 76: Hoare triple {9577#(and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) main_~sum~0) (<= ~SIZE~0 4) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {9578#(and (or (<= 4 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1))) (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))))) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (or (<= ~SIZE~0 4) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:08,003 INFO L273 TraceCheckUtils]: 77: Hoare triple {9578#(and (or (<= 4 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1))) (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))))) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (or (<= ~SIZE~0 4) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0)) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {9579#(and (or (<= 4 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1))) (or (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) main_~sum~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (or (<= ~SIZE~0 4) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:36:08,005 INFO L273 TraceCheckUtils]: 78: Hoare triple {9579#(and (or (<= 4 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1))) (or (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3))))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 3)))))) main_~sum~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (or (<= ~SIZE~0 4) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0)) (= |main_~#a~0.offset| 0))} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {9580#(or (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0)) (<= (+ main_~i~0 4) ~SIZE~0) (<= ~SIZE~0 (+ main_~i~0 2)))} is VALID [2018-11-23 12:36:08,007 INFO L273 TraceCheckUtils]: 79: Hoare triple {9580#(or (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0)) (<= (+ main_~i~0 4) ~SIZE~0) (<= ~SIZE~0 (+ main_~i~0 2)))} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {9581#(or (<= (+ main_~i~0 4) ~SIZE~0) (<= ~SIZE~0 (+ main_~i~0 2)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0)))} is VALID [2018-11-23 12:36:08,008 INFO L273 TraceCheckUtils]: 80: Hoare triple {9581#(or (<= (+ main_~i~0 4) ~SIZE~0) (<= ~SIZE~0 (+ main_~i~0 2)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 2))) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0)))} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {9582#(or (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0)) (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ main_~i~0 3) ~SIZE~0))} is VALID [2018-11-23 12:36:08,010 INFO L273 TraceCheckUtils]: 81: Hoare triple {9582#(or (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0)) (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ main_~i~0 3) ~SIZE~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {9583#(or (and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) main_~sum~0) (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (= |main_~#a~0.offset| 0)) (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ main_~i~0 3) ~SIZE~0))} is VALID [2018-11-23 12:36:08,011 INFO L273 TraceCheckUtils]: 82: Hoare triple {9583#(or (and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) main_~sum~0) (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (= |main_~#a~0.offset| 0)) (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ main_~i~0 3) ~SIZE~0))} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {9584#(or (and (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (= |main_~#a~0.offset| 0)) (<= ~SIZE~0 main_~i~0) (<= (+ main_~i~0 2) ~SIZE~0))} is VALID [2018-11-23 12:36:08,012 INFO L273 TraceCheckUtils]: 83: Hoare triple {9584#(or (and (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (= |main_~#a~0.offset| 0)) (<= ~SIZE~0 main_~i~0) (<= (+ main_~i~0 2) ~SIZE~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem17 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem17;havoc #t~mem17; {9585#(or (<= (+ main_~i~0 2) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} is VALID [2018-11-23 12:36:08,013 INFO L273 TraceCheckUtils]: 84: Hoare triple {9585#(or (<= (+ main_~i~0 2) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} #t~post16 := ~i~0;~i~0 := 1 + #t~post16;havoc #t~post16; {9586#(or (<= (+ main_~i~0 1) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} is VALID [2018-11-23 12:36:08,014 INFO L273 TraceCheckUtils]: 85: Hoare triple {9586#(or (<= (+ main_~i~0 1) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} assume !(~i~0 < ~SIZE~0); {9587#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:36:08,015 INFO L256 TraceCheckUtils]: 86: Hoare triple {9587#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {9588#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:36:08,016 INFO L273 TraceCheckUtils]: 87: Hoare triple {9588#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {9589#(= __VERIFIER_assert_~cond 1)} is VALID [2018-11-23 12:36:08,016 INFO L273 TraceCheckUtils]: 88: Hoare triple {9589#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {9515#false} is VALID [2018-11-23 12:36:08,017 INFO L273 TraceCheckUtils]: 89: Hoare triple {9515#false} assume !false; {9515#false} is VALID [2018-11-23 12:36:08,099 INFO L134 CoverageAnalysis]: Checked inductivity of 128 backedges. 0 proven. 128 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:36:08,100 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:36:08,100 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:36:08,110 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:36:08,158 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 5 check-sat command(s) [2018-11-23 12:36:08,158 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:36:08,184 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:36:08,186 INFO L273 TraceCheckSpWp]: Computing forward predicates...