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_sum2_true-unreach-call.c -------------------------------------------------------------------------------- This is Ultimate 0.1.23-61f4311 [2018-11-23 12:29:27,623 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 12:29:27,625 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 12:29:27,637 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 12:29:27,637 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 12:29:27,638 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 12:29:27,640 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 12:29:27,642 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 12:29:27,643 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 12:29:27,644 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 12:29:27,646 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 12:29:27,647 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 12:29:27,647 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 12:29:27,648 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 12:29:27,652 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 12:29:27,653 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 12:29:27,655 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 12:29:27,658 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 12:29:27,661 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 12:29:27,670 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 12:29:27,675 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 12:29:27,676 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 12:29:27,679 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 12:29:27,679 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 12:29:27,679 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 12:29:27,680 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 12:29:27,684 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 12:29:27,687 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 12:29:27,688 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 12:29:27,690 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 12:29:27,691 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 12:29:27,692 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 12:29:27,692 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 12:29:27,693 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 12:29:27,694 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 12:29:27,697 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 12:29:27,698 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:29:27,713 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 12:29:27,713 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 12:29:27,714 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 12:29:27,714 INFO L133 SettingsManager]: * ... calls to implemented procedures=ONLY_FOR_CONCURRENT_PROGRAMS [2018-11-23 12:29:27,715 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 12:29:27,715 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 12:29:27,715 INFO L133 SettingsManager]: * Use SBE=true [2018-11-23 12:29:27,715 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 12:29:27,716 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 12:29:27,716 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-23 12:29:27,716 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 12:29:27,716 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 12:29:27,716 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 12:29:27,717 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 12:29:27,717 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 12:29:27,717 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 12:29:27,717 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 12:29:27,717 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 12:29:27,717 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 12:29:27,718 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 12:29:27,718 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-23 12:29:27,718 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 12:29:27,718 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-23 12:29:27,718 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 12:29:27,719 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 12:29:27,719 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 12:29:27,719 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 12:29:27,719 INFO L133 SettingsManager]: * Trace refinement strategy=CAMEL [2018-11-23 12:29:27,719 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 12:29:27,720 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-11-23 12:29:27,720 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2018-11-23 12:29:27,776 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 12:29:27,791 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 12:29:27,796 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 12:29:27,798 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 12:29:27,798 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 12:29:27,799 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/array-crafted/zero_sum2_true-unreach-call.c [2018-11-23 12:29:27,868 INFO L221 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b29c8332a/15e3247a95ca4be88f85c34afd94b0a9/FLAG9f78d6baa [2018-11-23 12:29:28,389 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 12:29:28,390 INFO L161 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/array-crafted/zero_sum2_true-unreach-call.c [2018-11-23 12:29:28,396 INFO L355 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b29c8332a/15e3247a95ca4be88f85c34afd94b0a9/FLAG9f78d6baa [2018-11-23 12:29:28,742 INFO L363 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b29c8332a/15e3247a95ca4be88f85c34afd94b0a9 [2018-11-23 12:29:28,752 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 12:29:28,754 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 12:29:28,755 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 12:29:28,755 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 12:29:28,759 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 12:29:28,761 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 12:29:28" (1/1) ... [2018-11-23 12:29:28,764 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@64cbf194 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:29:28, skipping insertion in model container [2018-11-23 12:29:28,764 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 12:29:28" (1/1) ... [2018-11-23 12:29:28,775 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 12:29:28,797 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 12:29:29,048 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 12:29:29,055 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 12:29:29,087 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 12:29:29,111 INFO L195 MainTranslator]: Completed translation [2018-11-23 12:29:29,111 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:29:29 WrapperNode [2018-11-23 12:29:29,112 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 12:29:29,113 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 12:29:29,113 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 12:29:29,113 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 12:29:29,123 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:29:29" (1/1) ... [2018-11-23 12:29:29,133 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:29:29" (1/1) ... [2018-11-23 12:29:29,142 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 12:29:29,142 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 12:29:29,143 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 12:29:29,143 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 12:29:29,154 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:29:29" (1/1) ... [2018-11-23 12:29:29,154 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:29:29" (1/1) ... [2018-11-23 12:29:29,157 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:29:29" (1/1) ... [2018-11-23 12:29:29,157 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:29:29" (1/1) ... [2018-11-23 12:29:29,168 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:29:29" (1/1) ... [2018-11-23 12:29:29,177 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:29:29" (1/1) ... [2018-11-23 12:29:29,179 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:29:29" (1/1) ... [2018-11-23 12:29:29,181 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 12:29:29,182 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 12:29:29,182 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 12:29:29,182 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 12:29:29,183 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:29:29" (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:29:29,322 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-23 12:29:29,322 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-23 12:29:29,322 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 12:29:29,322 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 12:29:29,322 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 12:29:29,323 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-23 12:29:29,323 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-23 12:29:29,323 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-23 12:29:29,323 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2018-11-23 12:29:29,323 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2018-11-23 12:29:29,323 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 12:29:29,977 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 12:29:29,977 INFO L280 CfgBuilder]: Removed 4 assue(true) statements. [2018-11-23 12:29:29,978 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 12:29:29 BoogieIcfgContainer [2018-11-23 12:29:29,978 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 12:29:29,979 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-23 12:29:29,979 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-23 12:29:29,983 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-23 12:29:29,983 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 12:29:28" (1/3) ... [2018-11-23 12:29:29,984 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1b99efe6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 12:29:29, skipping insertion in model container [2018-11-23 12:29:29,985 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:29:29" (2/3) ... [2018-11-23 12:29:29,985 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1b99efe6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 12:29:29, skipping insertion in model container [2018-11-23 12:29:29,985 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 12:29:29" (3/3) ... [2018-11-23 12:29:29,987 INFO L112 eAbstractionObserver]: Analyzing ICFG zero_sum2_true-unreach-call.c [2018-11-23 12:29:29,996 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-23 12:29:30,005 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-23 12:29:30,021 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-23 12:29:30,056 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-23 12:29:30,057 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-23 12:29:30,057 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-23 12:29:30,058 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-23 12:29:30,058 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-23 12:29:30,058 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-23 12:29:30,058 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-23 12:29:30,058 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-23 12:29:30,058 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-23 12:29:30,078 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states. [2018-11-23 12:29:30,085 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2018-11-23 12:29:30,085 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:29:30,087 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:29:30,089 INFO L423 AbstractCegarLoop]: === Iteration 1 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:29:30,097 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:29:30,097 INFO L82 PathProgramCache]: Analyzing trace with hash -73003857, now seen corresponding path program 1 times [2018-11-23 12:29:30,099 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:29:30,099 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:29:30,149 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:29:30,149 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:29:30,149 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:29:30,198 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:29:30,267 INFO L256 TraceCheckUtils]: 0: Hoare triple {34#true} call ULTIMATE.init(); {34#true} is VALID [2018-11-23 12:29:30,271 INFO L273 TraceCheckUtils]: 1: Hoare triple {34#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {34#true} is VALID [2018-11-23 12:29:30,272 INFO L273 TraceCheckUtils]: 2: Hoare triple {34#true} assume true; {34#true} is VALID [2018-11-23 12:29:30,273 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {34#true} {34#true} #83#return; {34#true} is VALID [2018-11-23 12:29:30,273 INFO L256 TraceCheckUtils]: 4: Hoare triple {34#true} call #t~ret10 := main(); {34#true} is VALID [2018-11-23 12:29:30,274 INFO L273 TraceCheckUtils]: 5: Hoare triple {34#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {34#true} is VALID [2018-11-23 12:29:30,274 INFO L273 TraceCheckUtils]: 6: Hoare triple {34#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; {34#true} is VALID [2018-11-23 12:29:30,276 INFO L273 TraceCheckUtils]: 7: Hoare triple {34#true} assume !true; {35#false} is VALID [2018-11-23 12:29:30,276 INFO L273 TraceCheckUtils]: 8: Hoare triple {35#false} ~i~0 := 0; {35#false} is VALID [2018-11-23 12:29:30,276 INFO L273 TraceCheckUtils]: 9: Hoare triple {35#false} assume !true; {35#false} is VALID [2018-11-23 12:29:30,277 INFO L273 TraceCheckUtils]: 10: Hoare triple {35#false} ~i~0 := 0; {35#false} is VALID [2018-11-23 12:29:30,277 INFO L273 TraceCheckUtils]: 11: Hoare triple {35#false} assume !true; {35#false} is VALID [2018-11-23 12:29:30,278 INFO L273 TraceCheckUtils]: 12: Hoare triple {35#false} ~i~0 := 0; {35#false} is VALID [2018-11-23 12:29:30,278 INFO L273 TraceCheckUtils]: 13: Hoare triple {35#false} assume !(~i~0 < ~SIZE~0); {35#false} is VALID [2018-11-23 12:29:30,278 INFO L256 TraceCheckUtils]: 14: Hoare triple {35#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {35#false} is VALID [2018-11-23 12:29:30,279 INFO L273 TraceCheckUtils]: 15: Hoare triple {35#false} ~cond := #in~cond; {35#false} is VALID [2018-11-23 12:29:30,279 INFO L273 TraceCheckUtils]: 16: Hoare triple {35#false} assume 0 == ~cond; {35#false} is VALID [2018-11-23 12:29:30,279 INFO L273 TraceCheckUtils]: 17: Hoare triple {35#false} assume !false; {35#false} is VALID [2018-11-23 12:29:30,283 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:29:30,285 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 12:29:30,286 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-23 12:29:30,291 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 18 [2018-11-23 12:29:30,295 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:29:30,298 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states. [2018-11-23 12:29:30,474 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:29:30,475 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-23 12:29:30,485 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-23 12:29:30,486 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 12:29:30,490 INFO L87 Difference]: Start difference. First operand 31 states. Second operand 2 states. [2018-11-23 12:29:30,752 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:29:30,753 INFO L93 Difference]: Finished difference Result 53 states and 69 transitions. [2018-11-23 12:29:30,753 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-23 12:29:30,753 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 18 [2018-11-23 12:29:30,754 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:29:30,755 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-23 12:29:30,767 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 69 transitions. [2018-11-23 12:29:30,767 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-23 12:29:30,773 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 69 transitions. [2018-11-23 12:29:30,773 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 69 transitions. [2018-11-23 12:29:31,029 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:29:31,040 INFO L225 Difference]: With dead ends: 53 [2018-11-23 12:29:31,040 INFO L226 Difference]: Without dead ends: 23 [2018-11-23 12:29:31,044 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:29:31,060 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 23 states. [2018-11-23 12:29:31,109 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 23 to 23. [2018-11-23 12:29:31,109 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:29:31,110 INFO L82 GeneralOperation]: Start isEquivalent. First operand 23 states. Second operand 23 states. [2018-11-23 12:29:31,111 INFO L74 IsIncluded]: Start isIncluded. First operand 23 states. Second operand 23 states. [2018-11-23 12:29:31,111 INFO L87 Difference]: Start difference. First operand 23 states. Second operand 23 states. [2018-11-23 12:29:31,115 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:29:31,115 INFO L93 Difference]: Finished difference Result 23 states and 26 transitions. [2018-11-23 12:29:31,116 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 26 transitions. [2018-11-23 12:29:31,116 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:29:31,116 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:29:31,117 INFO L74 IsIncluded]: Start isIncluded. First operand 23 states. Second operand 23 states. [2018-11-23 12:29:31,119 INFO L87 Difference]: Start difference. First operand 23 states. Second operand 23 states. [2018-11-23 12:29:31,123 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:29:31,127 INFO L93 Difference]: Finished difference Result 23 states and 26 transitions. [2018-11-23 12:29:31,127 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 26 transitions. [2018-11-23 12:29:31,128 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:29:31,128 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:29:31,128 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:29:31,128 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:29:31,129 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 23 states. [2018-11-23 12:29:31,131 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 26 transitions. [2018-11-23 12:29:31,137 INFO L78 Accepts]: Start accepts. Automaton has 23 states and 26 transitions. Word has length 18 [2018-11-23 12:29:31,137 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:29:31,137 INFO L480 AbstractCegarLoop]: Abstraction has 23 states and 26 transitions. [2018-11-23 12:29:31,138 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-23 12:29:31,138 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 26 transitions. [2018-11-23 12:29:31,140 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2018-11-23 12:29:31,141 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:29:31,141 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:29:31,141 INFO L423 AbstractCegarLoop]: === Iteration 2 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:29:31,142 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:29:31,143 INFO L82 PathProgramCache]: Analyzing trace with hash -951460195, now seen corresponding path program 1 times [2018-11-23 12:29:31,143 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:29:31,143 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:29:31,144 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:29:31,144 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:29:31,145 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:29:31,165 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:29:31,327 INFO L256 TraceCheckUtils]: 0: Hoare triple {185#true} call ULTIMATE.init(); {185#true} is VALID [2018-11-23 12:29:31,327 INFO L273 TraceCheckUtils]: 1: Hoare triple {185#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {185#true} is VALID [2018-11-23 12:29:31,328 INFO L273 TraceCheckUtils]: 2: Hoare triple {185#true} assume true; {185#true} is VALID [2018-11-23 12:29:31,329 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {185#true} {185#true} #83#return; {185#true} is VALID [2018-11-23 12:29:31,329 INFO L256 TraceCheckUtils]: 4: Hoare triple {185#true} call #t~ret10 := main(); {185#true} is VALID [2018-11-23 12:29:31,330 INFO L273 TraceCheckUtils]: 5: Hoare triple {185#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {185#true} is VALID [2018-11-23 12:29:31,341 INFO L273 TraceCheckUtils]: 6: Hoare triple {185#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; {187#(= main_~sum~0 0)} is VALID [2018-11-23 12:29:31,346 INFO L273 TraceCheckUtils]: 7: Hoare triple {187#(= main_~sum~0 0)} assume !(~i~0 < ~SIZE~0); {187#(= main_~sum~0 0)} is VALID [2018-11-23 12:29:31,349 INFO L273 TraceCheckUtils]: 8: Hoare triple {187#(= main_~sum~0 0)} ~i~0 := 0; {187#(= main_~sum~0 0)} is VALID [2018-11-23 12:29:31,352 INFO L273 TraceCheckUtils]: 9: Hoare triple {187#(= main_~sum~0 0)} assume !(~i~0 < ~SIZE~0); {187#(= main_~sum~0 0)} is VALID [2018-11-23 12:29:31,354 INFO L273 TraceCheckUtils]: 10: Hoare triple {187#(= main_~sum~0 0)} ~i~0 := 0; {187#(= main_~sum~0 0)} is VALID [2018-11-23 12:29:31,356 INFO L273 TraceCheckUtils]: 11: Hoare triple {187#(= main_~sum~0 0)} assume !(~i~0 < ~SIZE~0); {187#(= main_~sum~0 0)} is VALID [2018-11-23 12:29:31,358 INFO L273 TraceCheckUtils]: 12: Hoare triple {187#(= main_~sum~0 0)} ~i~0 := 0; {187#(= main_~sum~0 0)} is VALID [2018-11-23 12:29:31,359 INFO L273 TraceCheckUtils]: 13: Hoare triple {187#(= main_~sum~0 0)} assume !(~i~0 < ~SIZE~0); {187#(= main_~sum~0 0)} is VALID [2018-11-23 12:29:31,360 INFO L256 TraceCheckUtils]: 14: Hoare triple {187#(= main_~sum~0 0)} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {188#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:29:31,360 INFO L273 TraceCheckUtils]: 15: Hoare triple {188#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {189#(= __VERIFIER_assert_~cond 1)} is VALID [2018-11-23 12:29:31,361 INFO L273 TraceCheckUtils]: 16: Hoare triple {189#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {186#false} is VALID [2018-11-23 12:29:31,362 INFO L273 TraceCheckUtils]: 17: Hoare triple {186#false} assume !false; {186#false} is VALID [2018-11-23 12:29:31,364 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:29:31,365 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 12:29:31,365 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2018-11-23 12:29:31,367 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 18 [2018-11-23 12:29:31,367 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:29:31,368 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2018-11-23 12:29:31,420 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:29:31,420 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2018-11-23 12:29:31,420 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-23 12:29:31,421 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2018-11-23 12:29:31,421 INFO L87 Difference]: Start difference. First operand 23 states and 26 transitions. Second operand 5 states. [2018-11-23 12:29:32,058 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:29:32,059 INFO L93 Difference]: Finished difference Result 35 states and 41 transitions. [2018-11-23 12:29:32,059 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-23 12:29:32,059 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 18 [2018-11-23 12:29:32,060 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:29:32,060 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 12:29:32,063 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 41 transitions. [2018-11-23 12:29:32,063 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 12:29:32,065 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 41 transitions. [2018-11-23 12:29:32,065 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 41 transitions. [2018-11-23 12:29:32,150 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:29:32,153 INFO L225 Difference]: With dead ends: 35 [2018-11-23 12:29:32,153 INFO L226 Difference]: Without dead ends: 30 [2018-11-23 12:29:32,155 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2018-11-23 12:29:32,155 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 30 states. [2018-11-23 12:29:32,205 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 30 to 30. [2018-11-23 12:29:32,205 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:29:32,206 INFO L82 GeneralOperation]: Start isEquivalent. First operand 30 states. Second operand 30 states. [2018-11-23 12:29:32,206 INFO L74 IsIncluded]: Start isIncluded. First operand 30 states. Second operand 30 states. [2018-11-23 12:29:32,206 INFO L87 Difference]: Start difference. First operand 30 states. Second operand 30 states. [2018-11-23 12:29:32,208 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:29:32,208 INFO L93 Difference]: Finished difference Result 30 states and 36 transitions. [2018-11-23 12:29:32,209 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 36 transitions. [2018-11-23 12:29:32,210 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:29:32,210 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:29:32,210 INFO L74 IsIncluded]: Start isIncluded. First operand 30 states. Second operand 30 states. [2018-11-23 12:29:32,210 INFO L87 Difference]: Start difference. First operand 30 states. Second operand 30 states. [2018-11-23 12:29:32,213 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:29:32,213 INFO L93 Difference]: Finished difference Result 30 states and 36 transitions. [2018-11-23 12:29:32,213 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 36 transitions. [2018-11-23 12:29:32,214 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:29:32,214 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:29:32,214 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:29:32,214 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:29:32,215 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 30 states. [2018-11-23 12:29:32,217 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 36 transitions. [2018-11-23 12:29:32,217 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 36 transitions. Word has length 18 [2018-11-23 12:29:32,218 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:29:32,218 INFO L480 AbstractCegarLoop]: Abstraction has 30 states and 36 transitions. [2018-11-23 12:29:32,218 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2018-11-23 12:29:32,218 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 36 transitions. [2018-11-23 12:29:32,219 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2018-11-23 12:29:32,219 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:29:32,219 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] [2018-11-23 12:29:32,220 INFO L423 AbstractCegarLoop]: === Iteration 3 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:29:32,220 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:29:32,220 INFO L82 PathProgramCache]: Analyzing trace with hash 1831075035, now seen corresponding path program 1 times [2018-11-23 12:29:32,220 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:29:32,221 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:29:32,222 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:29:32,222 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:29:32,222 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:29:32,244 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:29:32,348 INFO L256 TraceCheckUtils]: 0: Hoare triple {349#true} call ULTIMATE.init(); {349#true} is VALID [2018-11-23 12:29:32,348 INFO L273 TraceCheckUtils]: 1: Hoare triple {349#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {349#true} is VALID [2018-11-23 12:29:32,348 INFO L273 TraceCheckUtils]: 2: Hoare triple {349#true} assume true; {349#true} is VALID [2018-11-23 12:29:32,349 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {349#true} {349#true} #83#return; {349#true} is VALID [2018-11-23 12:29:32,349 INFO L256 TraceCheckUtils]: 4: Hoare triple {349#true} call #t~ret10 := main(); {349#true} is VALID [2018-11-23 12:29:32,349 INFO L273 TraceCheckUtils]: 5: Hoare triple {349#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {349#true} is VALID [2018-11-23 12:29:32,359 INFO L273 TraceCheckUtils]: 6: Hoare triple {349#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; {351#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:29:32,360 INFO L273 TraceCheckUtils]: 7: Hoare triple {351#(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; {351#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:29:32,361 INFO L273 TraceCheckUtils]: 8: Hoare triple {351#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {352#(<= (+ main_~i~0 1) ~SIZE~0)} is VALID [2018-11-23 12:29:32,362 INFO L273 TraceCheckUtils]: 9: Hoare triple {352#(<= (+ main_~i~0 1) ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {350#false} is VALID [2018-11-23 12:29:32,362 INFO L273 TraceCheckUtils]: 10: Hoare triple {350#false} ~i~0 := 0; {350#false} is VALID [2018-11-23 12:29:32,363 INFO L273 TraceCheckUtils]: 11: Hoare triple {350#false} assume !(~i~0 < ~SIZE~0); {350#false} is VALID [2018-11-23 12:29:32,363 INFO L273 TraceCheckUtils]: 12: Hoare triple {350#false} ~i~0 := 0; {350#false} is VALID [2018-11-23 12:29:32,363 INFO L273 TraceCheckUtils]: 13: Hoare triple {350#false} assume !(~i~0 < ~SIZE~0); {350#false} is VALID [2018-11-23 12:29:32,363 INFO L273 TraceCheckUtils]: 14: Hoare triple {350#false} ~i~0 := 0; {350#false} is VALID [2018-11-23 12:29:32,364 INFO L273 TraceCheckUtils]: 15: Hoare triple {350#false} assume !(~i~0 < ~SIZE~0); {350#false} is VALID [2018-11-23 12:29:32,364 INFO L256 TraceCheckUtils]: 16: Hoare triple {350#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {350#false} is VALID [2018-11-23 12:29:32,364 INFO L273 TraceCheckUtils]: 17: Hoare triple {350#false} ~cond := #in~cond; {350#false} is VALID [2018-11-23 12:29:32,365 INFO L273 TraceCheckUtils]: 18: Hoare triple {350#false} assume 0 == ~cond; {350#false} is VALID [2018-11-23 12:29:32,365 INFO L273 TraceCheckUtils]: 19: Hoare triple {350#false} assume !false; {350#false} is VALID [2018-11-23 12:29:32,367 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:29:32,368 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:29:32,368 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:29:32,379 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:29:32,401 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:29:32,418 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:29:32,422 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:29:32,640 INFO L256 TraceCheckUtils]: 0: Hoare triple {349#true} call ULTIMATE.init(); {349#true} is VALID [2018-11-23 12:29:32,641 INFO L273 TraceCheckUtils]: 1: Hoare triple {349#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {349#true} is VALID [2018-11-23 12:29:32,641 INFO L273 TraceCheckUtils]: 2: Hoare triple {349#true} assume true; {349#true} is VALID [2018-11-23 12:29:32,641 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {349#true} {349#true} #83#return; {349#true} is VALID [2018-11-23 12:29:32,641 INFO L256 TraceCheckUtils]: 4: Hoare triple {349#true} call #t~ret10 := main(); {349#true} is VALID [2018-11-23 12:29:32,642 INFO L273 TraceCheckUtils]: 5: Hoare triple {349#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {349#true} is VALID [2018-11-23 12:29:32,653 INFO L273 TraceCheckUtils]: 6: Hoare triple {349#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; {374#(and (< 1 ~SIZE~0) (<= main_~i~0 0))} is VALID [2018-11-23 12:29:32,662 INFO L273 TraceCheckUtils]: 7: Hoare triple {374#(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; {374#(and (< 1 ~SIZE~0) (<= main_~i~0 0))} is VALID [2018-11-23 12:29:32,663 INFO L273 TraceCheckUtils]: 8: Hoare triple {374#(and (< 1 ~SIZE~0) (<= main_~i~0 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {381#(and (< 1 ~SIZE~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:29:32,664 INFO L273 TraceCheckUtils]: 9: Hoare triple {381#(and (< 1 ~SIZE~0) (<= main_~i~0 1))} assume !(~i~0 < ~SIZE~0); {350#false} is VALID [2018-11-23 12:29:32,665 INFO L273 TraceCheckUtils]: 10: Hoare triple {350#false} ~i~0 := 0; {350#false} is VALID [2018-11-23 12:29:32,665 INFO L273 TraceCheckUtils]: 11: Hoare triple {350#false} assume !(~i~0 < ~SIZE~0); {350#false} is VALID [2018-11-23 12:29:32,665 INFO L273 TraceCheckUtils]: 12: Hoare triple {350#false} ~i~0 := 0; {350#false} is VALID [2018-11-23 12:29:32,665 INFO L273 TraceCheckUtils]: 13: Hoare triple {350#false} assume !(~i~0 < ~SIZE~0); {350#false} is VALID [2018-11-23 12:29:32,666 INFO L273 TraceCheckUtils]: 14: Hoare triple {350#false} ~i~0 := 0; {350#false} is VALID [2018-11-23 12:29:32,666 INFO L273 TraceCheckUtils]: 15: Hoare triple {350#false} assume !(~i~0 < ~SIZE~0); {350#false} is VALID [2018-11-23 12:29:32,666 INFO L256 TraceCheckUtils]: 16: Hoare triple {350#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {350#false} is VALID [2018-11-23 12:29:32,666 INFO L273 TraceCheckUtils]: 17: Hoare triple {350#false} ~cond := #in~cond; {350#false} is VALID [2018-11-23 12:29:32,667 INFO L273 TraceCheckUtils]: 18: Hoare triple {350#false} assume 0 == ~cond; {350#false} is VALID [2018-11-23 12:29:32,667 INFO L273 TraceCheckUtils]: 19: Hoare triple {350#false} assume !false; {350#false} is VALID [2018-11-23 12:29:32,668 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:29:32,689 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:29:32,689 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4] total 6 [2018-11-23 12:29:32,690 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 20 [2018-11-23 12:29:32,691 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:29:32,691 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2018-11-23 12:29:32,782 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:29:32,782 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2018-11-23 12:29:32,783 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2018-11-23 12:29:32,783 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2018-11-23 12:29:32,783 INFO L87 Difference]: Start difference. First operand 30 states and 36 transitions. Second operand 6 states. [2018-11-23 12:29:33,235 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:29:33,236 INFO L93 Difference]: Finished difference Result 47 states and 56 transitions. [2018-11-23 12:29:33,236 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-23 12:29:33,236 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 20 [2018-11-23 12:29:33,236 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:29:33,237 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 12:29:33,239 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 48 transitions. [2018-11-23 12:29:33,239 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 12:29:33,241 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 48 transitions. [2018-11-23 12:29:33,241 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 48 transitions. [2018-11-23 12:29:33,331 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:29:33,333 INFO L225 Difference]: With dead ends: 47 [2018-11-23 12:29:33,334 INFO L226 Difference]: Without dead ends: 27 [2018-11-23 12:29:33,335 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 23 GetRequests, 19 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2018-11-23 12:29:33,335 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2018-11-23 12:29:33,355 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 26. [2018-11-23 12:29:33,355 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:29:33,356 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand 26 states. [2018-11-23 12:29:33,356 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand 26 states. [2018-11-23 12:29:33,356 INFO L87 Difference]: Start difference. First operand 27 states. Second operand 26 states. [2018-11-23 12:29:33,361 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:29:33,361 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2018-11-23 12:29:33,362 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2018-11-23 12:29:33,362 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:29:33,362 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:29:33,362 INFO L74 IsIncluded]: Start isIncluded. First operand 26 states. Second operand 27 states. [2018-11-23 12:29:33,363 INFO L87 Difference]: Start difference. First operand 26 states. Second operand 27 states. [2018-11-23 12:29:33,365 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:29:33,365 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2018-11-23 12:29:33,365 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2018-11-23 12:29:33,366 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:29:33,366 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:29:33,366 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:29:33,366 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:29:33,367 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 26 states. [2018-11-23 12:29:33,368 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 29 transitions. [2018-11-23 12:29:33,368 INFO L78 Accepts]: Start accepts. Automaton has 26 states and 29 transitions. Word has length 20 [2018-11-23 12:29:33,369 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:29:33,369 INFO L480 AbstractCegarLoop]: Abstraction has 26 states and 29 transitions. [2018-11-23 12:29:33,369 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2018-11-23 12:29:33,369 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 29 transitions. [2018-11-23 12:29:33,370 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2018-11-23 12:29:33,370 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:29:33,370 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] [2018-11-23 12:29:33,371 INFO L423 AbstractCegarLoop]: === Iteration 4 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:29:33,371 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:29:33,371 INFO L82 PathProgramCache]: Analyzing trace with hash 82805657, now seen corresponding path program 2 times [2018-11-23 12:29:33,371 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:29:33,371 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:29:33,372 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:29:33,373 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:29:33,373 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:29:33,389 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:29:33,474 INFO L256 TraceCheckUtils]: 0: Hoare triple {573#true} call ULTIMATE.init(); {573#true} is VALID [2018-11-23 12:29:33,474 INFO L273 TraceCheckUtils]: 1: Hoare triple {573#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {573#true} is VALID [2018-11-23 12:29:33,475 INFO L273 TraceCheckUtils]: 2: Hoare triple {573#true} assume true; {573#true} is VALID [2018-11-23 12:29:33,475 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {573#true} {573#true} #83#return; {573#true} is VALID [2018-11-23 12:29:33,475 INFO L256 TraceCheckUtils]: 4: Hoare triple {573#true} call #t~ret10 := main(); {573#true} is VALID [2018-11-23 12:29:33,476 INFO L273 TraceCheckUtils]: 5: Hoare triple {573#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {573#true} is VALID [2018-11-23 12:29:33,477 INFO L273 TraceCheckUtils]: 6: Hoare triple {573#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; {575#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:29:33,477 INFO L273 TraceCheckUtils]: 7: Hoare triple {575#(<= 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; {575#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:29:33,478 INFO L273 TraceCheckUtils]: 8: Hoare triple {575#(<= 2 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {575#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:29:33,478 INFO L273 TraceCheckUtils]: 9: Hoare triple {575#(<= 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; {575#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:29:33,479 INFO L273 TraceCheckUtils]: 10: Hoare triple {575#(<= 2 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {575#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:29:33,480 INFO L273 TraceCheckUtils]: 11: Hoare triple {575#(<= 2 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {575#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:29:33,481 INFO L273 TraceCheckUtils]: 12: Hoare triple {575#(<= 2 ~SIZE~0)} ~i~0 := 0; {576#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:29:33,483 INFO L273 TraceCheckUtils]: 13: Hoare triple {576#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} assume !(~i~0 < ~SIZE~0); {574#false} is VALID [2018-11-23 12:29:33,483 INFO L273 TraceCheckUtils]: 14: Hoare triple {574#false} ~i~0 := 0; {574#false} is VALID [2018-11-23 12:29:33,484 INFO L273 TraceCheckUtils]: 15: Hoare triple {574#false} assume !(~i~0 < ~SIZE~0); {574#false} is VALID [2018-11-23 12:29:33,484 INFO L273 TraceCheckUtils]: 16: Hoare triple {574#false} ~i~0 := 0; {574#false} is VALID [2018-11-23 12:29:33,484 INFO L273 TraceCheckUtils]: 17: Hoare triple {574#false} assume !(~i~0 < ~SIZE~0); {574#false} is VALID [2018-11-23 12:29:33,485 INFO L256 TraceCheckUtils]: 18: Hoare triple {574#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {574#false} is VALID [2018-11-23 12:29:33,485 INFO L273 TraceCheckUtils]: 19: Hoare triple {574#false} ~cond := #in~cond; {574#false} is VALID [2018-11-23 12:29:33,485 INFO L273 TraceCheckUtils]: 20: Hoare triple {574#false} assume 0 == ~cond; {574#false} is VALID [2018-11-23 12:29:33,486 INFO L273 TraceCheckUtils]: 21: Hoare triple {574#false} assume !false; {574#false} is VALID [2018-11-23 12:29:33,487 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:29:33,487 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 12:29:33,487 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2018-11-23 12:29:33,488 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 22 [2018-11-23 12:29:33,488 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:29:33,488 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2018-11-23 12:29:33,568 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:29:33,568 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2018-11-23 12:29:33,569 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2018-11-23 12:29:33,569 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2018-11-23 12:29:33,569 INFO L87 Difference]: Start difference. First operand 26 states and 29 transitions. Second operand 4 states. [2018-11-23 12:29:33,768 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:29:33,768 INFO L93 Difference]: Finished difference Result 43 states and 50 transitions. [2018-11-23 12:29:33,768 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-11-23 12:29:33,769 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 22 [2018-11-23 12:29:33,769 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:29:33,769 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-23 12:29:33,771 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 49 transitions. [2018-11-23 12:29:33,772 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-23 12:29:33,773 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 49 transitions. [2018-11-23 12:29:33,774 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 49 transitions. [2018-11-23 12:29:33,876 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:29:33,879 INFO L225 Difference]: With dead ends: 43 [2018-11-23 12:29:33,879 INFO L226 Difference]: Without dead ends: 32 [2018-11-23 12:29:33,880 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:29:33,880 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2018-11-23 12:29:33,909 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 29. [2018-11-23 12:29:33,910 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:29:33,910 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand 29 states. [2018-11-23 12:29:33,910 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand 29 states. [2018-11-23 12:29:33,910 INFO L87 Difference]: Start difference. First operand 32 states. Second operand 29 states. [2018-11-23 12:29:33,913 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:29:33,914 INFO L93 Difference]: Finished difference Result 32 states and 35 transitions. [2018-11-23 12:29:33,914 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 35 transitions. [2018-11-23 12:29:33,915 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:29:33,915 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:29:33,915 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand 32 states. [2018-11-23 12:29:33,915 INFO L87 Difference]: Start difference. First operand 29 states. Second operand 32 states. [2018-11-23 12:29:33,918 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:29:33,922 INFO L93 Difference]: Finished difference Result 32 states and 35 transitions. [2018-11-23 12:29:33,922 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 35 transitions. [2018-11-23 12:29:33,923 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:29:33,923 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:29:33,923 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:29:33,924 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:29:33,924 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 29 states. [2018-11-23 12:29:33,925 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 32 transitions. [2018-11-23 12:29:33,925 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 32 transitions. Word has length 22 [2018-11-23 12:29:33,926 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:29:33,926 INFO L480 AbstractCegarLoop]: Abstraction has 29 states and 32 transitions. [2018-11-23 12:29:33,926 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2018-11-23 12:29:33,926 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 32 transitions. [2018-11-23 12:29:33,927 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2018-11-23 12:29:33,927 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:29:33,927 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] [2018-11-23 12:29:33,928 INFO L423 AbstractCegarLoop]: === Iteration 5 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:29:33,928 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:29:33,928 INFO L82 PathProgramCache]: Analyzing trace with hash 2069498195, now seen corresponding path program 1 times [2018-11-23 12:29:33,928 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:29:33,928 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:29:33,929 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:29:33,930 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:29:33,930 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:29:33,948 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:29:34,049 INFO L256 TraceCheckUtils]: 0: Hoare triple {749#true} call ULTIMATE.init(); {749#true} is VALID [2018-11-23 12:29:34,050 INFO L273 TraceCheckUtils]: 1: Hoare triple {749#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {749#true} is VALID [2018-11-23 12:29:34,051 INFO L273 TraceCheckUtils]: 2: Hoare triple {749#true} assume true; {749#true} is VALID [2018-11-23 12:29:34,051 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {749#true} {749#true} #83#return; {749#true} is VALID [2018-11-23 12:29:34,051 INFO L256 TraceCheckUtils]: 4: Hoare triple {749#true} call #t~ret10 := main(); {749#true} is VALID [2018-11-23 12:29:34,052 INFO L273 TraceCheckUtils]: 5: Hoare triple {749#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {749#true} is VALID [2018-11-23 12:29:34,053 INFO L273 TraceCheckUtils]: 6: Hoare triple {749#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; {751#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:29:34,053 INFO L273 TraceCheckUtils]: 7: Hoare triple {751#(<= 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; {751#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:29:34,058 INFO L273 TraceCheckUtils]: 8: Hoare triple {751#(<= 2 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {751#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:29:34,064 INFO L273 TraceCheckUtils]: 9: Hoare triple {751#(<= 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; {751#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:29:34,065 INFO L273 TraceCheckUtils]: 10: Hoare triple {751#(<= 2 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {751#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:29:34,065 INFO L273 TraceCheckUtils]: 11: Hoare triple {751#(<= 2 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {751#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:29:34,066 INFO L273 TraceCheckUtils]: 12: Hoare triple {751#(<= 2 ~SIZE~0)} ~i~0 := 0; {752#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:29:34,067 INFO L273 TraceCheckUtils]: 13: Hoare triple {752#(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; {752#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:29:34,068 INFO L273 TraceCheckUtils]: 14: Hoare triple {752#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {753#(<= (+ main_~i~0 1) ~SIZE~0)} is VALID [2018-11-23 12:29:34,070 INFO L273 TraceCheckUtils]: 15: Hoare triple {753#(<= (+ main_~i~0 1) ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {750#false} is VALID [2018-11-23 12:29:34,071 INFO L273 TraceCheckUtils]: 16: Hoare triple {750#false} ~i~0 := 0; {750#false} is VALID [2018-11-23 12:29:34,071 INFO L273 TraceCheckUtils]: 17: Hoare triple {750#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; {750#false} is VALID [2018-11-23 12:29:34,071 INFO L273 TraceCheckUtils]: 18: Hoare triple {750#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {750#false} is VALID [2018-11-23 12:29:34,072 INFO L273 TraceCheckUtils]: 19: Hoare triple {750#false} assume !(~i~0 < ~SIZE~0); {750#false} is VALID [2018-11-23 12:29:34,072 INFO L273 TraceCheckUtils]: 20: Hoare triple {750#false} ~i~0 := 0; {750#false} is VALID [2018-11-23 12:29:34,072 INFO L273 TraceCheckUtils]: 21: Hoare triple {750#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; {750#false} is VALID [2018-11-23 12:29:34,073 INFO L273 TraceCheckUtils]: 22: Hoare triple {750#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {750#false} is VALID [2018-11-23 12:29:34,073 INFO L273 TraceCheckUtils]: 23: Hoare triple {750#false} assume !(~i~0 < ~SIZE~0); {750#false} is VALID [2018-11-23 12:29:34,074 INFO L256 TraceCheckUtils]: 24: Hoare triple {750#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {750#false} is VALID [2018-11-23 12:29:34,074 INFO L273 TraceCheckUtils]: 25: Hoare triple {750#false} ~cond := #in~cond; {750#false} is VALID [2018-11-23 12:29:34,075 INFO L273 TraceCheckUtils]: 26: Hoare triple {750#false} assume 0 == ~cond; {750#false} is VALID [2018-11-23 12:29:34,075 INFO L273 TraceCheckUtils]: 27: Hoare triple {750#false} assume !false; {750#false} is VALID [2018-11-23 12:29:34,077 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2018-11-23 12:29:34,078 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:29:34,078 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:29:34,095 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:29:34,120 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:29:34,132 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:29:34,134 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:29:34,395 INFO L256 TraceCheckUtils]: 0: Hoare triple {749#true} call ULTIMATE.init(); {749#true} is VALID [2018-11-23 12:29:34,396 INFO L273 TraceCheckUtils]: 1: Hoare triple {749#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {749#true} is VALID [2018-11-23 12:29:34,396 INFO L273 TraceCheckUtils]: 2: Hoare triple {749#true} assume true; {749#true} is VALID [2018-11-23 12:29:34,396 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {749#true} {749#true} #83#return; {749#true} is VALID [2018-11-23 12:29:34,397 INFO L256 TraceCheckUtils]: 4: Hoare triple {749#true} call #t~ret10 := main(); {749#true} is VALID [2018-11-23 12:29:34,397 INFO L273 TraceCheckUtils]: 5: Hoare triple {749#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {749#true} is VALID [2018-11-23 12:29:34,401 INFO L273 TraceCheckUtils]: 6: Hoare triple {749#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; {751#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:29:34,402 INFO L273 TraceCheckUtils]: 7: Hoare triple {751#(<= 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; {751#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:29:34,403 INFO L273 TraceCheckUtils]: 8: Hoare triple {751#(<= 2 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {751#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:29:34,403 INFO L273 TraceCheckUtils]: 9: Hoare triple {751#(<= 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; {751#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:29:34,405 INFO L273 TraceCheckUtils]: 10: Hoare triple {751#(<= 2 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {751#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:29:34,406 INFO L273 TraceCheckUtils]: 11: Hoare triple {751#(<= 2 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {751#(<= 2 ~SIZE~0)} is VALID [2018-11-23 12:29:34,407 INFO L273 TraceCheckUtils]: 12: Hoare triple {751#(<= 2 ~SIZE~0)} ~i~0 := 0; {793#(and (<= main_~i~0 0) (<= 2 ~SIZE~0))} is VALID [2018-11-23 12:29:34,408 INFO L273 TraceCheckUtils]: 13: Hoare triple {793#(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; {793#(and (<= main_~i~0 0) (<= 2 ~SIZE~0))} is VALID [2018-11-23 12:29:34,408 INFO L273 TraceCheckUtils]: 14: Hoare triple {793#(and (<= main_~i~0 0) (<= 2 ~SIZE~0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {800#(and (<= main_~i~0 1) (<= 2 ~SIZE~0))} is VALID [2018-11-23 12:29:34,409 INFO L273 TraceCheckUtils]: 15: Hoare triple {800#(and (<= main_~i~0 1) (<= 2 ~SIZE~0))} assume !(~i~0 < ~SIZE~0); {750#false} is VALID [2018-11-23 12:29:34,409 INFO L273 TraceCheckUtils]: 16: Hoare triple {750#false} ~i~0 := 0; {750#false} is VALID [2018-11-23 12:29:34,409 INFO L273 TraceCheckUtils]: 17: Hoare triple {750#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; {750#false} is VALID [2018-11-23 12:29:34,410 INFO L273 TraceCheckUtils]: 18: Hoare triple {750#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {750#false} is VALID [2018-11-23 12:29:34,410 INFO L273 TraceCheckUtils]: 19: Hoare triple {750#false} assume !(~i~0 < ~SIZE~0); {750#false} is VALID [2018-11-23 12:29:34,410 INFO L273 TraceCheckUtils]: 20: Hoare triple {750#false} ~i~0 := 0; {750#false} is VALID [2018-11-23 12:29:34,411 INFO L273 TraceCheckUtils]: 21: Hoare triple {750#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; {750#false} is VALID [2018-11-23 12:29:34,411 INFO L273 TraceCheckUtils]: 22: Hoare triple {750#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {750#false} is VALID [2018-11-23 12:29:34,411 INFO L273 TraceCheckUtils]: 23: Hoare triple {750#false} assume !(~i~0 < ~SIZE~0); {750#false} is VALID [2018-11-23 12:29:34,412 INFO L256 TraceCheckUtils]: 24: Hoare triple {750#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {750#false} is VALID [2018-11-23 12:29:34,412 INFO L273 TraceCheckUtils]: 25: Hoare triple {750#false} ~cond := #in~cond; {750#false} is VALID [2018-11-23 12:29:34,412 INFO L273 TraceCheckUtils]: 26: Hoare triple {750#false} assume 0 == ~cond; {750#false} is VALID [2018-11-23 12:29:34,413 INFO L273 TraceCheckUtils]: 27: Hoare triple {750#false} assume !false; {750#false} is VALID [2018-11-23 12:29:34,415 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2018-11-23 12:29:34,442 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:29:34,442 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 7 [2018-11-23 12:29:34,442 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 28 [2018-11-23 12:29:34,443 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:29:34,443 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states. [2018-11-23 12:29:34,501 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:29:34,501 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2018-11-23 12:29:34,501 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2018-11-23 12:29:34,502 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=22, Unknown=0, NotChecked=0, Total=42 [2018-11-23 12:29:34,502 INFO L87 Difference]: Start difference. First operand 29 states and 32 transitions. Second operand 7 states. [2018-11-23 12:29:34,886 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:29:34,887 INFO L93 Difference]: Finished difference Result 52 states and 59 transitions. [2018-11-23 12:29:34,887 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2018-11-23 12:29:34,887 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 28 [2018-11-23 12:29:34,887 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:29:34,888 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2018-11-23 12:29:34,890 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 57 transitions. [2018-11-23 12:29:34,890 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2018-11-23 12:29:34,892 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 57 transitions. [2018-11-23 12:29:34,892 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 57 transitions. [2018-11-23 12:29:34,970 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:29:34,972 INFO L225 Difference]: With dead ends: 52 [2018-11-23 12:29:34,972 INFO L226 Difference]: Without dead ends: 39 [2018-11-23 12:29:34,973 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 33 GetRequests, 26 SyntacticMatches, 1 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=27, Invalid=29, Unknown=0, NotChecked=0, Total=56 [2018-11-23 12:29:34,974 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39 states. [2018-11-23 12:29:35,018 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39 to 35. [2018-11-23 12:29:35,018 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:29:35,018 INFO L82 GeneralOperation]: Start isEquivalent. First operand 39 states. Second operand 35 states. [2018-11-23 12:29:35,019 INFO L74 IsIncluded]: Start isIncluded. First operand 39 states. Second operand 35 states. [2018-11-23 12:29:35,019 INFO L87 Difference]: Start difference. First operand 39 states. Second operand 35 states. [2018-11-23 12:29:35,021 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:29:35,022 INFO L93 Difference]: Finished difference Result 39 states and 42 transitions. [2018-11-23 12:29:35,022 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 42 transitions. [2018-11-23 12:29:35,022 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:29:35,023 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:29:35,023 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand 39 states. [2018-11-23 12:29:35,023 INFO L87 Difference]: Start difference. First operand 35 states. Second operand 39 states. [2018-11-23 12:29:35,025 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:29:35,025 INFO L93 Difference]: Finished difference Result 39 states and 42 transitions. [2018-11-23 12:29:35,025 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 42 transitions. [2018-11-23 12:29:35,026 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:29:35,026 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:29:35,026 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:29:35,026 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:29:35,027 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 35 states. [2018-11-23 12:29:35,028 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 38 transitions. [2018-11-23 12:29:35,028 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 38 transitions. Word has length 28 [2018-11-23 12:29:35,029 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:29:35,029 INFO L480 AbstractCegarLoop]: Abstraction has 35 states and 38 transitions. [2018-11-23 12:29:35,029 INFO L481 AbstractCegarLoop]: Interpolant automaton has 7 states. [2018-11-23 12:29:35,029 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 38 transitions. [2018-11-23 12:29:35,030 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2018-11-23 12:29:35,030 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:29:35,030 INFO L402 BasicCegarLoop]: trace histogram [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] [2018-11-23 12:29:35,031 INFO L423 AbstractCegarLoop]: === Iteration 6 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:29:35,031 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:29:35,031 INFO L82 PathProgramCache]: Analyzing trace with hash -1350591603, now seen corresponding path program 2 times [2018-11-23 12:29:35,031 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:29:35,031 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:29:35,032 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:29:35,033 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:29:35,033 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:29:35,143 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:29:36,039 WARN L180 SmtUtils]: Spent 204.00 ms on a formula simplification. DAG size of input: 33 DAG size of output: 30 [2018-11-23 12:29:37,411 WARN L180 SmtUtils]: Spent 102.00 ms on a formula simplification. DAG size of input: 35 DAG size of output: 27 [2018-11-23 12:29:37,599 WARN L180 SmtUtils]: Spent 123.00 ms on a formula simplification. DAG size of input: 40 DAG size of output: 32 [2018-11-23 12:29:39,004 INFO L256 TraceCheckUtils]: 0: Hoare triple {1048#true} call ULTIMATE.init(); {1048#true} is VALID [2018-11-23 12:29:39,005 INFO L273 TraceCheckUtils]: 1: Hoare triple {1048#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {1048#true} is VALID [2018-11-23 12:29:39,005 INFO L273 TraceCheckUtils]: 2: Hoare triple {1048#true} assume true; {1048#true} is VALID [2018-11-23 12:29:39,005 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1048#true} {1048#true} #83#return; {1048#true} is VALID [2018-11-23 12:29:39,005 INFO L256 TraceCheckUtils]: 4: Hoare triple {1048#true} call #t~ret10 := main(); {1048#true} is VALID [2018-11-23 12:29:39,006 INFO L273 TraceCheckUtils]: 5: Hoare triple {1048#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {1048#true} is VALID [2018-11-23 12:29:39,006 INFO L273 TraceCheckUtils]: 6: Hoare triple {1048#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; {1050#(and (= main_~sum~0 0) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:39,007 INFO L273 TraceCheckUtils]: 7: Hoare triple {1050#(and (= main_~sum~0 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; {1051#(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) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:39,008 INFO L273 TraceCheckUtils]: 8: Hoare triple {1051#(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) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1052#(or (< (+ main_~i~0 1) ~SIZE~0) (and (or (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|))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0)))} is VALID [2018-11-23 12:29:39,009 INFO L273 TraceCheckUtils]: 9: Hoare triple {1052#(or (< (+ main_~i~0 1) ~SIZE~0) (and (or (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|))) (<= 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; {1053#(or (< (+ main_~i~0 1) ~SIZE~0) (and (<= (+ main_~i~0 1) ~SIZE~0) (or (<= 5 (+ (* 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 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))))))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0)))} is VALID [2018-11-23 12:29:39,011 INFO L273 TraceCheckUtils]: 10: Hoare triple {1053#(or (< (+ main_~i~0 1) ~SIZE~0) (and (<= (+ main_~i~0 1) ~SIZE~0) (or (<= 5 (+ (* 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 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))))))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0)))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1054#(or (<= (+ main_~i~0 1) ~SIZE~0) (and (or (<= 5 (+ (* 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)))))) 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))))))))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0)))} is VALID [2018-11-23 12:29:39,012 INFO L273 TraceCheckUtils]: 11: Hoare triple {1054#(or (<= (+ main_~i~0 1) ~SIZE~0) (and (or (<= 5 (+ (* 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)))))) 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))))))))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0)))} assume !(~i~0 < ~SIZE~0); {1055#(and (or (<= 5 (+ (* 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)))))) 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))))))))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:39,013 INFO L273 TraceCheckUtils]: 12: Hoare triple {1055#(and (or (<= 5 (+ (* 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)))))) 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))))))))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {1056#(and (or (<= 5 (+ (* 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)))))) 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))))))))) (<= 2 ~SIZE~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:39,015 INFO L273 TraceCheckUtils]: 13: Hoare triple {1056#(and (or (<= 5 (+ (* 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)))))) 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))))))))) (<= 2 ~SIZE~0) (= 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; {1057#(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) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) (<= (+ (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))) (<= 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:29:39,016 INFO L273 TraceCheckUtils]: 14: Hoare triple {1057#(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) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) (<= (+ (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))) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (<= 2 ~SIZE~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {1058#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (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)))))))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:39,018 INFO L273 TraceCheckUtils]: 15: Hoare triple {1058#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (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)))))))) (<= 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; {1059#(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) (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 (+ ~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))) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:39,020 INFO L273 TraceCheckUtils]: 16: Hoare triple {1059#(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) (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 (+ ~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))) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {1060#(and (or (<= (+ main_~i~0 1) ~SIZE~0) (and (<= 0 main_~sum~0) (<= main_~sum~0 0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:39,021 INFO L273 TraceCheckUtils]: 17: Hoare triple {1060#(and (or (<= (+ main_~i~0 1) ~SIZE~0) (and (<= 0 main_~sum~0) (<= main_~sum~0 0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {1061#(and (or (and (<= 0 main_~sum~0) (<= main_~sum~0 0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:39,022 INFO L273 TraceCheckUtils]: 18: Hoare triple {1061#(and (or (and (<= 0 main_~sum~0) (<= main_~sum~0 0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {1062#(and (or (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= 2 ~SIZE~0)) (or (and (or (and (<= 0 main_~sum~0) (<= main_~sum~0 0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (<= 2 ~SIZE~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:39,023 INFO L273 TraceCheckUtils]: 19: Hoare triple {1062#(and (or (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= 2 ~SIZE~0)) (or (and (or (and (<= 0 main_~sum~0) (<= main_~sum~0 0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (<= 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~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {1063#(and (or (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= 2 ~SIZE~0)) (or (and (or (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (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:29:39,025 INFO L273 TraceCheckUtils]: 20: Hoare triple {1063#(and (or (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= 2 ~SIZE~0)) (or (and (or (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (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~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {1064#(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 (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:29:39,026 INFO L273 TraceCheckUtils]: 21: Hoare triple {1064#(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 (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~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {1065#(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) (= (+ (* 2 main_~i~0) 2) (* 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 main_~i~0))))) (<= 2 ~SIZE~0)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:39,028 INFO L273 TraceCheckUtils]: 22: Hoare triple {1065#(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) (= (+ (* 2 main_~i~0) 2) (* 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 main_~i~0))))) (<= 2 ~SIZE~0)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 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; {1066#(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:29:39,029 INFO L273 TraceCheckUtils]: 23: Hoare triple {1066#(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); {1055#(and (or (<= 5 (+ (* 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)))))) 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))))))))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:39,031 INFO L273 TraceCheckUtils]: 24: Hoare triple {1055#(and (or (<= 5 (+ (* 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)))))) 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))))))))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {1067#(and (or (<= 5 (+ (* 2 ~SIZE~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 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_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:39,032 INFO L273 TraceCheckUtils]: 25: Hoare triple {1067#(and (or (<= 5 (+ (* 2 ~SIZE~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 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_~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; {1068#(and (or (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (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_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:39,034 INFO L273 TraceCheckUtils]: 26: Hoare triple {1068#(and (or (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (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_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {1069#(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:29:39,035 INFO L273 TraceCheckUtils]: 27: Hoare triple {1069#(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~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem9;havoc #t~mem9; {1070#(or (<= (+ main_~i~0 2) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} is VALID [2018-11-23 12:29:39,036 INFO L273 TraceCheckUtils]: 28: Hoare triple {1070#(or (<= (+ main_~i~0 2) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {1071#(or (<= (+ main_~i~0 1) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} is VALID [2018-11-23 12:29:39,037 INFO L273 TraceCheckUtils]: 29: Hoare triple {1071#(or (<= (+ main_~i~0 1) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} assume !(~i~0 < ~SIZE~0); {1072#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:29:39,038 INFO L256 TraceCheckUtils]: 30: Hoare triple {1072#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {1073#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:29:39,039 INFO L273 TraceCheckUtils]: 31: Hoare triple {1073#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {1074#(= __VERIFIER_assert_~cond 1)} is VALID [2018-11-23 12:29:39,039 INFO L273 TraceCheckUtils]: 32: Hoare triple {1074#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {1049#false} is VALID [2018-11-23 12:29:39,040 INFO L273 TraceCheckUtils]: 33: Hoare triple {1049#false} assume !false; {1049#false} is VALID [2018-11-23 12:29:39,050 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 0 proven. 16 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:29:39,051 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:29:39,051 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:29:39,068 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:29:39,110 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:29:39,110 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:29:39,121 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:29:39,124 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:29:39,528 INFO L256 TraceCheckUtils]: 0: Hoare triple {1048#true} call ULTIMATE.init(); {1048#true} is VALID [2018-11-23 12:29:39,528 INFO L273 TraceCheckUtils]: 1: Hoare triple {1048#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {1048#true} is VALID [2018-11-23 12:29:39,529 INFO L273 TraceCheckUtils]: 2: Hoare triple {1048#true} assume true; {1048#true} is VALID [2018-11-23 12:29:39,529 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1048#true} {1048#true} #83#return; {1048#true} is VALID [2018-11-23 12:29:39,529 INFO L256 TraceCheckUtils]: 4: Hoare triple {1048#true} call #t~ret10 := main(); {1048#true} is VALID [2018-11-23 12:29:39,529 INFO L273 TraceCheckUtils]: 5: Hoare triple {1048#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {1048#true} is VALID [2018-11-23 12:29:39,531 INFO L273 TraceCheckUtils]: 6: Hoare triple {1048#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; {1096#(and (= main_~sum~0 0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:39,531 INFO L273 TraceCheckUtils]: 7: Hoare triple {1096#(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; {1100#(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:29:39,532 INFO L273 TraceCheckUtils]: 8: Hoare triple {1100#(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; {1104#(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:29:39,533 INFO L273 TraceCheckUtils]: 9: Hoare triple {1104#(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; {1108#(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:29:39,534 INFO L273 TraceCheckUtils]: 10: Hoare triple {1108#(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; {1108#(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:29:39,554 INFO L273 TraceCheckUtils]: 11: Hoare triple {1108#(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); {1108#(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:29:39,569 INFO L273 TraceCheckUtils]: 12: Hoare triple {1108#(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; {1118#(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:29:39,578 INFO L273 TraceCheckUtils]: 13: Hoare triple {1118#(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; {1122#(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|)) (+ 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:29:39,580 INFO L273 TraceCheckUtils]: 14: Hoare triple {1122#(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|)) (+ 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~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {1126#(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:29:39,586 INFO L273 TraceCheckUtils]: 15: Hoare triple {1126#(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~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem5;havoc #t~mem5; {1130#(and (= 0 main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:39,595 INFO L273 TraceCheckUtils]: 16: Hoare triple {1130#(and (= 0 main_~sum~0) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {1130#(and (= 0 main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:39,595 INFO L273 TraceCheckUtils]: 17: Hoare triple {1130#(and (= 0 main_~sum~0) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {1130#(and (= 0 main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:39,597 INFO L273 TraceCheckUtils]: 18: Hoare triple {1130#(and (= 0 main_~sum~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {1096#(and (= main_~sum~0 0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:39,597 INFO L273 TraceCheckUtils]: 19: Hoare triple {1096#(and (= main_~sum~0 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; {1100#(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:29:39,599 INFO L273 TraceCheckUtils]: 20: Hoare triple {1100#(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~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {1104#(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:29:39,599 INFO L273 TraceCheckUtils]: 21: Hoare triple {1104#(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~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {1108#(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:29:39,600 INFO L273 TraceCheckUtils]: 22: Hoare triple {1108#(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~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {1108#(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:29:39,602 INFO L273 TraceCheckUtils]: 23: Hoare triple {1108#(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); {1108#(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:29:39,602 INFO L273 TraceCheckUtils]: 24: Hoare triple {1108#(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; {1118#(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:29:39,604 INFO L273 TraceCheckUtils]: 25: Hoare triple {1118#(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~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem9;havoc #t~mem9; {1122#(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|)) (+ 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:29:39,605 INFO L273 TraceCheckUtils]: 26: Hoare triple {1122#(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|)) (+ 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~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {1126#(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:29:39,607 INFO L273 TraceCheckUtils]: 27: Hoare triple {1126#(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~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem9;havoc #t~mem9; {1072#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:29:39,608 INFO L273 TraceCheckUtils]: 28: Hoare triple {1072#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {1072#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:29:39,608 INFO L273 TraceCheckUtils]: 29: Hoare triple {1072#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} assume !(~i~0 < ~SIZE~0); {1072#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:29:39,610 INFO L256 TraceCheckUtils]: 30: Hoare triple {1072#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {1073#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:29:39,614 INFO L273 TraceCheckUtils]: 31: Hoare triple {1073#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {1074#(= __VERIFIER_assert_~cond 1)} is VALID [2018-11-23 12:29:39,614 INFO L273 TraceCheckUtils]: 32: Hoare triple {1074#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {1049#false} is VALID [2018-11-23 12:29:39,615 INFO L273 TraceCheckUtils]: 33: Hoare triple {1049#false} assume !false; {1049#false} is VALID [2018-11-23 12:29:39,618 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 0 proven. 16 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:29:39,637 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:29:39,638 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [27, 13] total 35 [2018-11-23 12:29:39,638 INFO L78 Accepts]: Start accepts. Automaton has 35 states. Word has length 34 [2018-11-23 12:29:39,638 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:29:39,639 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 35 states. [2018-11-23 12:29:39,812 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:29:39,812 INFO L459 AbstractCegarLoop]: Interpolant automaton has 35 states [2018-11-23 12:29:39,813 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 35 interpolants. [2018-11-23 12:29:39,814 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=136, Invalid=1054, Unknown=0, NotChecked=0, Total=1190 [2018-11-23 12:29:39,814 INFO L87 Difference]: Start difference. First operand 35 states and 38 transitions. Second operand 35 states. [2018-11-23 12:29:40,899 WARN L180 SmtUtils]: Spent 163.00 ms on a formula simplification. DAG size of input: 72 DAG size of output: 40 [2018-11-23 12:29:41,729 WARN L180 SmtUtils]: Spent 153.00 ms on a formula simplification. DAG size of input: 76 DAG size of output: 56 [2018-11-23 12:29:42,303 WARN L180 SmtUtils]: Spent 161.00 ms on a formula simplification. DAG size of input: 71 DAG size of output: 61 [2018-11-23 12:29:42,874 WARN L180 SmtUtils]: Spent 133.00 ms on a formula simplification that was a NOOP. DAG size: 37 [2018-11-23 12:29:43,477 WARN L180 SmtUtils]: Spent 128.00 ms on a formula simplification. DAG size of input: 66 DAG size of output: 53 [2018-11-23 12:29:43,859 WARN L180 SmtUtils]: Spent 114.00 ms on a formula simplification. DAG size of input: 59 DAG size of output: 45 [2018-11-23 12:29:44,093 WARN L180 SmtUtils]: Spent 108.00 ms on a formula simplification. DAG size of input: 56 DAG size of output: 47 [2018-11-23 12:29:46,157 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:29:46,157 INFO L93 Difference]: Finished difference Result 80 states and 90 transitions. [2018-11-23 12:29:46,157 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2018-11-23 12:29:46,157 INFO L78 Accepts]: Start accepts. Automaton has 35 states. Word has length 34 [2018-11-23 12:29:46,158 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:29:46,158 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 35 states. [2018-11-23 12:29:46,161 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 81 transitions. [2018-11-23 12:29:46,161 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 35 states. [2018-11-23 12:29:46,163 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 81 transitions. [2018-11-23 12:29:46,163 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 28 states and 81 transitions. [2018-11-23 12:29:46,406 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:29:46,408 INFO L225 Difference]: With dead ends: 80 [2018-11-23 12:29:46,408 INFO L226 Difference]: Without dead ends: 75 [2018-11-23 12:29:46,410 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 82 GetRequests, 24 SyntacticMatches, 4 SemanticMatches, 54 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 924 ImplicationChecksByTransitivity, 5.9s TimeCoverageRelationStatistics Valid=434, Invalid=2646, Unknown=0, NotChecked=0, Total=3080 [2018-11-23 12:29:46,410 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 75 states. [2018-11-23 12:29:46,770 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 75 to 56. [2018-11-23 12:29:46,771 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:29:46,771 INFO L82 GeneralOperation]: Start isEquivalent. First operand 75 states. Second operand 56 states. [2018-11-23 12:29:46,771 INFO L74 IsIncluded]: Start isIncluded. First operand 75 states. Second operand 56 states. [2018-11-23 12:29:46,771 INFO L87 Difference]: Start difference. First operand 75 states. Second operand 56 states. [2018-11-23 12:29:46,775 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:29:46,775 INFO L93 Difference]: Finished difference Result 75 states and 84 transitions. [2018-11-23 12:29:46,775 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 84 transitions. [2018-11-23 12:29:46,776 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:29:46,776 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:29:46,776 INFO L74 IsIncluded]: Start isIncluded. First operand 56 states. Second operand 75 states. [2018-11-23 12:29:46,776 INFO L87 Difference]: Start difference. First operand 56 states. Second operand 75 states. [2018-11-23 12:29:46,779 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:29:46,779 INFO L93 Difference]: Finished difference Result 75 states and 84 transitions. [2018-11-23 12:29:46,779 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 84 transitions. [2018-11-23 12:29:46,780 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:29:46,780 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:29:46,780 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:29:46,780 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:29:46,780 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 56 states. [2018-11-23 12:29:46,782 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 64 transitions. [2018-11-23 12:29:46,783 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 64 transitions. Word has length 34 [2018-11-23 12:29:46,783 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:29:46,783 INFO L480 AbstractCegarLoop]: Abstraction has 56 states and 64 transitions. [2018-11-23 12:29:46,783 INFO L481 AbstractCegarLoop]: Interpolant automaton has 35 states. [2018-11-23 12:29:46,783 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 64 transitions. [2018-11-23 12:29:46,784 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2018-11-23 12:29:46,784 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:29:46,784 INFO L402 BasicCegarLoop]: trace histogram [3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:29:46,784 INFO L423 AbstractCegarLoop]: === Iteration 7 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:29:46,785 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:29:46,785 INFO L82 PathProgramCache]: Analyzing trace with hash 178744587, now seen corresponding path program 3 times [2018-11-23 12:29:46,785 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:29:46,785 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:29:46,786 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:29:46,786 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:29:46,786 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:29:46,798 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:29:47,173 INFO L256 TraceCheckUtils]: 0: Hoare triple {1578#true} call ULTIMATE.init(); {1578#true} is VALID [2018-11-23 12:29:47,173 INFO L273 TraceCheckUtils]: 1: Hoare triple {1578#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {1578#true} is VALID [2018-11-23 12:29:47,173 INFO L273 TraceCheckUtils]: 2: Hoare triple {1578#true} assume true; {1578#true} is VALID [2018-11-23 12:29:47,174 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1578#true} {1578#true} #83#return; {1578#true} is VALID [2018-11-23 12:29:47,174 INFO L256 TraceCheckUtils]: 4: Hoare triple {1578#true} call #t~ret10 := main(); {1578#true} is VALID [2018-11-23 12:29:47,174 INFO L273 TraceCheckUtils]: 5: Hoare triple {1578#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {1578#true} is VALID [2018-11-23 12:29:47,174 INFO L273 TraceCheckUtils]: 6: Hoare triple {1578#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; {1580#(= main_~i~0 0)} is VALID [2018-11-23 12:29:47,175 INFO L273 TraceCheckUtils]: 7: Hoare triple {1580#(= 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; {1580#(= main_~i~0 0)} is VALID [2018-11-23 12:29:47,175 INFO L273 TraceCheckUtils]: 8: Hoare triple {1580#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1581#(<= main_~i~0 1)} is VALID [2018-11-23 12:29:47,176 INFO L273 TraceCheckUtils]: 9: Hoare triple {1581#(<= 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; {1581#(<= main_~i~0 1)} is VALID [2018-11-23 12:29:47,177 INFO L273 TraceCheckUtils]: 10: Hoare triple {1581#(<= main_~i~0 1)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1582#(<= main_~i~0 2)} is VALID [2018-11-23 12:29:47,178 INFO L273 TraceCheckUtils]: 11: Hoare triple {1582#(<= main_~i~0 2)} assume !(~i~0 < ~SIZE~0); {1583#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:29:47,178 INFO L273 TraceCheckUtils]: 12: Hoare triple {1583#(<= ~SIZE~0 2)} ~i~0 := 0; {1583#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:29:47,179 INFO L273 TraceCheckUtils]: 13: Hoare triple {1583#(<= ~SIZE~0 2)} 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; {1583#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:29:47,179 INFO L273 TraceCheckUtils]: 14: Hoare triple {1583#(<= ~SIZE~0 2)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {1583#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:29:47,180 INFO L273 TraceCheckUtils]: 15: Hoare triple {1583#(<= ~SIZE~0 2)} 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; {1583#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:29:47,181 INFO L273 TraceCheckUtils]: 16: Hoare triple {1583#(<= ~SIZE~0 2)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {1583#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:29:47,181 INFO L273 TraceCheckUtils]: 17: Hoare triple {1583#(<= ~SIZE~0 2)} assume !(~i~0 < ~SIZE~0); {1583#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:29:47,182 INFO L273 TraceCheckUtils]: 18: Hoare triple {1583#(<= ~SIZE~0 2)} ~i~0 := 0; {1583#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:29:47,182 INFO L273 TraceCheckUtils]: 19: Hoare triple {1583#(<= ~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; {1583#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:29:47,183 INFO L273 TraceCheckUtils]: 20: Hoare triple {1583#(<= ~SIZE~0 2)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {1583#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:29:47,183 INFO L273 TraceCheckUtils]: 21: Hoare triple {1583#(<= ~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; {1583#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:29:47,184 INFO L273 TraceCheckUtils]: 22: Hoare triple {1583#(<= ~SIZE~0 2)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {1583#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:29:47,184 INFO L273 TraceCheckUtils]: 23: Hoare triple {1583#(<= ~SIZE~0 2)} assume !(~i~0 < ~SIZE~0); {1583#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:29:47,185 INFO L273 TraceCheckUtils]: 24: Hoare triple {1583#(<= ~SIZE~0 2)} ~i~0 := 0; {1584#(and (<= ~SIZE~0 2) (= main_~i~0 0))} is VALID [2018-11-23 12:29:47,186 INFO L273 TraceCheckUtils]: 25: Hoare triple {1584#(and (<= ~SIZE~0 2) (= main_~i~0 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; {1584#(and (<= ~SIZE~0 2) (= main_~i~0 0))} is VALID [2018-11-23 12:29:47,187 INFO L273 TraceCheckUtils]: 26: Hoare triple {1584#(and (<= ~SIZE~0 2) (= main_~i~0 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {1585#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:29:47,187 INFO L273 TraceCheckUtils]: 27: Hoare triple {1585#(<= ~SIZE~0 (+ main_~i~0 1))} 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; {1585#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:29:47,188 INFO L273 TraceCheckUtils]: 28: Hoare triple {1585#(<= ~SIZE~0 (+ main_~i~0 1))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {1586#(<= ~SIZE~0 main_~i~0)} is VALID [2018-11-23 12:29:47,189 INFO L273 TraceCheckUtils]: 29: Hoare triple {1586#(<= ~SIZE~0 main_~i~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; {1579#false} is VALID [2018-11-23 12:29:47,189 INFO L273 TraceCheckUtils]: 30: Hoare triple {1579#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {1579#false} is VALID [2018-11-23 12:29:47,189 INFO L273 TraceCheckUtils]: 31: Hoare triple {1579#false} assume !(~i~0 < ~SIZE~0); {1579#false} is VALID [2018-11-23 12:29:47,190 INFO L256 TraceCheckUtils]: 32: Hoare triple {1579#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {1579#false} is VALID [2018-11-23 12:29:47,190 INFO L273 TraceCheckUtils]: 33: Hoare triple {1579#false} ~cond := #in~cond; {1579#false} is VALID [2018-11-23 12:29:47,190 INFO L273 TraceCheckUtils]: 34: Hoare triple {1579#false} assume 0 == ~cond; {1579#false} is VALID [2018-11-23 12:29:47,191 INFO L273 TraceCheckUtils]: 35: Hoare triple {1579#false} assume !false; {1579#false} is VALID [2018-11-23 12:29:47,193 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 6 proven. 7 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2018-11-23 12:29:47,193 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:29:47,193 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:29:47,210 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:29:47,244 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2018-11-23 12:29:47,245 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:29:47,274 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:29:47,276 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:29:47,685 INFO L256 TraceCheckUtils]: 0: Hoare triple {1578#true} call ULTIMATE.init(); {1578#true} is VALID [2018-11-23 12:29:47,685 INFO L273 TraceCheckUtils]: 1: Hoare triple {1578#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {1578#true} is VALID [2018-11-23 12:29:47,685 INFO L273 TraceCheckUtils]: 2: Hoare triple {1578#true} assume true; {1578#true} is VALID [2018-11-23 12:29:47,685 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1578#true} {1578#true} #83#return; {1578#true} is VALID [2018-11-23 12:29:47,685 INFO L256 TraceCheckUtils]: 4: Hoare triple {1578#true} call #t~ret10 := main(); {1578#true} is VALID [2018-11-23 12:29:47,686 INFO L273 TraceCheckUtils]: 5: Hoare triple {1578#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {1578#true} is VALID [2018-11-23 12:29:47,686 INFO L273 TraceCheckUtils]: 6: Hoare triple {1578#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; {1578#true} is VALID [2018-11-23 12:29:47,686 INFO L273 TraceCheckUtils]: 7: Hoare triple {1578#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; {1578#true} is VALID [2018-11-23 12:29:47,686 INFO L273 TraceCheckUtils]: 8: Hoare triple {1578#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1578#true} is VALID [2018-11-23 12:29:47,686 INFO L273 TraceCheckUtils]: 9: Hoare triple {1578#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; {1578#true} is VALID [2018-11-23 12:29:47,686 INFO L273 TraceCheckUtils]: 10: Hoare triple {1578#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1578#true} is VALID [2018-11-23 12:29:47,687 INFO L273 TraceCheckUtils]: 11: Hoare triple {1578#true} assume !(~i~0 < ~SIZE~0); {1578#true} is VALID [2018-11-23 12:29:47,687 INFO L273 TraceCheckUtils]: 12: Hoare triple {1578#true} ~i~0 := 0; {1578#true} is VALID [2018-11-23 12:29:47,687 INFO L273 TraceCheckUtils]: 13: Hoare triple {1578#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; {1578#true} is VALID [2018-11-23 12:29:47,687 INFO L273 TraceCheckUtils]: 14: Hoare triple {1578#true} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {1578#true} is VALID [2018-11-23 12:29:47,687 INFO L273 TraceCheckUtils]: 15: Hoare triple {1578#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; {1578#true} is VALID [2018-11-23 12:29:47,687 INFO L273 TraceCheckUtils]: 16: Hoare triple {1578#true} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {1578#true} is VALID [2018-11-23 12:29:47,687 INFO L273 TraceCheckUtils]: 17: Hoare triple {1578#true} assume !(~i~0 < ~SIZE~0); {1578#true} is VALID [2018-11-23 12:29:47,688 INFO L273 TraceCheckUtils]: 18: Hoare triple {1578#true} ~i~0 := 0; {1644#(<= main_~i~0 0)} is VALID [2018-11-23 12:29:47,689 INFO L273 TraceCheckUtils]: 19: Hoare triple {1644#(<= 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; {1644#(<= main_~i~0 0)} is VALID [2018-11-23 12:29:47,689 INFO L273 TraceCheckUtils]: 20: Hoare triple {1644#(<= main_~i~0 0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {1581#(<= main_~i~0 1)} is VALID [2018-11-23 12:29:47,690 INFO L273 TraceCheckUtils]: 21: Hoare triple {1581#(<= 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; {1581#(<= main_~i~0 1)} is VALID [2018-11-23 12:29:47,690 INFO L273 TraceCheckUtils]: 22: Hoare triple {1581#(<= main_~i~0 1)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {1582#(<= main_~i~0 2)} is VALID [2018-11-23 12:29:47,691 INFO L273 TraceCheckUtils]: 23: Hoare triple {1582#(<= main_~i~0 2)} assume !(~i~0 < ~SIZE~0); {1583#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:29:47,692 INFO L273 TraceCheckUtils]: 24: Hoare triple {1583#(<= ~SIZE~0 2)} ~i~0 := 0; {1663#(and (<= 0 main_~i~0) (<= ~SIZE~0 2))} is VALID [2018-11-23 12:29:47,692 INFO L273 TraceCheckUtils]: 25: Hoare triple {1663#(and (<= 0 main_~i~0) (<= ~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; {1663#(and (<= 0 main_~i~0) (<= ~SIZE~0 2))} is VALID [2018-11-23 12:29:47,693 INFO L273 TraceCheckUtils]: 26: Hoare triple {1663#(and (<= 0 main_~i~0) (<= ~SIZE~0 2))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {1670#(and (<= 1 main_~i~0) (<= ~SIZE~0 2))} is VALID [2018-11-23 12:29:47,694 INFO L273 TraceCheckUtils]: 27: Hoare triple {1670#(and (<= 1 main_~i~0) (<= ~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; {1670#(and (<= 1 main_~i~0) (<= ~SIZE~0 2))} is VALID [2018-11-23 12:29:47,695 INFO L273 TraceCheckUtils]: 28: Hoare triple {1670#(and (<= 1 main_~i~0) (<= ~SIZE~0 2))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {1677#(and (<= 2 main_~i~0) (<= ~SIZE~0 2))} is VALID [2018-11-23 12:29:47,696 INFO L273 TraceCheckUtils]: 29: Hoare triple {1677#(and (<= 2 main_~i~0) (<= ~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; {1579#false} is VALID [2018-11-23 12:29:47,696 INFO L273 TraceCheckUtils]: 30: Hoare triple {1579#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {1579#false} is VALID [2018-11-23 12:29:47,696 INFO L273 TraceCheckUtils]: 31: Hoare triple {1579#false} assume !(~i~0 < ~SIZE~0); {1579#false} is VALID [2018-11-23 12:29:47,696 INFO L256 TraceCheckUtils]: 32: Hoare triple {1579#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {1579#false} is VALID [2018-11-23 12:29:47,697 INFO L273 TraceCheckUtils]: 33: Hoare triple {1579#false} ~cond := #in~cond; {1579#false} is VALID [2018-11-23 12:29:47,697 INFO L273 TraceCheckUtils]: 34: Hoare triple {1579#false} assume 0 == ~cond; {1579#false} is VALID [2018-11-23 12:29:47,697 INFO L273 TraceCheckUtils]: 35: Hoare triple {1579#false} assume !false; {1579#false} is VALID [2018-11-23 12:29:47,699 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 9 proven. 4 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2018-11-23 12:29:47,718 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:29:47,718 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 13 [2018-11-23 12:29:47,718 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 36 [2018-11-23 12:29:47,722 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:29:47,722 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states. [2018-11-23 12:29:47,766 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:29:47,767 INFO L459 AbstractCegarLoop]: Interpolant automaton has 13 states [2018-11-23 12:29:47,767 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2018-11-23 12:29:47,767 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=111, Unknown=0, NotChecked=0, Total=156 [2018-11-23 12:29:47,767 INFO L87 Difference]: Start difference. First operand 56 states and 64 transitions. Second operand 13 states. [2018-11-23 12:29:48,472 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:29:48,472 INFO L93 Difference]: Finished difference Result 116 states and 131 transitions. [2018-11-23 12:29:48,472 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-23 12:29:48,472 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 36 [2018-11-23 12:29:48,473 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:29:48,473 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-23 12:29:48,475 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 97 transitions. [2018-11-23 12:29:48,476 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-23 12:29:48,478 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 97 transitions. [2018-11-23 12:29:48,478 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 97 transitions. [2018-11-23 12:29:48,614 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 97 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:29:48,616 INFO L225 Difference]: With dead ends: 116 [2018-11-23 12:29:48,616 INFO L226 Difference]: Without dead ends: 73 [2018-11-23 12:29:48,617 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 50 GetRequests, 36 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 45 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=69, Invalid=171, Unknown=0, NotChecked=0, Total=240 [2018-11-23 12:29:48,618 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 73 states. [2018-11-23 12:29:48,739 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 73 to 61. [2018-11-23 12:29:48,739 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:29:48,739 INFO L82 GeneralOperation]: Start isEquivalent. First operand 73 states. Second operand 61 states. [2018-11-23 12:29:48,739 INFO L74 IsIncluded]: Start isIncluded. First operand 73 states. Second operand 61 states. [2018-11-23 12:29:48,739 INFO L87 Difference]: Start difference. First operand 73 states. Second operand 61 states. [2018-11-23 12:29:48,742 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:29:48,743 INFO L93 Difference]: Finished difference Result 73 states and 79 transitions. [2018-11-23 12:29:48,743 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 79 transitions. [2018-11-23 12:29:48,743 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:29:48,743 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:29:48,743 INFO L74 IsIncluded]: Start isIncluded. First operand 61 states. Second operand 73 states. [2018-11-23 12:29:48,744 INFO L87 Difference]: Start difference. First operand 61 states. Second operand 73 states. [2018-11-23 12:29:48,746 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:29:48,746 INFO L93 Difference]: Finished difference Result 73 states and 79 transitions. [2018-11-23 12:29:48,746 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 79 transitions. [2018-11-23 12:29:48,747 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:29:48,747 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:29:48,747 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:29:48,747 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:29:48,747 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 61 states. [2018-11-23 12:29:48,749 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 61 states to 61 states and 67 transitions. [2018-11-23 12:29:48,750 INFO L78 Accepts]: Start accepts. Automaton has 61 states and 67 transitions. Word has length 36 [2018-11-23 12:29:48,750 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:29:48,750 INFO L480 AbstractCegarLoop]: Abstraction has 61 states and 67 transitions. [2018-11-23 12:29:48,750 INFO L481 AbstractCegarLoop]: Interpolant automaton has 13 states. [2018-11-23 12:29:48,750 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 67 transitions. [2018-11-23 12:29:48,751 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2018-11-23 12:29:48,751 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:29:48,751 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:29:48,751 INFO L423 AbstractCegarLoop]: === Iteration 8 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:29:48,751 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:29:48,752 INFO L82 PathProgramCache]: Analyzing trace with hash 1016318089, now seen corresponding path program 4 times [2018-11-23 12:29:48,752 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:29:48,752 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:29:48,752 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:29:48,753 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:29:48,753 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:29:48,762 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:29:48,876 INFO L256 TraceCheckUtils]: 0: Hoare triple {2116#true} call ULTIMATE.init(); {2116#true} is VALID [2018-11-23 12:29:48,877 INFO L273 TraceCheckUtils]: 1: Hoare triple {2116#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {2116#true} is VALID [2018-11-23 12:29:48,877 INFO L273 TraceCheckUtils]: 2: Hoare triple {2116#true} assume true; {2116#true} is VALID [2018-11-23 12:29:48,877 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2116#true} {2116#true} #83#return; {2116#true} is VALID [2018-11-23 12:29:48,878 INFO L256 TraceCheckUtils]: 4: Hoare triple {2116#true} call #t~ret10 := main(); {2116#true} is VALID [2018-11-23 12:29:48,878 INFO L273 TraceCheckUtils]: 5: Hoare triple {2116#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {2116#true} is VALID [2018-11-23 12:29:48,878 INFO L273 TraceCheckUtils]: 6: Hoare triple {2116#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; {2118#(= main_~i~0 0)} is VALID [2018-11-23 12:29:48,879 INFO L273 TraceCheckUtils]: 7: Hoare triple {2118#(= 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; {2118#(= main_~i~0 0)} is VALID [2018-11-23 12:29:48,879 INFO L273 TraceCheckUtils]: 8: Hoare triple {2118#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2119#(<= 1 main_~i~0)} is VALID [2018-11-23 12:29:48,881 INFO L273 TraceCheckUtils]: 9: Hoare triple {2119#(<= 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; {2119#(<= 1 main_~i~0)} is VALID [2018-11-23 12:29:48,882 INFO L273 TraceCheckUtils]: 10: Hoare triple {2119#(<= 1 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2120#(<= 2 main_~i~0)} is VALID [2018-11-23 12:29:48,882 INFO L273 TraceCheckUtils]: 11: Hoare triple {2120#(<= 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; {2120#(<= 2 main_~i~0)} is VALID [2018-11-23 12:29:48,884 INFO L273 TraceCheckUtils]: 12: Hoare triple {2120#(<= 2 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2121#(<= 3 main_~i~0)} is VALID [2018-11-23 12:29:48,884 INFO L273 TraceCheckUtils]: 13: Hoare triple {2121#(<= 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; {2122#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:29:48,885 INFO L273 TraceCheckUtils]: 14: Hoare triple {2122#(<= 4 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2122#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:29:48,885 INFO L273 TraceCheckUtils]: 15: Hoare triple {2122#(<= 4 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {2122#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:29:48,886 INFO L273 TraceCheckUtils]: 16: Hoare triple {2122#(<= 4 ~SIZE~0)} ~i~0 := 0; {2122#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:29:48,888 INFO L273 TraceCheckUtils]: 17: Hoare triple {2122#(<= 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; {2122#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:29:48,888 INFO L273 TraceCheckUtils]: 18: Hoare triple {2122#(<= 4 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {2122#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:29:48,890 INFO L273 TraceCheckUtils]: 19: Hoare triple {2122#(<= 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; {2122#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:29:48,890 INFO L273 TraceCheckUtils]: 20: Hoare triple {2122#(<= 4 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {2122#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:29:48,891 INFO L273 TraceCheckUtils]: 21: Hoare triple {2122#(<= 4 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {2122#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:29:48,891 INFO L273 TraceCheckUtils]: 22: Hoare triple {2122#(<= 4 ~SIZE~0)} ~i~0 := 0; {2122#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:29:48,892 INFO L273 TraceCheckUtils]: 23: Hoare triple {2122#(<= 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; {2122#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:29:48,892 INFO L273 TraceCheckUtils]: 24: Hoare triple {2122#(<= 4 ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {2122#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:29:48,893 INFO L273 TraceCheckUtils]: 25: Hoare triple {2122#(<= 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; {2122#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:29:48,893 INFO L273 TraceCheckUtils]: 26: Hoare triple {2122#(<= 4 ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {2122#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:29:48,894 INFO L273 TraceCheckUtils]: 27: Hoare triple {2122#(<= 4 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {2122#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:29:48,895 INFO L273 TraceCheckUtils]: 28: Hoare triple {2122#(<= 4 ~SIZE~0)} ~i~0 := 0; {2123#(and (<= 4 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:29:48,895 INFO L273 TraceCheckUtils]: 29: Hoare triple {2123#(and (<= 4 ~SIZE~0) (= main_~i~0 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; {2123#(and (<= 4 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:29:48,896 INFO L273 TraceCheckUtils]: 30: Hoare triple {2123#(and (<= 4 ~SIZE~0) (= main_~i~0 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {2124#(<= (+ main_~i~0 3) ~SIZE~0)} is VALID [2018-11-23 12:29:48,897 INFO L273 TraceCheckUtils]: 31: Hoare triple {2124#(<= (+ main_~i~0 3) ~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; {2124#(<= (+ main_~i~0 3) ~SIZE~0)} is VALID [2018-11-23 12:29:48,898 INFO L273 TraceCheckUtils]: 32: Hoare triple {2124#(<= (+ main_~i~0 3) ~SIZE~0)} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {2125#(<= (+ main_~i~0 2) ~SIZE~0)} is VALID [2018-11-23 12:29:48,898 INFO L273 TraceCheckUtils]: 33: Hoare triple {2125#(<= (+ main_~i~0 2) ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {2117#false} is VALID [2018-11-23 12:29:48,899 INFO L256 TraceCheckUtils]: 34: Hoare triple {2117#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {2117#false} is VALID [2018-11-23 12:29:48,899 INFO L273 TraceCheckUtils]: 35: Hoare triple {2117#false} ~cond := #in~cond; {2117#false} is VALID [2018-11-23 12:29:48,899 INFO L273 TraceCheckUtils]: 36: Hoare triple {2117#false} assume 0 == ~cond; {2117#false} is VALID [2018-11-23 12:29:48,899 INFO L273 TraceCheckUtils]: 37: Hoare triple {2117#false} assume !false; {2117#false} is VALID [2018-11-23 12:29:48,901 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 4 proven. 16 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2018-11-23 12:29:48,901 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:29:48,902 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:29:48,914 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 12:29:48,939 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 12:29:48,939 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:29:48,963 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:29:48,965 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:29:49,169 INFO L256 TraceCheckUtils]: 0: Hoare triple {2116#true} call ULTIMATE.init(); {2116#true} is VALID [2018-11-23 12:29:49,170 INFO L273 TraceCheckUtils]: 1: Hoare triple {2116#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {2116#true} is VALID [2018-11-23 12:29:49,170 INFO L273 TraceCheckUtils]: 2: Hoare triple {2116#true} assume true; {2116#true} is VALID [2018-11-23 12:29:49,170 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2116#true} {2116#true} #83#return; {2116#true} is VALID [2018-11-23 12:29:49,170 INFO L256 TraceCheckUtils]: 4: Hoare triple {2116#true} call #t~ret10 := main(); {2116#true} is VALID [2018-11-23 12:29:49,171 INFO L273 TraceCheckUtils]: 5: Hoare triple {2116#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {2116#true} is VALID [2018-11-23 12:29:49,171 INFO L273 TraceCheckUtils]: 6: Hoare triple {2116#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; {2147#(<= 0 main_~i~0)} is VALID [2018-11-23 12:29:49,172 INFO L273 TraceCheckUtils]: 7: Hoare triple {2147#(<= 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; {2147#(<= 0 main_~i~0)} is VALID [2018-11-23 12:29:49,172 INFO L273 TraceCheckUtils]: 8: Hoare triple {2147#(<= 0 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2119#(<= 1 main_~i~0)} is VALID [2018-11-23 12:29:49,172 INFO L273 TraceCheckUtils]: 9: Hoare triple {2119#(<= 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; {2119#(<= 1 main_~i~0)} is VALID [2018-11-23 12:29:49,173 INFO L273 TraceCheckUtils]: 10: Hoare triple {2119#(<= 1 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2120#(<= 2 main_~i~0)} is VALID [2018-11-23 12:29:49,174 INFO L273 TraceCheckUtils]: 11: Hoare triple {2120#(<= 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; {2120#(<= 2 main_~i~0)} is VALID [2018-11-23 12:29:49,174 INFO L273 TraceCheckUtils]: 12: Hoare triple {2120#(<= 2 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2121#(<= 3 main_~i~0)} is VALID [2018-11-23 12:29:49,175 INFO L273 TraceCheckUtils]: 13: Hoare triple {2121#(<= 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; {2122#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:29:49,176 INFO L273 TraceCheckUtils]: 14: Hoare triple {2122#(<= 4 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2122#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:29:49,176 INFO L273 TraceCheckUtils]: 15: Hoare triple {2122#(<= 4 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {2122#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:29:49,177 INFO L273 TraceCheckUtils]: 16: Hoare triple {2122#(<= 4 ~SIZE~0)} ~i~0 := 0; {2178#(and (<= main_~i~0 0) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:29:49,178 INFO L273 TraceCheckUtils]: 17: Hoare triple {2178#(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; {2178#(and (<= main_~i~0 0) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:29:49,178 INFO L273 TraceCheckUtils]: 18: Hoare triple {2178#(and (<= main_~i~0 0) (<= 4 ~SIZE~0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {2185#(and (<= main_~i~0 1) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:29:49,179 INFO L273 TraceCheckUtils]: 19: Hoare triple {2185#(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; {2185#(and (<= main_~i~0 1) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:29:49,183 INFO L273 TraceCheckUtils]: 20: Hoare triple {2185#(and (<= main_~i~0 1) (<= 4 ~SIZE~0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {2192#(and (<= main_~i~0 2) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:29:49,183 INFO L273 TraceCheckUtils]: 21: Hoare triple {2192#(and (<= main_~i~0 2) (<= 4 ~SIZE~0))} assume !(~i~0 < ~SIZE~0); {2117#false} is VALID [2018-11-23 12:29:49,183 INFO L273 TraceCheckUtils]: 22: Hoare triple {2117#false} ~i~0 := 0; {2117#false} is VALID [2018-11-23 12:29:49,184 INFO L273 TraceCheckUtils]: 23: Hoare triple {2117#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; {2117#false} is VALID [2018-11-23 12:29:49,184 INFO L273 TraceCheckUtils]: 24: Hoare triple {2117#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {2117#false} is VALID [2018-11-23 12:29:49,184 INFO L273 TraceCheckUtils]: 25: Hoare triple {2117#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; {2117#false} is VALID [2018-11-23 12:29:49,184 INFO L273 TraceCheckUtils]: 26: Hoare triple {2117#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {2117#false} is VALID [2018-11-23 12:29:49,184 INFO L273 TraceCheckUtils]: 27: Hoare triple {2117#false} assume !(~i~0 < ~SIZE~0); {2117#false} is VALID [2018-11-23 12:29:49,184 INFO L273 TraceCheckUtils]: 28: Hoare triple {2117#false} ~i~0 := 0; {2117#false} is VALID [2018-11-23 12:29:49,184 INFO L273 TraceCheckUtils]: 29: Hoare triple {2117#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; {2117#false} is VALID [2018-11-23 12:29:49,185 INFO L273 TraceCheckUtils]: 30: Hoare triple {2117#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {2117#false} is VALID [2018-11-23 12:29:49,185 INFO L273 TraceCheckUtils]: 31: Hoare triple {2117#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; {2117#false} is VALID [2018-11-23 12:29:49,185 INFO L273 TraceCheckUtils]: 32: Hoare triple {2117#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {2117#false} is VALID [2018-11-23 12:29:49,185 INFO L273 TraceCheckUtils]: 33: Hoare triple {2117#false} assume !(~i~0 < ~SIZE~0); {2117#false} is VALID [2018-11-23 12:29:49,185 INFO L256 TraceCheckUtils]: 34: Hoare triple {2117#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {2117#false} is VALID [2018-11-23 12:29:49,185 INFO L273 TraceCheckUtils]: 35: Hoare triple {2117#false} ~cond := #in~cond; {2117#false} is VALID [2018-11-23 12:29:49,185 INFO L273 TraceCheckUtils]: 36: Hoare triple {2117#false} assume 0 == ~cond; {2117#false} is VALID [2018-11-23 12:29:49,186 INFO L273 TraceCheckUtils]: 37: Hoare triple {2117#false} assume !false; {2117#false} is VALID [2018-11-23 12:29:49,187 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 9 proven. 11 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2018-11-23 12:29:49,205 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:29:49,206 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 14 [2018-11-23 12:29:49,206 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 38 [2018-11-23 12:29:49,206 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:29:49,207 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states. [2018-11-23 12:29:49,250 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:29:49,250 INFO L459 AbstractCegarLoop]: Interpolant automaton has 14 states [2018-11-23 12:29:49,251 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2018-11-23 12:29:49,251 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=52, Invalid=130, Unknown=0, NotChecked=0, Total=182 [2018-11-23 12:29:49,251 INFO L87 Difference]: Start difference. First operand 61 states and 67 transitions. Second operand 14 states. [2018-11-23 12:29:50,447 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:29:50,447 INFO L93 Difference]: Finished difference Result 101 states and 111 transitions. [2018-11-23 12:29:50,447 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2018-11-23 12:29:50,447 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 38 [2018-11-23 12:29:50,448 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:29:50,448 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-23 12:29:50,451 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 102 transitions. [2018-11-23 12:29:50,451 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-23 12:29:50,453 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 102 transitions. [2018-11-23 12:29:50,454 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 102 transitions. [2018-11-23 12:29:50,572 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:29:50,575 INFO L225 Difference]: With dead ends: 101 [2018-11-23 12:29:50,575 INFO L226 Difference]: Without dead ends: 84 [2018-11-23 12:29:50,576 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 51 GetRequests, 35 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 57 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=82, Invalid=224, Unknown=0, NotChecked=0, Total=306 [2018-11-23 12:29:50,576 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 84 states. [2018-11-23 12:29:50,772 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 84 to 68. [2018-11-23 12:29:50,772 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:29:50,773 INFO L82 GeneralOperation]: Start isEquivalent. First operand 84 states. Second operand 68 states. [2018-11-23 12:29:50,773 INFO L74 IsIncluded]: Start isIncluded. First operand 84 states. Second operand 68 states. [2018-11-23 12:29:50,773 INFO L87 Difference]: Start difference. First operand 84 states. Second operand 68 states. [2018-11-23 12:29:50,777 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:29:50,777 INFO L93 Difference]: Finished difference Result 84 states and 92 transitions. [2018-11-23 12:29:50,777 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 92 transitions. [2018-11-23 12:29:50,778 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:29:50,778 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:29:50,778 INFO L74 IsIncluded]: Start isIncluded. First operand 68 states. Second operand 84 states. [2018-11-23 12:29:50,778 INFO L87 Difference]: Start difference. First operand 68 states. Second operand 84 states. [2018-11-23 12:29:50,781 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:29:50,782 INFO L93 Difference]: Finished difference Result 84 states and 92 transitions. [2018-11-23 12:29:50,782 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 92 transitions. [2018-11-23 12:29:50,782 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:29:50,782 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:29:50,783 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:29:50,783 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:29:50,783 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 68 states. [2018-11-23 12:29:50,785 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 75 transitions. [2018-11-23 12:29:50,785 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 75 transitions. Word has length 38 [2018-11-23 12:29:50,786 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:29:50,786 INFO L480 AbstractCegarLoop]: Abstraction has 68 states and 75 transitions. [2018-11-23 12:29:50,786 INFO L481 AbstractCegarLoop]: Interpolant automaton has 14 states. [2018-11-23 12:29:50,786 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 75 transitions. [2018-11-23 12:29:50,787 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2018-11-23 12:29:50,787 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:29:50,787 INFO L402 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:29:50,787 INFO L423 AbstractCegarLoop]: === Iteration 9 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:29:50,787 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:29:50,788 INFO L82 PathProgramCache]: Analyzing trace with hash 143411273, now seen corresponding path program 5 times [2018-11-23 12:29:50,788 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:29:50,788 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:29:50,789 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:29:50,789 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:29:50,789 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:29:50,799 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:29:50,950 INFO L256 TraceCheckUtils]: 0: Hoare triple {2671#true} call ULTIMATE.init(); {2671#true} is VALID [2018-11-23 12:29:50,951 INFO L273 TraceCheckUtils]: 1: Hoare triple {2671#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {2671#true} is VALID [2018-11-23 12:29:50,951 INFO L273 TraceCheckUtils]: 2: Hoare triple {2671#true} assume true; {2671#true} is VALID [2018-11-23 12:29:50,951 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2671#true} {2671#true} #83#return; {2671#true} is VALID [2018-11-23 12:29:50,952 INFO L256 TraceCheckUtils]: 4: Hoare triple {2671#true} call #t~ret10 := main(); {2671#true} is VALID [2018-11-23 12:29:50,952 INFO L273 TraceCheckUtils]: 5: Hoare triple {2671#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {2671#true} is VALID [2018-11-23 12:29:50,972 INFO L273 TraceCheckUtils]: 6: Hoare triple {2671#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; {2673#(= main_~i~0 0)} is VALID [2018-11-23 12:29:50,981 INFO L273 TraceCheckUtils]: 7: Hoare triple {2673#(= 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; {2673#(= main_~i~0 0)} is VALID [2018-11-23 12:29:50,995 INFO L273 TraceCheckUtils]: 8: Hoare triple {2673#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2674#(<= 1 main_~i~0)} is VALID [2018-11-23 12:29:51,004 INFO L273 TraceCheckUtils]: 9: Hoare triple {2674#(<= 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; {2674#(<= 1 main_~i~0)} is VALID [2018-11-23 12:29:51,016 INFO L273 TraceCheckUtils]: 10: Hoare triple {2674#(<= 1 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2675#(<= 2 main_~i~0)} is VALID [2018-11-23 12:29:51,017 INFO L273 TraceCheckUtils]: 11: Hoare triple {2675#(<= 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; {2676#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:29:51,020 INFO L273 TraceCheckUtils]: 12: Hoare triple {2676#(<= 3 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2676#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:29:51,027 INFO L273 TraceCheckUtils]: 13: Hoare triple {2676#(<= 3 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {2676#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:29:51,029 INFO L273 TraceCheckUtils]: 14: Hoare triple {2676#(<= 3 ~SIZE~0)} ~i~0 := 0; {2676#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:29:51,032 INFO L273 TraceCheckUtils]: 15: Hoare triple {2676#(<= 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; {2676#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:29:51,032 INFO L273 TraceCheckUtils]: 16: Hoare triple {2676#(<= 3 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {2676#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:29:51,034 INFO L273 TraceCheckUtils]: 17: Hoare triple {2676#(<= 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; {2676#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:29:51,034 INFO L273 TraceCheckUtils]: 18: Hoare triple {2676#(<= 3 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {2676#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:29:51,036 INFO L273 TraceCheckUtils]: 19: Hoare triple {2676#(<= 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; {2676#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:29:51,036 INFO L273 TraceCheckUtils]: 20: Hoare triple {2676#(<= 3 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {2676#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:29:51,038 INFO L273 TraceCheckUtils]: 21: Hoare triple {2676#(<= 3 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {2676#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:29:51,038 INFO L273 TraceCheckUtils]: 22: Hoare triple {2676#(<= 3 ~SIZE~0)} ~i~0 := 0; {2676#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:29:51,040 INFO L273 TraceCheckUtils]: 23: Hoare triple {2676#(<= 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; {2676#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:29:51,040 INFO L273 TraceCheckUtils]: 24: Hoare triple {2676#(<= 3 ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {2676#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:29:51,046 INFO L273 TraceCheckUtils]: 25: Hoare triple {2676#(<= 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; {2676#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:29:51,047 INFO L273 TraceCheckUtils]: 26: Hoare triple {2676#(<= 3 ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {2676#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:29:51,047 INFO L273 TraceCheckUtils]: 27: Hoare triple {2676#(<= 3 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {2676#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:29:51,048 INFO L273 TraceCheckUtils]: 28: Hoare triple {2676#(<= 3 ~SIZE~0)} ~i~0 := 0; {2677#(and (<= 3 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:29:51,048 INFO L273 TraceCheckUtils]: 29: Hoare triple {2677#(and (<= 3 ~SIZE~0) (= main_~i~0 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; {2677#(and (<= 3 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:29:51,049 INFO L273 TraceCheckUtils]: 30: Hoare triple {2677#(and (<= 3 ~SIZE~0) (= main_~i~0 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {2678#(<= (+ main_~i~0 2) ~SIZE~0)} is VALID [2018-11-23 12:29:51,049 INFO L273 TraceCheckUtils]: 31: Hoare triple {2678#(<= (+ main_~i~0 2) ~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; {2678#(<= (+ main_~i~0 2) ~SIZE~0)} is VALID [2018-11-23 12:29:51,050 INFO L273 TraceCheckUtils]: 32: Hoare triple {2678#(<= (+ main_~i~0 2) ~SIZE~0)} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {2679#(<= (+ main_~i~0 1) ~SIZE~0)} is VALID [2018-11-23 12:29:51,050 INFO L273 TraceCheckUtils]: 33: Hoare triple {2679#(<= (+ main_~i~0 1) ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {2672#false} is VALID [2018-11-23 12:29:51,051 INFO L256 TraceCheckUtils]: 34: Hoare triple {2672#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {2672#false} is VALID [2018-11-23 12:29:51,051 INFO L273 TraceCheckUtils]: 35: Hoare triple {2672#false} ~cond := #in~cond; {2672#false} is VALID [2018-11-23 12:29:51,051 INFO L273 TraceCheckUtils]: 36: Hoare triple {2672#false} assume 0 == ~cond; {2672#false} is VALID [2018-11-23 12:29:51,051 INFO L273 TraceCheckUtils]: 37: Hoare triple {2672#false} assume !false; {2672#false} is VALID [2018-11-23 12:29:51,054 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 1 proven. 12 refuted. 0 times theorem prover too weak. 13 trivial. 0 not checked. [2018-11-23 12:29:51,054 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:29:51,055 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:29:51,066 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 12:29:51,138 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 4 check-sat command(s) [2018-11-23 12:29:51,139 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:29:51,172 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:29:51,173 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:29:51,412 INFO L256 TraceCheckUtils]: 0: Hoare triple {2671#true} call ULTIMATE.init(); {2671#true} is VALID [2018-11-23 12:29:51,412 INFO L273 TraceCheckUtils]: 1: Hoare triple {2671#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {2671#true} is VALID [2018-11-23 12:29:51,412 INFO L273 TraceCheckUtils]: 2: Hoare triple {2671#true} assume true; {2671#true} is VALID [2018-11-23 12:29:51,413 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2671#true} {2671#true} #83#return; {2671#true} is VALID [2018-11-23 12:29:51,413 INFO L256 TraceCheckUtils]: 4: Hoare triple {2671#true} call #t~ret10 := main(); {2671#true} is VALID [2018-11-23 12:29:51,413 INFO L273 TraceCheckUtils]: 5: Hoare triple {2671#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {2671#true} is VALID [2018-11-23 12:29:51,413 INFO L273 TraceCheckUtils]: 6: Hoare triple {2671#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; {2671#true} is VALID [2018-11-23 12:29:51,413 INFO L273 TraceCheckUtils]: 7: Hoare triple {2671#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; {2671#true} is VALID [2018-11-23 12:29:51,414 INFO L273 TraceCheckUtils]: 8: Hoare triple {2671#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2671#true} is VALID [2018-11-23 12:29:51,414 INFO L273 TraceCheckUtils]: 9: Hoare triple {2671#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; {2671#true} is VALID [2018-11-23 12:29:51,414 INFO L273 TraceCheckUtils]: 10: Hoare triple {2671#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2671#true} is VALID [2018-11-23 12:29:51,414 INFO L273 TraceCheckUtils]: 11: Hoare triple {2671#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; {2671#true} is VALID [2018-11-23 12:29:51,415 INFO L273 TraceCheckUtils]: 12: Hoare triple {2671#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2671#true} is VALID [2018-11-23 12:29:51,415 INFO L273 TraceCheckUtils]: 13: Hoare triple {2671#true} assume !(~i~0 < ~SIZE~0); {2671#true} is VALID [2018-11-23 12:29:51,415 INFO L273 TraceCheckUtils]: 14: Hoare triple {2671#true} ~i~0 := 0; {2725#(<= 0 main_~i~0)} is VALID [2018-11-23 12:29:51,416 INFO L273 TraceCheckUtils]: 15: Hoare triple {2725#(<= 0 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; {2725#(<= 0 main_~i~0)} is VALID [2018-11-23 12:29:51,416 INFO L273 TraceCheckUtils]: 16: Hoare triple {2725#(<= 0 main_~i~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {2674#(<= 1 main_~i~0)} is VALID [2018-11-23 12:29:51,417 INFO L273 TraceCheckUtils]: 17: Hoare triple {2674#(<= 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; {2674#(<= 1 main_~i~0)} is VALID [2018-11-23 12:29:51,417 INFO L273 TraceCheckUtils]: 18: Hoare triple {2674#(<= 1 main_~i~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {2675#(<= 2 main_~i~0)} is VALID [2018-11-23 12:29:51,418 INFO L273 TraceCheckUtils]: 19: Hoare triple {2675#(<= 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; {2676#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:29:51,418 INFO L273 TraceCheckUtils]: 20: Hoare triple {2676#(<= 3 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {2676#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:29:51,418 INFO L273 TraceCheckUtils]: 21: Hoare triple {2676#(<= 3 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {2676#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:29:51,419 INFO L273 TraceCheckUtils]: 22: Hoare triple {2676#(<= 3 ~SIZE~0)} ~i~0 := 0; {2676#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:29:51,419 INFO L273 TraceCheckUtils]: 23: Hoare triple {2676#(<= 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; {2676#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:29:51,419 INFO L273 TraceCheckUtils]: 24: Hoare triple {2676#(<= 3 ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {2676#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:29:51,420 INFO L273 TraceCheckUtils]: 25: Hoare triple {2676#(<= 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; {2676#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:29:51,420 INFO L273 TraceCheckUtils]: 26: Hoare triple {2676#(<= 3 ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {2676#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:29:51,421 INFO L273 TraceCheckUtils]: 27: Hoare triple {2676#(<= 3 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {2676#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:29:51,421 INFO L273 TraceCheckUtils]: 28: Hoare triple {2676#(<= 3 ~SIZE~0)} ~i~0 := 0; {2768#(and (<= main_~i~0 0) (<= 3 ~SIZE~0))} is VALID [2018-11-23 12:29:51,422 INFO L273 TraceCheckUtils]: 29: Hoare triple {2768#(and (<= main_~i~0 0) (<= 3 ~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; {2768#(and (<= main_~i~0 0) (<= 3 ~SIZE~0))} is VALID [2018-11-23 12:29:51,423 INFO L273 TraceCheckUtils]: 30: Hoare triple {2768#(and (<= main_~i~0 0) (<= 3 ~SIZE~0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {2775#(and (<= main_~i~0 1) (<= 3 ~SIZE~0))} is VALID [2018-11-23 12:29:51,424 INFO L273 TraceCheckUtils]: 31: Hoare triple {2775#(and (<= main_~i~0 1) (<= 3 ~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; {2775#(and (<= main_~i~0 1) (<= 3 ~SIZE~0))} is VALID [2018-11-23 12:29:51,425 INFO L273 TraceCheckUtils]: 32: Hoare triple {2775#(and (<= main_~i~0 1) (<= 3 ~SIZE~0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {2782#(and (<= main_~i~0 2) (<= 3 ~SIZE~0))} is VALID [2018-11-23 12:29:51,426 INFO L273 TraceCheckUtils]: 33: Hoare triple {2782#(and (<= main_~i~0 2) (<= 3 ~SIZE~0))} assume !(~i~0 < ~SIZE~0); {2672#false} is VALID [2018-11-23 12:29:51,426 INFO L256 TraceCheckUtils]: 34: Hoare triple {2672#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {2672#false} is VALID [2018-11-23 12:29:51,426 INFO L273 TraceCheckUtils]: 35: Hoare triple {2672#false} ~cond := #in~cond; {2672#false} is VALID [2018-11-23 12:29:51,426 INFO L273 TraceCheckUtils]: 36: Hoare triple {2672#false} assume 0 == ~cond; {2672#false} is VALID [2018-11-23 12:29:51,427 INFO L273 TraceCheckUtils]: 37: Hoare triple {2672#false} assume !false; {2672#false} is VALID [2018-11-23 12:29:51,428 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 4 proven. 9 refuted. 0 times theorem prover too weak. 13 trivial. 0 not checked. [2018-11-23 12:29:51,449 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:29:51,449 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 13 [2018-11-23 12:29:51,449 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 38 [2018-11-23 12:29:51,450 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:29:51,450 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states. [2018-11-23 12:29:51,492 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:29:51,493 INFO L459 AbstractCegarLoop]: Interpolant automaton has 13 states [2018-11-23 12:29:51,493 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2018-11-23 12:29:51,493 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=47, Invalid=109, Unknown=0, NotChecked=0, Total=156 [2018-11-23 12:29:51,493 INFO L87 Difference]: Start difference. First operand 68 states and 75 transitions. Second operand 13 states. [2018-11-23 12:29:52,355 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:29:52,355 INFO L93 Difference]: Finished difference Result 81 states and 88 transitions. [2018-11-23 12:29:52,355 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-23 12:29:52,355 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 38 [2018-11-23 12:29:52,356 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:29:52,356 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-23 12:29:52,357 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 59 transitions. [2018-11-23 12:29:52,358 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-23 12:29:52,359 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 59 transitions. [2018-11-23 12:29:52,359 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 59 transitions. [2018-11-23 12:29:52,466 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:29:52,468 INFO L225 Difference]: With dead ends: 81 [2018-11-23 12:29:52,469 INFO L226 Difference]: Without dead ends: 70 [2018-11-23 12:29:52,470 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 54 GetRequests, 37 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 58 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=95, Invalid=247, Unknown=0, NotChecked=0, Total=342 [2018-11-23 12:29:52,470 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states. [2018-11-23 12:29:52,586 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 43. [2018-11-23 12:29:52,586 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:29:52,586 INFO L82 GeneralOperation]: Start isEquivalent. First operand 70 states. Second operand 43 states. [2018-11-23 12:29:52,586 INFO L74 IsIncluded]: Start isIncluded. First operand 70 states. Second operand 43 states. [2018-11-23 12:29:52,587 INFO L87 Difference]: Start difference. First operand 70 states. Second operand 43 states. [2018-11-23 12:29:52,589 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:29:52,589 INFO L93 Difference]: Finished difference Result 70 states and 76 transitions. [2018-11-23 12:29:52,589 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 76 transitions. [2018-11-23 12:29:52,589 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:29:52,590 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:29:52,590 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand 70 states. [2018-11-23 12:29:52,590 INFO L87 Difference]: Start difference. First operand 43 states. Second operand 70 states. [2018-11-23 12:29:52,592 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:29:52,592 INFO L93 Difference]: Finished difference Result 70 states and 76 transitions. [2018-11-23 12:29:52,592 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 76 transitions. [2018-11-23 12:29:52,593 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:29:52,593 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:29:52,593 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:29:52,593 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:29:52,593 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 43 states. [2018-11-23 12:29:52,594 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 46 transitions. [2018-11-23 12:29:52,595 INFO L78 Accepts]: Start accepts. Automaton has 43 states and 46 transitions. Word has length 38 [2018-11-23 12:29:52,595 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:29:52,595 INFO L480 AbstractCegarLoop]: Abstraction has 43 states and 46 transitions. [2018-11-23 12:29:52,595 INFO L481 AbstractCegarLoop]: Interpolant automaton has 13 states. [2018-11-23 12:29:52,595 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 46 transitions. [2018-11-23 12:29:52,596 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2018-11-23 12:29:52,596 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:29:52,596 INFO L402 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:29:52,596 INFO L423 AbstractCegarLoop]: === Iteration 10 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:29:52,596 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:29:52,596 INFO L82 PathProgramCache]: Analyzing trace with hash -1485859323, now seen corresponding path program 6 times [2018-11-23 12:29:52,597 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:29:52,597 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:29:52,597 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:29:52,597 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:29:52,598 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:29:52,632 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:29:53,570 WARN L180 SmtUtils]: Spent 112.00 ms on a formula simplification. DAG size of input: 57 DAG size of output: 43 [2018-11-23 12:29:53,842 WARN L180 SmtUtils]: Spent 104.00 ms on a formula simplification. DAG size of input: 55 DAG size of output: 41 [2018-11-23 12:29:56,090 INFO L256 TraceCheckUtils]: 0: Hoare triple {3136#true} call ULTIMATE.init(); {3136#true} is VALID [2018-11-23 12:29:56,091 INFO L273 TraceCheckUtils]: 1: Hoare triple {3136#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {3136#true} is VALID [2018-11-23 12:29:56,091 INFO L273 TraceCheckUtils]: 2: Hoare triple {3136#true} assume true; {3136#true} is VALID [2018-11-23 12:29:56,092 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3136#true} {3136#true} #83#return; {3136#true} is VALID [2018-11-23 12:29:56,092 INFO L256 TraceCheckUtils]: 4: Hoare triple {3136#true} call #t~ret10 := main(); {3136#true} is VALID [2018-11-23 12:29:56,092 INFO L273 TraceCheckUtils]: 5: Hoare triple {3136#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {3136#true} is VALID [2018-11-23 12:29:56,093 INFO L273 TraceCheckUtils]: 6: Hoare triple {3136#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; {3138#(and (= main_~sum~0 0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:56,094 INFO L273 TraceCheckUtils]: 7: Hoare triple {3138#(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; {3139#(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:29:56,095 INFO L273 TraceCheckUtils]: 8: Hoare triple {3139#(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; {3140#(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) (<= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:56,097 INFO L273 TraceCheckUtils]: 9: Hoare triple {3140#(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) (<= main_~i~0 1) (= |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; {3141#(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_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:56,098 INFO L273 TraceCheckUtils]: 10: Hoare triple {3141#(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_~i~0 1) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3142#(and (or (< (+ main_~i~0 1) ~SIZE~0) (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) 4))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:56,100 INFO L273 TraceCheckUtils]: 11: Hoare triple {3142#(and (or (< (+ main_~i~0 1) ~SIZE~0) (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) 4))) (= |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; {3143#(and (or (and (<= main_~i~0 2) (<= 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) (<= 3 ~SIZE~0)) (< (+ main_~i~0 1) ~SIZE~0)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:56,102 INFO L273 TraceCheckUtils]: 12: Hoare triple {3143#(and (or (and (<= main_~i~0 2) (<= 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) (<= 3 ~SIZE~0)) (< (+ main_~i~0 1) ~SIZE~0)) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3144#(and (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) main_~sum~0) (<= ~SIZE~0 3) (<= 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))))) (<= 3 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:56,103 INFO L273 TraceCheckUtils]: 13: Hoare triple {3144#(and (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) main_~sum~0) (<= ~SIZE~0 3) (<= 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))))) (<= 3 ~SIZE~0))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {3145#(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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) main_~sum~0) (<= ~SIZE~0 3) (<= 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:56,110 INFO L273 TraceCheckUtils]: 14: Hoare triple {3145#(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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) main_~sum~0) (<= ~SIZE~0 3) (<= 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {3146#(and (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))))) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (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)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:56,111 INFO L273 TraceCheckUtils]: 15: Hoare triple {3146#(and (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))))) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (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)) (= |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; {3147#(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 (<= (+ (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 (+ ~SIZE~0 (- 2)))))) main_~sum~0) (<= ~SIZE~0 3) (<= 3 ~SIZE~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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))))) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:56,112 INFO L273 TraceCheckUtils]: 16: Hoare triple {3147#(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 (<= (+ (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 (+ ~SIZE~0 (- 2)))))) main_~sum~0) (<= ~SIZE~0 3) (<= 3 ~SIZE~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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))))) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {3148#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 3)) (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) main_~sum~0) (<= ~SIZE~0 3) (<= 3 ~SIZE~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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:56,114 INFO L273 TraceCheckUtils]: 17: Hoare triple {3148#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 3)) (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) main_~sum~0) (<= ~SIZE~0 3) (<= 3 ~SIZE~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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 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; {3149#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 3)) (and (<= ~SIZE~0 3) (<= 3 ~SIZE~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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~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 (+ ~SIZE~0 (- 2)))))) (+ (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))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:56,116 INFO L273 TraceCheckUtils]: 18: Hoare triple {3149#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 3)) (and (<= ~SIZE~0 3) (<= 3 ~SIZE~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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~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 (+ ~SIZE~0 (- 2)))))) (+ (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))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {3150#(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 (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) main_~sum~0) (<= ~SIZE~0 3) (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (<= 3 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:56,117 INFO L273 TraceCheckUtils]: 19: Hoare triple {3150#(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 (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) main_~sum~0) (<= ~SIZE~0 3) (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (<= 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; {3151#(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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (<= (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)) (<= ~SIZE~0 3) (<= 3 ~SIZE~0)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:56,119 INFO L273 TraceCheckUtils]: 20: Hoare triple {3151#(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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (<= (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)) (<= ~SIZE~0 3) (<= 3 ~SIZE~0)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {3152#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 1) (* 2 ~SIZE~0)) (and (<= 0 main_~sum~0) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (<= main_~sum~0 0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:56,120 INFO L273 TraceCheckUtils]: 21: Hoare triple {3152#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 1) (* 2 ~SIZE~0)) (and (<= 0 main_~sum~0) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (<= main_~sum~0 0))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {3153#(and (<= 0 main_~sum~0) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (<= main_~sum~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:56,122 INFO L273 TraceCheckUtils]: 22: Hoare triple {3153#(and (<= 0 main_~sum~0) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (<= main_~sum~0 0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {3154#(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)) (<= ~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|) 0)) (<= 3 ~SIZE~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:56,123 INFO L273 TraceCheckUtils]: 23: Hoare triple {3154#(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)) (<= ~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|) 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; {3155#(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) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:56,124 INFO L273 TraceCheckUtils]: 24: Hoare triple {3155#(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) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {3156#(and (or (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 main_~i~0) 4) (* 2 ~SIZE~0)) (<= ~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:29:56,127 INFO L273 TraceCheckUtils]: 25: Hoare triple {3156#(and (or (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 main_~i~0) 4) (* 2 ~SIZE~0)) (<= ~SIZE~0 3) (<= 3 ~SIZE~0)) (<= (+ (* 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; {3157#(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))))) (= (+ (* 2 main_~i~0) 4) (* 2 ~SIZE~0)) (<= ~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:29:56,129 INFO L273 TraceCheckUtils]: 26: Hoare triple {3157#(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))))) (= (+ (* 2 main_~i~0) 4) (* 2 ~SIZE~0)) (<= ~SIZE~0 3) (<= 3 ~SIZE~0)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {3158#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= ~SIZE~0 3) (<= 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 (- 2))))))) (<= 3 ~SIZE~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 (- 2)))))) main_~sum~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:56,131 INFO L273 TraceCheckUtils]: 27: Hoare triple {3158#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= ~SIZE~0 3) (<= 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 (- 2))))))) (<= 3 ~SIZE~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 (- 2)))))) 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; {3143#(and (or (and (<= main_~i~0 2) (<= 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) (<= 3 ~SIZE~0)) (< (+ main_~i~0 1) ~SIZE~0)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:56,133 INFO L273 TraceCheckUtils]: 28: Hoare triple {3143#(and (or (and (<= main_~i~0 2) (<= 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) (<= 3 ~SIZE~0)) (< (+ main_~i~0 1) ~SIZE~0)) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {3144#(and (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) main_~sum~0) (<= ~SIZE~0 3) (<= 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))))) (<= 3 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:56,134 INFO L273 TraceCheckUtils]: 29: Hoare triple {3144#(and (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) main_~sum~0) (<= ~SIZE~0 3) (<= 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))))) (<= 3 ~SIZE~0))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {3145#(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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) main_~sum~0) (<= ~SIZE~0 3) (<= 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:56,136 INFO L273 TraceCheckUtils]: 30: Hoare triple {3145#(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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) main_~sum~0) (<= ~SIZE~0 3) (<= 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {3159#(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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (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:29:56,138 INFO L273 TraceCheckUtils]: 31: Hoare triple {3159#(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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (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~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem9;havoc #t~mem9; {3160#(and (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))))) (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|))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:56,140 INFO L273 TraceCheckUtils]: 32: Hoare triple {3160#(and (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))))) (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|))))) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {3161#(and (or (<= ~SIZE~0 (+ main_~i~0 1)) (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)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:56,142 INFO L273 TraceCheckUtils]: 33: Hoare triple {3161#(and (or (<= ~SIZE~0 (+ main_~i~0 1)) (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)) (<= (+ (* 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; {3162#(and (or (<= ~SIZE~0 (+ main_~i~0 1)) (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))))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:56,143 INFO L273 TraceCheckUtils]: 34: Hoare triple {3162#(and (or (<= ~SIZE~0 (+ main_~i~0 1)) (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))))))) (<= (+ (* 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; {3163#(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:29:56,145 INFO L273 TraceCheckUtils]: 35: Hoare triple {3163#(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~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem9;havoc #t~mem9; {3164#(or (<= (+ main_~i~0 2) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} is VALID [2018-11-23 12:29:56,146 INFO L273 TraceCheckUtils]: 36: Hoare triple {3164#(or (<= (+ main_~i~0 2) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {3165#(or (<= (+ main_~i~0 1) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} is VALID [2018-11-23 12:29:56,146 INFO L273 TraceCheckUtils]: 37: Hoare triple {3165#(or (<= (+ main_~i~0 1) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} assume !(~i~0 < ~SIZE~0); {3166#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:29:56,148 INFO L256 TraceCheckUtils]: 38: Hoare triple {3166#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {3167#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:29:56,148 INFO L273 TraceCheckUtils]: 39: Hoare triple {3167#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {3168#(= __VERIFIER_assert_~cond 1)} is VALID [2018-11-23 12:29:56,149 INFO L273 TraceCheckUtils]: 40: Hoare triple {3168#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {3137#false} is VALID [2018-11-23 12:29:56,149 INFO L273 TraceCheckUtils]: 41: Hoare triple {3137#false} assume !false; {3137#false} is VALID [2018-11-23 12:29:56,161 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 0 proven. 36 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:29:56,161 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:29:56,161 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:29:56,171 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 12:29:56,202 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 4 check-sat command(s) [2018-11-23 12:29:56,202 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:29:56,223 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:29:56,225 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:29:57,829 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 61 treesize of output 45 [2018-11-23 12:29:57,914 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:29:57,930 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:29:57,954 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:29:57,963 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:29:58,038 INFO L303 Elim1Store]: Index analysis took 160 ms [2018-11-23 12:29:58,051 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 2 disjoint index pairs (out of 6 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 45 treesize of output 37 [2018-11-23 12:29:58,056 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:29:58,063 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:29:58,076 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:29:58,077 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 3 variables, input treesize:67, output treesize:7 [2018-11-23 12:29:58,143 INFO L256 TraceCheckUtils]: 0: Hoare triple {3136#true} call ULTIMATE.init(); {3136#true} is VALID [2018-11-23 12:29:58,143 INFO L273 TraceCheckUtils]: 1: Hoare triple {3136#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {3136#true} is VALID [2018-11-23 12:29:58,143 INFO L273 TraceCheckUtils]: 2: Hoare triple {3136#true} assume true; {3136#true} is VALID [2018-11-23 12:29:58,143 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3136#true} {3136#true} #83#return; {3136#true} is VALID [2018-11-23 12:29:58,144 INFO L256 TraceCheckUtils]: 4: Hoare triple {3136#true} call #t~ret10 := main(); {3136#true} is VALID [2018-11-23 12:29:58,144 INFO L273 TraceCheckUtils]: 5: Hoare triple {3136#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {3136#true} is VALID [2018-11-23 12:29:58,144 INFO L273 TraceCheckUtils]: 6: Hoare triple {3136#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; {3138#(and (= main_~sum~0 0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:58,145 INFO L273 TraceCheckUtils]: 7: Hoare triple {3138#(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; {3139#(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:29:58,145 INFO L273 TraceCheckUtils]: 8: Hoare triple {3139#(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; {3140#(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) (<= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:58,146 INFO L273 TraceCheckUtils]: 9: Hoare triple {3140#(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) (<= main_~i~0 1) (= |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; {3141#(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_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:58,147 INFO L273 TraceCheckUtils]: 10: Hoare triple {3141#(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_~i~0 1) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3202#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ (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)) main_~sum~0) (<= 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))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:58,149 INFO L273 TraceCheckUtils]: 11: Hoare triple {3202#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ (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)) main_~sum~0) (<= 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))) (= |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; {3206#(and (= |main_~#a~0.offset| 0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (<= 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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= main_~i~0 2) (<= (+ (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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0))))} is VALID [2018-11-23 12:29:58,150 INFO L273 TraceCheckUtils]: 12: Hoare triple {3206#(and (= |main_~#a~0.offset| 0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (<= 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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= main_~i~0 2) (<= (+ (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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0))))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3206#(and (= |main_~#a~0.offset| 0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (<= 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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= main_~i~0 2) (<= (+ (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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0))))} is VALID [2018-11-23 12:29:58,151 INFO L273 TraceCheckUtils]: 13: Hoare triple {3206#(and (= |main_~#a~0.offset| 0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (<= 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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= main_~i~0 2) (<= (+ (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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0))))} assume !(~i~0 < ~SIZE~0); {3206#(and (= |main_~#a~0.offset| 0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (<= 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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= main_~i~0 2) (<= (+ (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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0))))} is VALID [2018-11-23 12:29:58,153 INFO L273 TraceCheckUtils]: 14: Hoare triple {3206#(and (= |main_~#a~0.offset| 0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (<= 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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= main_~i~0 2) (<= (+ (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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0))))} ~i~0 := 0; {3216#(and (exists ((v_prenex_1 Int)) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|)))) (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) main_~sum~0))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:58,154 INFO L273 TraceCheckUtils]: 15: Hoare triple {3216#(and (exists ((v_prenex_1 Int)) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|)))) (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) main_~sum~0))) (= 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; {3220#(and (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |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|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|)))))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:58,156 INFO L273 TraceCheckUtils]: 16: Hoare triple {3220#(and (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |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|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |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; {3224#(and (exists ((v_prenex_1 Int)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|)))) (<= 2 v_prenex_1) (<= v_prenex_1 2))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:58,158 INFO L273 TraceCheckUtils]: 17: Hoare triple {3224#(and (exists ((v_prenex_1 Int)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|)))) (<= 2 v_prenex_1) (<= v_prenex_1 2))) (= 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; {3228#(and (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) (+ (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|)))) (<= (+ (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|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|)))))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:58,160 INFO L273 TraceCheckUtils]: 18: Hoare triple {3228#(and (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) (+ (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|)))) (<= (+ (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|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|)))))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {3232#(and (= main_~i~0 2) (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) (+ (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_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:58,162 INFO L273 TraceCheckUtils]: 19: Hoare triple {3232#(and (= main_~i~0 2) (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) (+ (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_~#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; {3236#(and (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) (+ (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)) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:58,163 INFO L273 TraceCheckUtils]: 20: Hoare triple {3236#(and (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) (+ (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)) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {3236#(and (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) (+ (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)) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:58,165 INFO L273 TraceCheckUtils]: 21: Hoare triple {3236#(and (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) (+ (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)) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {3236#(and (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) (+ (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)) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:58,167 INFO L273 TraceCheckUtils]: 22: Hoare triple {3236#(and (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) (+ (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)) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {3138#(and (= main_~sum~0 0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:58,168 INFO L273 TraceCheckUtils]: 23: Hoare triple {3138#(and (= main_~sum~0 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; {3139#(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:29:58,183 INFO L273 TraceCheckUtils]: 24: Hoare triple {3139#(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~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {3140#(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) (<= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:58,184 INFO L273 TraceCheckUtils]: 25: Hoare triple {3140#(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) (<= main_~i~0 1) (= |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; {3141#(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_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:58,185 INFO L273 TraceCheckUtils]: 26: Hoare triple {3141#(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_~i~0 1) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {3202#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ (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)) main_~sum~0) (<= 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))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:58,186 INFO L273 TraceCheckUtils]: 27: Hoare triple {3202#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= (+ (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)) main_~sum~0) (<= 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))) (= |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; {3206#(and (= |main_~#a~0.offset| 0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (<= 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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= main_~i~0 2) (<= (+ (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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0))))} is VALID [2018-11-23 12:29:58,187 INFO L273 TraceCheckUtils]: 28: Hoare triple {3206#(and (= |main_~#a~0.offset| 0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (<= 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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= main_~i~0 2) (<= (+ (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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0))))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {3206#(and (= |main_~#a~0.offset| 0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (<= 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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= main_~i~0 2) (<= (+ (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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0))))} is VALID [2018-11-23 12:29:58,188 INFO L273 TraceCheckUtils]: 29: Hoare triple {3206#(and (= |main_~#a~0.offset| 0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (<= 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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= main_~i~0 2) (<= (+ (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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0))))} assume !(~i~0 < ~SIZE~0); {3206#(and (= |main_~#a~0.offset| 0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (<= 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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= main_~i~0 2) (<= (+ (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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0))))} is VALID [2018-11-23 12:29:58,190 INFO L273 TraceCheckUtils]: 30: Hoare triple {3206#(and (= |main_~#a~0.offset| 0) (exists ((main_~i~0 Int)) (and (<= 2 main_~i~0) (<= 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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= main_~i~0 2) (<= (+ (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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0))))} ~i~0 := 0; {3216#(and (exists ((v_prenex_1 Int)) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|)))) (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) main_~sum~0))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:58,192 INFO L273 TraceCheckUtils]: 31: Hoare triple {3216#(and (exists ((v_prenex_1 Int)) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|)))) (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) main_~sum~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; {3220#(and (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |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|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|)))))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:58,194 INFO L273 TraceCheckUtils]: 32: Hoare triple {3220#(and (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |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|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |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; {3224#(and (exists ((v_prenex_1 Int)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|)))) (<= 2 v_prenex_1) (<= v_prenex_1 2))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:58,196 INFO L273 TraceCheckUtils]: 33: Hoare triple {3224#(and (exists ((v_prenex_1 Int)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|)))) (<= 2 v_prenex_1) (<= v_prenex_1 2))) (= 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; {3228#(and (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) (+ (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|)))) (<= (+ (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|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|)))))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:58,198 INFO L273 TraceCheckUtils]: 34: Hoare triple {3228#(and (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) (+ (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|)))) (<= (+ (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|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|)))))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {3232#(and (= main_~i~0 2) (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) (+ (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_~#a~0.offset| 0))} is VALID [2018-11-23 12:29:58,199 INFO L273 TraceCheckUtils]: 35: Hoare triple {3232#(and (= main_~i~0 2) (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) (+ (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_~#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; {3166#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:29:58,200 INFO L273 TraceCheckUtils]: 36: Hoare triple {3166#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {3166#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:29:58,201 INFO L273 TraceCheckUtils]: 37: Hoare triple {3166#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} assume !(~i~0 < ~SIZE~0); {3166#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:29:58,201 INFO L256 TraceCheckUtils]: 38: Hoare triple {3166#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {3167#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:29:58,202 INFO L273 TraceCheckUtils]: 39: Hoare triple {3167#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {3168#(= __VERIFIER_assert_~cond 1)} is VALID [2018-11-23 12:29:58,203 INFO L273 TraceCheckUtils]: 40: Hoare triple {3168#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {3137#false} is VALID [2018-11-23 12:29:58,203 INFO L273 TraceCheckUtils]: 41: Hoare triple {3137#false} assume !false; {3137#false} is VALID [2018-11-23 12:29:58,216 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 0 proven. 36 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:29:58,237 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:29:58,237 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [33, 17] total 41 [2018-11-23 12:29:58,238 INFO L78 Accepts]: Start accepts. Automaton has 41 states. Word has length 42 [2018-11-23 12:29:58,238 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:29:58,238 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 41 states. [2018-11-23 12:29:58,357 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:29:58,357 INFO L459 AbstractCegarLoop]: Interpolant automaton has 41 states [2018-11-23 12:29:58,358 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 41 interpolants. [2018-11-23 12:29:58,358 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=181, Invalid=1459, Unknown=0, NotChecked=0, Total=1640 [2018-11-23 12:29:58,359 INFO L87 Difference]: Start difference. First operand 43 states and 46 transitions. Second operand 41 states. [2018-11-23 12:30:00,659 WARN L180 SmtUtils]: Spent 154.00 ms on a formula simplification. DAG size of input: 63 DAG size of output: 59 [2018-11-23 12:30:01,147 WARN L180 SmtUtils]: Spent 102.00 ms on a formula simplification. DAG size of input: 82 DAG size of output: 29 [2018-11-23 12:30:02,561 WARN L180 SmtUtils]: Spent 178.00 ms on a formula simplification. DAG size of input: 67 DAG size of output: 58 [2018-11-23 12:30:02,886 WARN L180 SmtUtils]: Spent 155.00 ms on a formula simplification. DAG size of input: 46 DAG size of output: 46 [2018-11-23 12:30:03,231 WARN L180 SmtUtils]: Spent 191.00 ms on a formula simplification. DAG size of input: 66 DAG size of output: 62 [2018-11-23 12:30:03,531 WARN L180 SmtUtils]: Spent 114.00 ms on a formula simplification. DAG size of input: 53 DAG size of output: 50 [2018-11-23 12:30:05,019 WARN L180 SmtUtils]: Spent 167.00 ms on a formula simplification. DAG size of input: 69 DAG size of output: 52 [2018-11-23 12:30:07,229 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:30:07,230 INFO L93 Difference]: Finished difference Result 86 states and 96 transitions. [2018-11-23 12:30:07,230 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 33 states. [2018-11-23 12:30:07,230 INFO L78 Accepts]: Start accepts. Automaton has 41 states. Word has length 42 [2018-11-23 12:30:07,230 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:30:07,230 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 41 states. [2018-11-23 12:30:07,233 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 81 transitions. [2018-11-23 12:30:07,233 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 41 states. [2018-11-23 12:30:07,234 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 81 transitions. [2018-11-23 12:30:07,235 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 33 states and 81 transitions. [2018-11-23 12:30:07,423 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:30:07,425 INFO L225 Difference]: With dead ends: 86 [2018-11-23 12:30:07,426 INFO L226 Difference]: Without dead ends: 81 [2018-11-23 12:30:07,427 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 101 GetRequests, 25 SyntacticMatches, 13 SemanticMatches, 63 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1092 ImplicationChecksByTransitivity, 6.9s TimeCoverageRelationStatistics Valid=558, Invalid=3602, Unknown=0, NotChecked=0, Total=4160 [2018-11-23 12:30:07,428 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 81 states. [2018-11-23 12:30:08,159 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 81 to 72. [2018-11-23 12:30:08,159 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:30:08,159 INFO L82 GeneralOperation]: Start isEquivalent. First operand 81 states. Second operand 72 states. [2018-11-23 12:30:08,159 INFO L74 IsIncluded]: Start isIncluded. First operand 81 states. Second operand 72 states. [2018-11-23 12:30:08,159 INFO L87 Difference]: Start difference. First operand 81 states. Second operand 72 states. [2018-11-23 12:30:08,162 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:30:08,163 INFO L93 Difference]: Finished difference Result 81 states and 89 transitions. [2018-11-23 12:30:08,163 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 89 transitions. [2018-11-23 12:30:08,163 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:30:08,163 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:30:08,164 INFO L74 IsIncluded]: Start isIncluded. First operand 72 states. Second operand 81 states. [2018-11-23 12:30:08,164 INFO L87 Difference]: Start difference. First operand 72 states. Second operand 81 states. [2018-11-23 12:30:08,165 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:30:08,166 INFO L93 Difference]: Finished difference Result 81 states and 89 transitions. [2018-11-23 12:30:08,166 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 89 transitions. [2018-11-23 12:30:08,166 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:30:08,166 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:30:08,166 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:30:08,166 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:30:08,167 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 72 states. [2018-11-23 12:30:08,168 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 72 states to 72 states and 80 transitions. [2018-11-23 12:30:08,168 INFO L78 Accepts]: Start accepts. Automaton has 72 states and 80 transitions. Word has length 42 [2018-11-23 12:30:08,169 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:30:08,169 INFO L480 AbstractCegarLoop]: Abstraction has 72 states and 80 transitions. [2018-11-23 12:30:08,169 INFO L481 AbstractCegarLoop]: Interpolant automaton has 41 states. [2018-11-23 12:30:08,169 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 80 transitions. [2018-11-23 12:30:08,169 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2018-11-23 12:30:08,170 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:30:08,170 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:30:08,170 INFO L423 AbstractCegarLoop]: === Iteration 11 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:30:08,170 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:30:08,170 INFO L82 PathProgramCache]: Analyzing trace with hash -1946002877, now seen corresponding path program 7 times [2018-11-23 12:30:08,170 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:30:08,171 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:30:08,171 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:30:08,171 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:30:08,172 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:30:08,180 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:30:08,794 INFO L256 TraceCheckUtils]: 0: Hoare triple {3747#true} call ULTIMATE.init(); {3747#true} is VALID [2018-11-23 12:30:08,795 INFO L273 TraceCheckUtils]: 1: Hoare triple {3747#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {3747#true} is VALID [2018-11-23 12:30:08,795 INFO L273 TraceCheckUtils]: 2: Hoare triple {3747#true} assume true; {3747#true} is VALID [2018-11-23 12:30:08,795 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3747#true} {3747#true} #83#return; {3747#true} is VALID [2018-11-23 12:30:08,795 INFO L256 TraceCheckUtils]: 4: Hoare triple {3747#true} call #t~ret10 := main(); {3747#true} is VALID [2018-11-23 12:30:08,795 INFO L273 TraceCheckUtils]: 5: Hoare triple {3747#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {3747#true} is VALID [2018-11-23 12:30:08,796 INFO L273 TraceCheckUtils]: 6: Hoare triple {3747#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; {3749#(= main_~i~0 0)} is VALID [2018-11-23 12:30:08,797 INFO L273 TraceCheckUtils]: 7: Hoare triple {3749#(= 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; {3749#(= main_~i~0 0)} is VALID [2018-11-23 12:30:08,797 INFO L273 TraceCheckUtils]: 8: Hoare triple {3749#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3750#(<= 1 main_~i~0)} is VALID [2018-11-23 12:30:08,798 INFO L273 TraceCheckUtils]: 9: Hoare triple {3750#(<= 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; {3750#(<= 1 main_~i~0)} is VALID [2018-11-23 12:30:08,798 INFO L273 TraceCheckUtils]: 10: Hoare triple {3750#(<= 1 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3751#(<= 2 main_~i~0)} is VALID [2018-11-23 12:30:08,799 INFO L273 TraceCheckUtils]: 11: Hoare triple {3751#(<= 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; {3751#(<= 2 main_~i~0)} is VALID [2018-11-23 12:30:08,799 INFO L273 TraceCheckUtils]: 12: Hoare triple {3751#(<= 2 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3752#(<= 3 main_~i~0)} is VALID [2018-11-23 12:30:08,800 INFO L273 TraceCheckUtils]: 13: Hoare triple {3752#(<= 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; {3753#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:30:08,800 INFO L273 TraceCheckUtils]: 14: Hoare triple {3753#(<= 4 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3753#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:30:08,801 INFO L273 TraceCheckUtils]: 15: Hoare triple {3753#(<= 4 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {3753#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:30:08,801 INFO L273 TraceCheckUtils]: 16: Hoare triple {3753#(<= 4 ~SIZE~0)} ~i~0 := 0; {3753#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:30:08,802 INFO L273 TraceCheckUtils]: 17: Hoare triple {3753#(<= 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; {3753#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:30:08,802 INFO L273 TraceCheckUtils]: 18: Hoare triple {3753#(<= 4 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {3753#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:30:08,803 INFO L273 TraceCheckUtils]: 19: Hoare triple {3753#(<= 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; {3753#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:30:08,803 INFO L273 TraceCheckUtils]: 20: Hoare triple {3753#(<= 4 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {3753#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:30:08,804 INFO L273 TraceCheckUtils]: 21: Hoare triple {3753#(<= 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; {3753#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:30:08,804 INFO L273 TraceCheckUtils]: 22: Hoare triple {3753#(<= 4 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {3753#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:30:08,805 INFO L273 TraceCheckUtils]: 23: Hoare triple {3753#(<= 4 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {3753#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:30:08,806 INFO L273 TraceCheckUtils]: 24: Hoare triple {3753#(<= 4 ~SIZE~0)} ~i~0 := 0; {3753#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:30:08,806 INFO L273 TraceCheckUtils]: 25: Hoare triple {3753#(<= 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; {3753#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:30:08,807 INFO L273 TraceCheckUtils]: 26: Hoare triple {3753#(<= 4 ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {3753#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:30:08,807 INFO L273 TraceCheckUtils]: 27: Hoare triple {3753#(<= 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; {3753#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:30:08,808 INFO L273 TraceCheckUtils]: 28: Hoare triple {3753#(<= 4 ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {3753#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:30:08,808 INFO L273 TraceCheckUtils]: 29: Hoare triple {3753#(<= 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; {3753#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:30:08,809 INFO L273 TraceCheckUtils]: 30: Hoare triple {3753#(<= 4 ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {3753#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:30:08,809 INFO L273 TraceCheckUtils]: 31: Hoare triple {3753#(<= 4 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {3753#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:30:08,810 INFO L273 TraceCheckUtils]: 32: Hoare triple {3753#(<= 4 ~SIZE~0)} ~i~0 := 0; {3754#(and (<= 4 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:30:08,811 INFO L273 TraceCheckUtils]: 33: Hoare triple {3754#(and (<= 4 ~SIZE~0) (= main_~i~0 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; {3754#(and (<= 4 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:30:08,812 INFO L273 TraceCheckUtils]: 34: Hoare triple {3754#(and (<= 4 ~SIZE~0) (= main_~i~0 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {3755#(<= (+ main_~i~0 3) ~SIZE~0)} is VALID [2018-11-23 12:30:08,812 INFO L273 TraceCheckUtils]: 35: Hoare triple {3755#(<= (+ main_~i~0 3) ~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; {3755#(<= (+ main_~i~0 3) ~SIZE~0)} is VALID [2018-11-23 12:30:08,813 INFO L273 TraceCheckUtils]: 36: Hoare triple {3755#(<= (+ main_~i~0 3) ~SIZE~0)} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {3756#(<= (+ main_~i~0 2) ~SIZE~0)} is VALID [2018-11-23 12:30:08,814 INFO L273 TraceCheckUtils]: 37: Hoare triple {3756#(<= (+ main_~i~0 2) ~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; {3756#(<= (+ main_~i~0 2) ~SIZE~0)} is VALID [2018-11-23 12:30:08,814 INFO L273 TraceCheckUtils]: 38: Hoare triple {3756#(<= (+ main_~i~0 2) ~SIZE~0)} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {3757#(<= (+ main_~i~0 1) ~SIZE~0)} is VALID [2018-11-23 12:30:08,815 INFO L273 TraceCheckUtils]: 39: Hoare triple {3757#(<= (+ main_~i~0 1) ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {3748#false} is VALID [2018-11-23 12:30:08,815 INFO L256 TraceCheckUtils]: 40: Hoare triple {3748#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {3748#false} is VALID [2018-11-23 12:30:08,816 INFO L273 TraceCheckUtils]: 41: Hoare triple {3748#false} ~cond := #in~cond; {3748#false} is VALID [2018-11-23 12:30:08,816 INFO L273 TraceCheckUtils]: 42: Hoare triple {3748#false} assume 0 == ~cond; {3748#false} is VALID [2018-11-23 12:30:08,816 INFO L273 TraceCheckUtils]: 43: Hoare triple {3748#false} assume !false; {3748#false} is VALID [2018-11-23 12:30:08,819 INFO L134 CoverageAnalysis]: Checked inductivity of 43 backedges. 4 proven. 21 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2018-11-23 12:30:08,819 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:30:08,819 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:30:08,828 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:30:08,850 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:30:08,864 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:30:08,866 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:30:09,009 INFO L256 TraceCheckUtils]: 0: Hoare triple {3747#true} call ULTIMATE.init(); {3747#true} is VALID [2018-11-23 12:30:09,010 INFO L273 TraceCheckUtils]: 1: Hoare triple {3747#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {3747#true} is VALID [2018-11-23 12:30:09,010 INFO L273 TraceCheckUtils]: 2: Hoare triple {3747#true} assume true; {3747#true} is VALID [2018-11-23 12:30:09,010 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3747#true} {3747#true} #83#return; {3747#true} is VALID [2018-11-23 12:30:09,010 INFO L256 TraceCheckUtils]: 4: Hoare triple {3747#true} call #t~ret10 := main(); {3747#true} is VALID [2018-11-23 12:30:09,010 INFO L273 TraceCheckUtils]: 5: Hoare triple {3747#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {3747#true} is VALID [2018-11-23 12:30:09,011 INFO L273 TraceCheckUtils]: 6: Hoare triple {3747#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; {3779#(<= 0 main_~i~0)} is VALID [2018-11-23 12:30:09,011 INFO L273 TraceCheckUtils]: 7: Hoare triple {3779#(<= 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; {3779#(<= 0 main_~i~0)} is VALID [2018-11-23 12:30:09,012 INFO L273 TraceCheckUtils]: 8: Hoare triple {3779#(<= 0 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3750#(<= 1 main_~i~0)} is VALID [2018-11-23 12:30:09,012 INFO L273 TraceCheckUtils]: 9: Hoare triple {3750#(<= 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; {3750#(<= 1 main_~i~0)} is VALID [2018-11-23 12:30:09,013 INFO L273 TraceCheckUtils]: 10: Hoare triple {3750#(<= 1 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3751#(<= 2 main_~i~0)} is VALID [2018-11-23 12:30:09,013 INFO L273 TraceCheckUtils]: 11: Hoare triple {3751#(<= 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; {3751#(<= 2 main_~i~0)} is VALID [2018-11-23 12:30:09,014 INFO L273 TraceCheckUtils]: 12: Hoare triple {3751#(<= 2 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3752#(<= 3 main_~i~0)} is VALID [2018-11-23 12:30:09,014 INFO L273 TraceCheckUtils]: 13: Hoare triple {3752#(<= 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; {3753#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:30:09,015 INFO L273 TraceCheckUtils]: 14: Hoare triple {3753#(<= 4 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3753#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:30:09,016 INFO L273 TraceCheckUtils]: 15: Hoare triple {3753#(<= 4 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {3753#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:30:09,016 INFO L273 TraceCheckUtils]: 16: Hoare triple {3753#(<= 4 ~SIZE~0)} ~i~0 := 0; {3810#(and (<= main_~i~0 0) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:30:09,017 INFO L273 TraceCheckUtils]: 17: Hoare triple {3810#(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; {3810#(and (<= main_~i~0 0) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:30:09,018 INFO L273 TraceCheckUtils]: 18: Hoare triple {3810#(and (<= main_~i~0 0) (<= 4 ~SIZE~0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {3817#(and (<= main_~i~0 1) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:30:09,019 INFO L273 TraceCheckUtils]: 19: Hoare triple {3817#(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; {3817#(and (<= main_~i~0 1) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:30:09,020 INFO L273 TraceCheckUtils]: 20: Hoare triple {3817#(and (<= main_~i~0 1) (<= 4 ~SIZE~0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {3824#(and (<= main_~i~0 2) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:30:09,020 INFO L273 TraceCheckUtils]: 21: Hoare triple {3824#(and (<= main_~i~0 2) (<= 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; {3824#(and (<= main_~i~0 2) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:30:09,021 INFO L273 TraceCheckUtils]: 22: Hoare triple {3824#(and (<= main_~i~0 2) (<= 4 ~SIZE~0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {3831#(and (<= main_~i~0 3) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:30:09,022 INFO L273 TraceCheckUtils]: 23: Hoare triple {3831#(and (<= main_~i~0 3) (<= 4 ~SIZE~0))} assume !(~i~0 < ~SIZE~0); {3748#false} is VALID [2018-11-23 12:30:09,022 INFO L273 TraceCheckUtils]: 24: Hoare triple {3748#false} ~i~0 := 0; {3748#false} is VALID [2018-11-23 12:30:09,023 INFO L273 TraceCheckUtils]: 25: Hoare triple {3748#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; {3748#false} is VALID [2018-11-23 12:30:09,023 INFO L273 TraceCheckUtils]: 26: Hoare triple {3748#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {3748#false} is VALID [2018-11-23 12:30:09,023 INFO L273 TraceCheckUtils]: 27: Hoare triple {3748#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; {3748#false} is VALID [2018-11-23 12:30:09,023 INFO L273 TraceCheckUtils]: 28: Hoare triple {3748#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {3748#false} is VALID [2018-11-23 12:30:09,023 INFO L273 TraceCheckUtils]: 29: Hoare triple {3748#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; {3748#false} is VALID [2018-11-23 12:30:09,024 INFO L273 TraceCheckUtils]: 30: Hoare triple {3748#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {3748#false} is VALID [2018-11-23 12:30:09,024 INFO L273 TraceCheckUtils]: 31: Hoare triple {3748#false} assume !(~i~0 < ~SIZE~0); {3748#false} is VALID [2018-11-23 12:30:09,024 INFO L273 TraceCheckUtils]: 32: Hoare triple {3748#false} ~i~0 := 0; {3748#false} is VALID [2018-11-23 12:30:09,024 INFO L273 TraceCheckUtils]: 33: Hoare triple {3748#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; {3748#false} is VALID [2018-11-23 12:30:09,024 INFO L273 TraceCheckUtils]: 34: Hoare triple {3748#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {3748#false} is VALID [2018-11-23 12:30:09,025 INFO L273 TraceCheckUtils]: 35: Hoare triple {3748#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; {3748#false} is VALID [2018-11-23 12:30:09,025 INFO L273 TraceCheckUtils]: 36: Hoare triple {3748#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {3748#false} is VALID [2018-11-23 12:30:09,025 INFO L273 TraceCheckUtils]: 37: Hoare triple {3748#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; {3748#false} is VALID [2018-11-23 12:30:09,025 INFO L273 TraceCheckUtils]: 38: Hoare triple {3748#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {3748#false} is VALID [2018-11-23 12:30:09,026 INFO L273 TraceCheckUtils]: 39: Hoare triple {3748#false} assume !(~i~0 < ~SIZE~0); {3748#false} is VALID [2018-11-23 12:30:09,026 INFO L256 TraceCheckUtils]: 40: Hoare triple {3748#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {3748#false} is VALID [2018-11-23 12:30:09,026 INFO L273 TraceCheckUtils]: 41: Hoare triple {3748#false} ~cond := #in~cond; {3748#false} is VALID [2018-11-23 12:30:09,026 INFO L273 TraceCheckUtils]: 42: Hoare triple {3748#false} assume 0 == ~cond; {3748#false} is VALID [2018-11-23 12:30:09,026 INFO L273 TraceCheckUtils]: 43: Hoare triple {3748#false} assume !false; {3748#false} is VALID [2018-11-23 12:30:09,028 INFO L134 CoverageAnalysis]: Checked inductivity of 43 backedges. 9 proven. 16 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2018-11-23 12:30:09,047 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:30:09,047 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 16 [2018-11-23 12:30:09,048 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 44 [2018-11-23 12:30:09,048 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:30:09,048 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states. [2018-11-23 12:30:09,101 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:30:09,101 INFO L459 AbstractCegarLoop]: Interpolant automaton has 16 states [2018-11-23 12:30:09,101 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2018-11-23 12:30:09,102 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=68, Invalid=172, Unknown=0, NotChecked=0, Total=240 [2018-11-23 12:30:09,102 INFO L87 Difference]: Start difference. First operand 72 states and 80 transitions. Second operand 16 states. [2018-11-23 12:30:11,138 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:30:11,138 INFO L93 Difference]: Finished difference Result 122 states and 135 transitions. [2018-11-23 12:30:11,138 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2018-11-23 12:30:11,139 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 44 [2018-11-23 12:30:11,139 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:30:11,139 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-23 12:30:11,141 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 99 transitions. [2018-11-23 12:30:11,141 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-23 12:30:11,143 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 99 transitions. [2018-11-23 12:30:11,143 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 99 transitions. [2018-11-23 12:30:11,262 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:30:11,264 INFO L225 Difference]: With dead ends: 122 [2018-11-23 12:30:11,265 INFO L226 Difference]: Without dead ends: 94 [2018-11-23 12:30:11,265 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 63 GetRequests, 40 SyntacticMatches, 0 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 125 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=149, Invalid=451, Unknown=0, NotChecked=0, Total=600 [2018-11-23 12:30:11,266 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 94 states. [2018-11-23 12:30:11,746 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 94 to 72. [2018-11-23 12:30:11,746 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:30:11,746 INFO L82 GeneralOperation]: Start isEquivalent. First operand 94 states. Second operand 72 states. [2018-11-23 12:30:11,746 INFO L74 IsIncluded]: Start isIncluded. First operand 94 states. Second operand 72 states. [2018-11-23 12:30:11,746 INFO L87 Difference]: Start difference. First operand 94 states. Second operand 72 states. [2018-11-23 12:30:11,748 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:30:11,749 INFO L93 Difference]: Finished difference Result 94 states and 102 transitions. [2018-11-23 12:30:11,749 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 102 transitions. [2018-11-23 12:30:11,749 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:30:11,749 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:30:11,749 INFO L74 IsIncluded]: Start isIncluded. First operand 72 states. Second operand 94 states. [2018-11-23 12:30:11,749 INFO L87 Difference]: Start difference. First operand 72 states. Second operand 94 states. [2018-11-23 12:30:11,751 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:30:11,751 INFO L93 Difference]: Finished difference Result 94 states and 102 transitions. [2018-11-23 12:30:11,751 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 102 transitions. [2018-11-23 12:30:11,752 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:30:11,752 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:30:11,752 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:30:11,752 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:30:11,752 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 72 states. [2018-11-23 12:30:11,754 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 72 states to 72 states and 78 transitions. [2018-11-23 12:30:11,754 INFO L78 Accepts]: Start accepts. Automaton has 72 states and 78 transitions. Word has length 44 [2018-11-23 12:30:11,754 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:30:11,754 INFO L480 AbstractCegarLoop]: Abstraction has 72 states and 78 transitions. [2018-11-23 12:30:11,754 INFO L481 AbstractCegarLoop]: Interpolant automaton has 16 states. [2018-11-23 12:30:11,754 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 78 transitions. [2018-11-23 12:30:11,755 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2018-11-23 12:30:11,755 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:30:11,755 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:30:11,755 INFO L423 AbstractCegarLoop]: === Iteration 12 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:30:11,756 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:30:11,756 INFO L82 PathProgramCache]: Analyzing trace with hash 399152577, now seen corresponding path program 8 times [2018-11-23 12:30:11,756 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:30:11,756 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:30:11,757 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:30:11,757 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:30:11,757 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:30:11,765 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:30:12,445 INFO L256 TraceCheckUtils]: 0: Hoare triple {4389#true} call ULTIMATE.init(); {4389#true} is VALID [2018-11-23 12:30:12,446 INFO L273 TraceCheckUtils]: 1: Hoare triple {4389#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {4389#true} is VALID [2018-11-23 12:30:12,446 INFO L273 TraceCheckUtils]: 2: Hoare triple {4389#true} assume true; {4389#true} is VALID [2018-11-23 12:30:12,446 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4389#true} {4389#true} #83#return; {4389#true} is VALID [2018-11-23 12:30:12,446 INFO L256 TraceCheckUtils]: 4: Hoare triple {4389#true} call #t~ret10 := main(); {4389#true} is VALID [2018-11-23 12:30:12,446 INFO L273 TraceCheckUtils]: 5: Hoare triple {4389#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {4389#true} is VALID [2018-11-23 12:30:12,447 INFO L273 TraceCheckUtils]: 6: Hoare triple {4389#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; {4391#(= main_~i~0 0)} is VALID [2018-11-23 12:30:12,448 INFO L273 TraceCheckUtils]: 7: Hoare triple {4391#(= 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; {4391#(= main_~i~0 0)} is VALID [2018-11-23 12:30:12,448 INFO L273 TraceCheckUtils]: 8: Hoare triple {4391#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4392#(<= main_~i~0 1)} is VALID [2018-11-23 12:30:12,449 INFO L273 TraceCheckUtils]: 9: Hoare triple {4392#(<= 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; {4392#(<= main_~i~0 1)} is VALID [2018-11-23 12:30:12,449 INFO L273 TraceCheckUtils]: 10: Hoare triple {4392#(<= main_~i~0 1)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4393#(<= main_~i~0 2)} is VALID [2018-11-23 12:30:12,449 INFO L273 TraceCheckUtils]: 11: Hoare triple {4393#(<= 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; {4393#(<= main_~i~0 2)} is VALID [2018-11-23 12:30:12,450 INFO L273 TraceCheckUtils]: 12: Hoare triple {4393#(<= main_~i~0 2)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4394#(<= main_~i~0 3)} is VALID [2018-11-23 12:30:12,451 INFO L273 TraceCheckUtils]: 13: Hoare triple {4394#(<= main_~i~0 3)} assume !(~i~0 < ~SIZE~0); {4395#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:30:12,451 INFO L273 TraceCheckUtils]: 14: Hoare triple {4395#(<= ~SIZE~0 3)} ~i~0 := 0; {4395#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:30:12,452 INFO L273 TraceCheckUtils]: 15: Hoare triple {4395#(<= ~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; {4395#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:30:12,452 INFO L273 TraceCheckUtils]: 16: Hoare triple {4395#(<= ~SIZE~0 3)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {4395#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:30:12,453 INFO L273 TraceCheckUtils]: 17: Hoare triple {4395#(<= ~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; {4395#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:30:12,453 INFO L273 TraceCheckUtils]: 18: Hoare triple {4395#(<= ~SIZE~0 3)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {4395#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:30:12,454 INFO L273 TraceCheckUtils]: 19: Hoare triple {4395#(<= ~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; {4395#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:30:12,454 INFO L273 TraceCheckUtils]: 20: Hoare triple {4395#(<= ~SIZE~0 3)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {4395#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:30:12,455 INFO L273 TraceCheckUtils]: 21: Hoare triple {4395#(<= ~SIZE~0 3)} assume !(~i~0 < ~SIZE~0); {4395#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:30:12,456 INFO L273 TraceCheckUtils]: 22: Hoare triple {4395#(<= ~SIZE~0 3)} ~i~0 := 0; {4396#(and (<= ~SIZE~0 3) (= main_~i~0 0))} is VALID [2018-11-23 12:30:12,456 INFO L273 TraceCheckUtils]: 23: Hoare triple {4396#(and (<= ~SIZE~0 3) (= 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; {4396#(and (<= ~SIZE~0 3) (= main_~i~0 0))} is VALID [2018-11-23 12:30:12,457 INFO L273 TraceCheckUtils]: 24: Hoare triple {4396#(and (<= ~SIZE~0 3) (= main_~i~0 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4397#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:30:12,458 INFO L273 TraceCheckUtils]: 25: Hoare triple {4397#(<= ~SIZE~0 (+ 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; {4397#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:30:12,459 INFO L273 TraceCheckUtils]: 26: Hoare triple {4397#(<= ~SIZE~0 (+ main_~i~0 2))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4398#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:30:12,459 INFO L273 TraceCheckUtils]: 27: Hoare triple {4398#(<= ~SIZE~0 (+ 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; {4398#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:30:12,460 INFO L273 TraceCheckUtils]: 28: Hoare triple {4398#(<= ~SIZE~0 (+ main_~i~0 1))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4399#(<= ~SIZE~0 main_~i~0)} is VALID [2018-11-23 12:30:12,461 INFO L273 TraceCheckUtils]: 29: Hoare triple {4399#(<= ~SIZE~0 main_~i~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; {4390#false} is VALID [2018-11-23 12:30:12,461 INFO L273 TraceCheckUtils]: 30: Hoare triple {4390#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4390#false} is VALID [2018-11-23 12:30:12,461 INFO L273 TraceCheckUtils]: 31: Hoare triple {4390#false} assume !(~i~0 < ~SIZE~0); {4390#false} is VALID [2018-11-23 12:30:12,461 INFO L273 TraceCheckUtils]: 32: Hoare triple {4390#false} ~i~0 := 0; {4390#false} is VALID [2018-11-23 12:30:12,462 INFO L273 TraceCheckUtils]: 33: Hoare triple {4390#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; {4390#false} is VALID [2018-11-23 12:30:12,462 INFO L273 TraceCheckUtils]: 34: Hoare triple {4390#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4390#false} is VALID [2018-11-23 12:30:12,462 INFO L273 TraceCheckUtils]: 35: Hoare triple {4390#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; {4390#false} is VALID [2018-11-23 12:30:12,462 INFO L273 TraceCheckUtils]: 36: Hoare triple {4390#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4390#false} is VALID [2018-11-23 12:30:12,462 INFO L273 TraceCheckUtils]: 37: Hoare triple {4390#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; {4390#false} is VALID [2018-11-23 12:30:12,463 INFO L273 TraceCheckUtils]: 38: Hoare triple {4390#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4390#false} is VALID [2018-11-23 12:30:12,463 INFO L273 TraceCheckUtils]: 39: Hoare triple {4390#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; {4390#false} is VALID [2018-11-23 12:30:12,463 INFO L273 TraceCheckUtils]: 40: Hoare triple {4390#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4390#false} is VALID [2018-11-23 12:30:12,463 INFO L273 TraceCheckUtils]: 41: Hoare triple {4390#false} assume !(~i~0 < ~SIZE~0); {4390#false} is VALID [2018-11-23 12:30:12,464 INFO L256 TraceCheckUtils]: 42: Hoare triple {4390#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {4390#false} is VALID [2018-11-23 12:30:12,464 INFO L273 TraceCheckUtils]: 43: Hoare triple {4390#false} ~cond := #in~cond; {4390#false} is VALID [2018-11-23 12:30:12,464 INFO L273 TraceCheckUtils]: 44: Hoare triple {4390#false} assume 0 == ~cond; {4390#false} is VALID [2018-11-23 12:30:12,464 INFO L273 TraceCheckUtils]: 45: Hoare triple {4390#false} assume !false; {4390#false} is VALID [2018-11-23 12:30:12,467 INFO L134 CoverageAnalysis]: Checked inductivity of 50 backedges. 11 proven. 14 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2018-11-23 12:30:12,467 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:30:12,467 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:30:12,489 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:30:12,515 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:30:12,516 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:30:12,533 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:30:12,535 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:30:12,711 INFO L256 TraceCheckUtils]: 0: Hoare triple {4389#true} call ULTIMATE.init(); {4389#true} is VALID [2018-11-23 12:30:12,712 INFO L273 TraceCheckUtils]: 1: Hoare triple {4389#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {4389#true} is VALID [2018-11-23 12:30:12,712 INFO L273 TraceCheckUtils]: 2: Hoare triple {4389#true} assume true; {4389#true} is VALID [2018-11-23 12:30:12,712 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4389#true} {4389#true} #83#return; {4389#true} is VALID [2018-11-23 12:30:12,713 INFO L256 TraceCheckUtils]: 4: Hoare triple {4389#true} call #t~ret10 := main(); {4389#true} is VALID [2018-11-23 12:30:12,713 INFO L273 TraceCheckUtils]: 5: Hoare triple {4389#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {4389#true} is VALID [2018-11-23 12:30:12,714 INFO L273 TraceCheckUtils]: 6: Hoare triple {4389#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; {4421#(<= main_~i~0 0)} is VALID [2018-11-23 12:30:12,714 INFO L273 TraceCheckUtils]: 7: Hoare triple {4421#(<= 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; {4421#(<= main_~i~0 0)} is VALID [2018-11-23 12:30:12,714 INFO L273 TraceCheckUtils]: 8: Hoare triple {4421#(<= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4392#(<= main_~i~0 1)} is VALID [2018-11-23 12:30:12,715 INFO L273 TraceCheckUtils]: 9: Hoare triple {4392#(<= 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; {4392#(<= main_~i~0 1)} is VALID [2018-11-23 12:30:12,715 INFO L273 TraceCheckUtils]: 10: Hoare triple {4392#(<= main_~i~0 1)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4393#(<= main_~i~0 2)} is VALID [2018-11-23 12:30:12,716 INFO L273 TraceCheckUtils]: 11: Hoare triple {4393#(<= 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; {4393#(<= main_~i~0 2)} is VALID [2018-11-23 12:30:12,716 INFO L273 TraceCheckUtils]: 12: Hoare triple {4393#(<= main_~i~0 2)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4394#(<= main_~i~0 3)} is VALID [2018-11-23 12:30:12,716 INFO L273 TraceCheckUtils]: 13: Hoare triple {4394#(<= main_~i~0 3)} assume !(~i~0 < ~SIZE~0); {4395#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:30:12,717 INFO L273 TraceCheckUtils]: 14: Hoare triple {4395#(<= ~SIZE~0 3)} ~i~0 := 0; {4395#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:30:12,717 INFO L273 TraceCheckUtils]: 15: Hoare triple {4395#(<= ~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; {4395#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:30:12,718 INFO L273 TraceCheckUtils]: 16: Hoare triple {4395#(<= ~SIZE~0 3)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {4395#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:30:12,719 INFO L273 TraceCheckUtils]: 17: Hoare triple {4395#(<= ~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; {4395#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:30:12,719 INFO L273 TraceCheckUtils]: 18: Hoare triple {4395#(<= ~SIZE~0 3)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {4395#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:30:12,720 INFO L273 TraceCheckUtils]: 19: Hoare triple {4395#(<= ~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; {4395#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:30:12,720 INFO L273 TraceCheckUtils]: 20: Hoare triple {4395#(<= ~SIZE~0 3)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {4395#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:30:12,721 INFO L273 TraceCheckUtils]: 21: Hoare triple {4395#(<= ~SIZE~0 3)} assume !(~i~0 < ~SIZE~0); {4395#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:30:12,721 INFO L273 TraceCheckUtils]: 22: Hoare triple {4395#(<= ~SIZE~0 3)} ~i~0 := 0; {4470#(and (<= 0 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:30:12,722 INFO L273 TraceCheckUtils]: 23: Hoare triple {4470#(and (<= 0 main_~i~0) (<= ~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; {4470#(and (<= 0 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:30:12,723 INFO L273 TraceCheckUtils]: 24: Hoare triple {4470#(and (<= 0 main_~i~0) (<= ~SIZE~0 3))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4477#(and (<= 1 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:30:12,724 INFO L273 TraceCheckUtils]: 25: Hoare triple {4477#(and (<= 1 main_~i~0) (<= ~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; {4477#(and (<= 1 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:30:12,725 INFO L273 TraceCheckUtils]: 26: Hoare triple {4477#(and (<= 1 main_~i~0) (<= ~SIZE~0 3))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4484#(and (<= 2 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:30:12,725 INFO L273 TraceCheckUtils]: 27: Hoare triple {4484#(and (<= 2 main_~i~0) (<= ~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; {4484#(and (<= 2 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:30:12,726 INFO L273 TraceCheckUtils]: 28: Hoare triple {4484#(and (<= 2 main_~i~0) (<= ~SIZE~0 3))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4491#(and (<= ~SIZE~0 3) (<= 3 main_~i~0))} is VALID [2018-11-23 12:30:12,727 INFO L273 TraceCheckUtils]: 29: Hoare triple {4491#(and (<= ~SIZE~0 3) (<= 3 main_~i~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; {4390#false} is VALID [2018-11-23 12:30:12,727 INFO L273 TraceCheckUtils]: 30: Hoare triple {4390#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4390#false} is VALID [2018-11-23 12:30:12,728 INFO L273 TraceCheckUtils]: 31: Hoare triple {4390#false} assume !(~i~0 < ~SIZE~0); {4390#false} is VALID [2018-11-23 12:30:12,728 INFO L273 TraceCheckUtils]: 32: Hoare triple {4390#false} ~i~0 := 0; {4390#false} is VALID [2018-11-23 12:30:12,728 INFO L273 TraceCheckUtils]: 33: Hoare triple {4390#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; {4390#false} is VALID [2018-11-23 12:30:12,728 INFO L273 TraceCheckUtils]: 34: Hoare triple {4390#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4390#false} is VALID [2018-11-23 12:30:12,728 INFO L273 TraceCheckUtils]: 35: Hoare triple {4390#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; {4390#false} is VALID [2018-11-23 12:30:12,729 INFO L273 TraceCheckUtils]: 36: Hoare triple {4390#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4390#false} is VALID [2018-11-23 12:30:12,729 INFO L273 TraceCheckUtils]: 37: Hoare triple {4390#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; {4390#false} is VALID [2018-11-23 12:30:12,729 INFO L273 TraceCheckUtils]: 38: Hoare triple {4390#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4390#false} is VALID [2018-11-23 12:30:12,729 INFO L273 TraceCheckUtils]: 39: Hoare triple {4390#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; {4390#false} is VALID [2018-11-23 12:30:12,730 INFO L273 TraceCheckUtils]: 40: Hoare triple {4390#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4390#false} is VALID [2018-11-23 12:30:12,730 INFO L273 TraceCheckUtils]: 41: Hoare triple {4390#false} assume !(~i~0 < ~SIZE~0); {4390#false} is VALID [2018-11-23 12:30:12,730 INFO L256 TraceCheckUtils]: 42: Hoare triple {4390#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {4390#false} is VALID [2018-11-23 12:30:12,730 INFO L273 TraceCheckUtils]: 43: Hoare triple {4390#false} ~cond := #in~cond; {4390#false} is VALID [2018-11-23 12:30:12,731 INFO L273 TraceCheckUtils]: 44: Hoare triple {4390#false} assume 0 == ~cond; {4390#false} is VALID [2018-11-23 12:30:12,731 INFO L273 TraceCheckUtils]: 45: Hoare triple {4390#false} assume !false; {4390#false} is VALID [2018-11-23 12:30:12,733 INFO L134 CoverageAnalysis]: Checked inductivity of 50 backedges. 16 proven. 9 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2018-11-23 12:30:12,755 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:30:12,755 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 16 [2018-11-23 12:30:12,756 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 46 [2018-11-23 12:30:12,756 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:30:12,756 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states. [2018-11-23 12:30:12,798 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:30:12,799 INFO L459 AbstractCegarLoop]: Interpolant automaton has 16 states [2018-11-23 12:30:12,799 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2018-11-23 12:30:12,799 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=65, Invalid=175, Unknown=0, NotChecked=0, Total=240 [2018-11-23 12:30:12,800 INFO L87 Difference]: Start difference. First operand 72 states and 78 transitions. Second operand 16 states. [2018-11-23 12:30:14,091 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:30:14,092 INFO L93 Difference]: Finished difference Result 106 states and 114 transitions. [2018-11-23 12:30:14,092 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2018-11-23 12:30:14,092 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 46 [2018-11-23 12:30:14,092 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:30:14,092 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-23 12:30:14,094 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 100 transitions. [2018-11-23 12:30:14,094 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-23 12:30:14,096 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 100 transitions. [2018-11-23 12:30:14,096 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 100 transitions. [2018-11-23 12:30:14,236 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 100 edges. 100 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:30:14,238 INFO L225 Difference]: With dead ends: 106 [2018-11-23 12:30:14,238 INFO L226 Difference]: Without dead ends: 55 [2018-11-23 12:30:14,239 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 60 GetRequests, 42 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 78 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=103, Invalid=277, Unknown=0, NotChecked=0, Total=380 [2018-11-23 12:30:14,239 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2018-11-23 12:30:14,437 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 51. [2018-11-23 12:30:14,437 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:30:14,437 INFO L82 GeneralOperation]: Start isEquivalent. First operand 55 states. Second operand 51 states. [2018-11-23 12:30:14,437 INFO L74 IsIncluded]: Start isIncluded. First operand 55 states. Second operand 51 states. [2018-11-23 12:30:14,438 INFO L87 Difference]: Start difference. First operand 55 states. Second operand 51 states. [2018-11-23 12:30:14,439 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:30:14,439 INFO L93 Difference]: Finished difference Result 55 states and 58 transitions. [2018-11-23 12:30:14,440 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 58 transitions. [2018-11-23 12:30:14,440 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:30:14,440 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:30:14,440 INFO L74 IsIncluded]: Start isIncluded. First operand 51 states. Second operand 55 states. [2018-11-23 12:30:14,440 INFO L87 Difference]: Start difference. First operand 51 states. Second operand 55 states. [2018-11-23 12:30:14,442 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:30:14,442 INFO L93 Difference]: Finished difference Result 55 states and 58 transitions. [2018-11-23 12:30:14,442 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 58 transitions. [2018-11-23 12:30:14,442 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:30:14,442 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:30:14,442 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:30:14,443 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:30:14,443 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 51 states. [2018-11-23 12:30:14,444 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 54 transitions. [2018-11-23 12:30:14,444 INFO L78 Accepts]: Start accepts. Automaton has 51 states and 54 transitions. Word has length 46 [2018-11-23 12:30:14,444 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:30:14,444 INFO L480 AbstractCegarLoop]: Abstraction has 51 states and 54 transitions. [2018-11-23 12:30:14,444 INFO L481 AbstractCegarLoop]: Interpolant automaton has 16 states. [2018-11-23 12:30:14,444 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 54 transitions. [2018-11-23 12:30:14,445 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2018-11-23 12:30:14,445 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:30:14,445 INFO L402 BasicCegarLoop]: trace histogram [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] [2018-11-23 12:30:14,445 INFO L423 AbstractCegarLoop]: === Iteration 13 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:30:14,446 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:30:14,446 INFO L82 PathProgramCache]: Analyzing trace with hash 1260583037, now seen corresponding path program 9 times [2018-11-23 12:30:14,446 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:30:14,446 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:30:14,447 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:30:14,447 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:30:14,447 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:30:14,483 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:30:15,051 WARN L180 SmtUtils]: Spent 195.00 ms on a formula simplification. DAG size of input: 15 DAG size of output: 8 [2018-11-23 12:30:15,852 WARN L180 SmtUtils]: Spent 117.00 ms on a formula simplification. DAG size of input: 56 DAG size of output: 48 [2018-11-23 12:30:16,035 WARN L180 SmtUtils]: Spent 117.00 ms on a formula simplification. DAG size of input: 54 DAG size of output: 46 [2018-11-23 12:30:20,411 INFO L256 TraceCheckUtils]: 0: Hoare triple {4894#true} call ULTIMATE.init(); {4894#true} is VALID [2018-11-23 12:30:20,411 INFO L273 TraceCheckUtils]: 1: Hoare triple {4894#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {4894#true} is VALID [2018-11-23 12:30:20,412 INFO L273 TraceCheckUtils]: 2: Hoare triple {4894#true} assume true; {4894#true} is VALID [2018-11-23 12:30:20,412 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4894#true} {4894#true} #83#return; {4894#true} is VALID [2018-11-23 12:30:20,412 INFO L256 TraceCheckUtils]: 4: Hoare triple {4894#true} call #t~ret10 := main(); {4894#true} is VALID [2018-11-23 12:30:20,412 INFO L273 TraceCheckUtils]: 5: Hoare triple {4894#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {4894#true} is VALID [2018-11-23 12:30:20,413 INFO L273 TraceCheckUtils]: 6: Hoare triple {4894#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; {4896#(and (= main_~sum~0 0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:20,414 INFO L273 TraceCheckUtils]: 7: Hoare triple {4896#(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; {4897#(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:30:20,414 INFO L273 TraceCheckUtils]: 8: Hoare triple {4897#(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; {4898#(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) (<= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:20,415 INFO L273 TraceCheckUtils]: 9: Hoare triple {4898#(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) (<= main_~i~0 1) (= |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; {4899#(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_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:20,416 INFO L273 TraceCheckUtils]: 10: Hoare triple {4899#(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_~i~0 1) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4900#(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|)))) (<= 2 main_~i~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|))) main_~sum~0) (<= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:20,417 INFO L273 TraceCheckUtils]: 11: Hoare triple {4900#(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|)))) (<= 2 main_~i~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|))) main_~sum~0) (<= main_~i~0 2) (= |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; {4901#(and (<= 2 main_~i~0) (<= 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))))) (<= (+ (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)))) main_~sum~0) (<= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:20,419 INFO L273 TraceCheckUtils]: 12: Hoare triple {4901#(and (<= 2 main_~i~0) (<= 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))))) (<= (+ (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)))) main_~sum~0) (<= main_~i~0 2) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4902#(and (or (and (<= main_~i~0 3) (<= (+ (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|) (+ (* 2 (+ main_~i~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 (+ main_~i~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ main_~i~0 (- 2))) |main_~#a~0.offset|)))) (<= 3 main_~i~0)) (< (+ main_~i~0 1) ~SIZE~0)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:20,421 INFO L273 TraceCheckUtils]: 13: Hoare triple {4902#(and (or (and (<= main_~i~0 3) (<= (+ (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|) (+ (* 2 (+ main_~i~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 (+ main_~i~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ main_~i~0 (- 2))) |main_~#a~0.offset|)))) (<= 3 main_~i~0)) (< (+ main_~i~0 1) ~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; {4903#(and (or (and (<= main_~i~0 3) (<= (+ (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|) (+ (* 2 (+ main_~i~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|) (+ |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|) (+ (* 2 (+ main_~i~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= 4 ~SIZE~0)) (< (+ main_~i~0 1) ~SIZE~0)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:20,423 INFO L273 TraceCheckUtils]: 14: Hoare triple {4903#(and (or (and (<= main_~i~0 3) (<= (+ (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|) (+ (* 2 (+ main_~i~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|) (+ |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|) (+ (* 2 (+ main_~i~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= 4 ~SIZE~0)) (< (+ main_~i~0 1) ~SIZE~0)) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4904#(and (or (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))) (<= ~SIZE~0 4) (<= (+ (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 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) main_~sum~0) (<= 4 ~SIZE~0)) (<= (+ main_~i~0 1) ~SIZE~0)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:20,425 INFO L273 TraceCheckUtils]: 15: Hoare triple {4904#(and (or (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))) (<= ~SIZE~0 4) (<= (+ (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 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) main_~sum~0) (<= 4 ~SIZE~0)) (<= (+ main_~i~0 1) ~SIZE~0)) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {4905#(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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))) (<= ~SIZE~0 4) (<= (+ (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 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) main_~sum~0) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:20,426 INFO L273 TraceCheckUtils]: 16: Hoare triple {4905#(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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))) (<= ~SIZE~0 4) (<= (+ (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 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) main_~sum~0) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {4906#(and (or (<= 4 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1))) (or (<= ~SIZE~0 4) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0)) (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (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 (- 3))) |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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (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 (- 3))) |main_~#a~0.offset|))) main_~sum~0) (<= ~SIZE~0 4) (<= 4 ~SIZE~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:20,427 INFO L273 TraceCheckUtils]: 17: Hoare triple {4906#(and (or (<= 4 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1))) (or (<= ~SIZE~0 4) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0)) (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (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 (- 3))) |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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (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 (- 3))) |main_~#a~0.offset|))) main_~sum~0) (<= ~SIZE~0 4) (<= 4 ~SIZE~0)) (not (= 0 (+ (* 2 main_~i~0) |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; {4907#(and (or (<= 4 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1))) (or (and (<= ~SIZE~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 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) main_~sum~0) (<= 4 ~SIZE~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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |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:30:20,429 INFO L273 TraceCheckUtils]: 18: Hoare triple {4907#(and (or (<= 4 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1))) (or (and (<= ~SIZE~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 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) main_~sum~0) (<= 4 ~SIZE~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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |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))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {4908#(and (or (and (<= ~SIZE~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 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) main_~sum~0) (<= 4 ~SIZE~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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |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))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:20,431 INFO L273 TraceCheckUtils]: 19: Hoare triple {4908#(and (or (and (<= ~SIZE~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 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) main_~sum~0) (<= 4 ~SIZE~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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |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))) (= |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; {4909#(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 (<= ~SIZE~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 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))) (<= 4 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:20,433 INFO L273 TraceCheckUtils]: 20: Hoare triple {4909#(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 (<= ~SIZE~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 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))) (<= 4 ~SIZE~0))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {4910#(and (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) main_~sum~0) (<= ~SIZE~0 4) (<= 4 ~SIZE~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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))))) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 3)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:20,434 INFO L273 TraceCheckUtils]: 21: Hoare triple {4910#(and (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) main_~sum~0) (<= ~SIZE~0 4) (<= 4 ~SIZE~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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))))) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 3)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 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; {4911#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 3)) (and (<= ~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) (+ (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 (+ ~SIZE~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 (+ ~SIZE~0 (- 2)))))) (+ (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))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:20,436 INFO L273 TraceCheckUtils]: 22: Hoare triple {4911#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 3)) (and (<= ~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) (+ (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 (+ ~SIZE~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 (+ ~SIZE~0 (- 2)))))) (+ (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))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {4912#(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 (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) main_~sum~0) (<= ~SIZE~0 4) (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (<= 4 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:20,438 INFO L273 TraceCheckUtils]: 23: Hoare triple {4912#(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 (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) main_~sum~0) (<= ~SIZE~0 4) (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (<= 4 ~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; {4913#(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) (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 (+ ~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)) (<= ~SIZE~0 4) (<= 4 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:20,440 INFO L273 TraceCheckUtils]: 24: Hoare triple {4913#(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) (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 (+ ~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)) (<= ~SIZE~0 4) (<= 4 ~SIZE~0))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {4914#(and (= |main_~#a~0.offset| 0) (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 1) (* 2 ~SIZE~0)) (and (<= 0 main_~sum~0) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (<= main_~sum~0 0))))} is VALID [2018-11-23 12:30:20,441 INFO L273 TraceCheckUtils]: 25: Hoare triple {4914#(and (= |main_~#a~0.offset| 0) (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 1) (* 2 ~SIZE~0)) (and (<= 0 main_~sum~0) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (<= main_~sum~0 0))))} assume !(~i~0 < ~SIZE~0); {4915#(and (<= 0 main_~sum~0) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (<= main_~sum~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:20,442 INFO L273 TraceCheckUtils]: 26: Hoare triple {4915#(and (<= 0 main_~sum~0) (<= ~SIZE~0 4) (<= 4 ~SIZE~0) (<= main_~sum~0 0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {4916#(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)) (<= ~SIZE~0 4) (<= (+ (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)) (<= 4 ~SIZE~0)) (and (or (<= 4 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1))) (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:30:20,444 INFO L273 TraceCheckUtils]: 27: Hoare triple {4916#(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)) (<= ~SIZE~0 4) (<= (+ (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)) (<= 4 ~SIZE~0)) (and (or (<= 4 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1))) (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~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {4917#(and (= |main_~#a~0.offset| 0) (or (and (or (<= 4 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1))) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (or (<= ~SIZE~0 4) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 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) (<= ~SIZE~0 4) (<= 4 ~SIZE~0))))} is VALID [2018-11-23 12:30:20,445 INFO L273 TraceCheckUtils]: 28: Hoare triple {4917#(and (= |main_~#a~0.offset| 0) (or (and (or (<= 4 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1))) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (or (<= ~SIZE~0 4) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 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) (<= ~SIZE~0 4) (<= 4 ~SIZE~0))))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4918#(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 (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) 0)) (<= (select (select |#memory_int| |main_~#a~0.base|) 0) main_~sum~0) (<= ~SIZE~0 4) (<= 4 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:20,447 INFO L273 TraceCheckUtils]: 29: Hoare triple {4918#(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 (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) 0)) (<= (select (select |#memory_int| |main_~#a~0.base|) 0) main_~sum~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; {4919#(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 (<= (+ (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))))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:20,449 INFO L273 TraceCheckUtils]: 30: Hoare triple {4919#(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 (<= (+ (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))))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0))) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4920#(and (or (<= ~SIZE~0 (+ main_~i~0 1)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |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|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))) (<= ~SIZE~0 4) (<= 4 ~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:30:20,450 INFO L273 TraceCheckUtils]: 31: Hoare triple {4920#(and (or (<= ~SIZE~0 (+ main_~i~0 1)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |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|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0)) (<= (+ (* 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; {4921#(and (or (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 main_~i~0))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))) (<= ~SIZE~0 4) (<= (+ (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|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) main_~sum~0) (<= 4 ~SIZE~0)) (<= ~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:30:20,452 INFO L273 TraceCheckUtils]: 32: Hoare triple {4921#(and (or (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 main_~i~0))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))) (<= ~SIZE~0 4) (<= (+ (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|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) main_~sum~0) (<= 4 ~SIZE~0)) (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4922#(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) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) main_~sum~0) (<= ~SIZE~0 4) (<= 4 ~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 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:20,454 INFO L273 TraceCheckUtils]: 33: Hoare triple {4922#(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) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) main_~sum~0) (<= ~SIZE~0 4) (<= 4 ~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 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |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; {4903#(and (or (and (<= main_~i~0 3) (<= (+ (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|) (+ (* 2 (+ main_~i~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|) (+ |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|) (+ (* 2 (+ main_~i~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= 4 ~SIZE~0)) (< (+ main_~i~0 1) ~SIZE~0)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:20,457 INFO L273 TraceCheckUtils]: 34: Hoare triple {4903#(and (or (and (<= main_~i~0 3) (<= (+ (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|) (+ (* 2 (+ main_~i~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|) (+ |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|) (+ (* 2 (+ main_~i~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= 4 ~SIZE~0)) (< (+ main_~i~0 1) ~SIZE~0)) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4904#(and (or (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))) (<= ~SIZE~0 4) (<= (+ (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 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) main_~sum~0) (<= 4 ~SIZE~0)) (<= (+ main_~i~0 1) ~SIZE~0)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:20,459 INFO L273 TraceCheckUtils]: 35: Hoare triple {4904#(and (or (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))) (<= ~SIZE~0 4) (<= (+ (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 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) main_~sum~0) (<= 4 ~SIZE~0)) (<= (+ main_~i~0 1) ~SIZE~0)) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {4905#(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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))) (<= ~SIZE~0 4) (<= (+ (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 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) main_~sum~0) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:20,460 INFO L273 TraceCheckUtils]: 36: Hoare triple {4905#(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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))) (<= ~SIZE~0 4) (<= (+ (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 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) main_~sum~0) (<= 4 ~SIZE~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {4923#(and (or (and (or (<= 4 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1))) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (or (<= ~SIZE~0 4) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0))) (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |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:30:20,462 INFO L273 TraceCheckUtils]: 37: Hoare triple {4923#(and (or (and (or (<= 4 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1))) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (or (<= ~SIZE~0 4) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0))) (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |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~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem9;havoc #t~mem9; {4924#(and (or (and (or (<= 4 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1))) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (or (<= ~SIZE~0 4) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0))) (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:20,465 INFO L273 TraceCheckUtils]: 38: Hoare triple {4924#(and (or (and (or (<= 4 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1))) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (or (<= ~SIZE~0 4) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0))) (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4925#(and (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0)) (<= (+ main_~i~0 4) ~SIZE~0) (<= ~SIZE~0 (+ main_~i~0 2))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:20,466 INFO L273 TraceCheckUtils]: 39: Hoare triple {4925#(and (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0)) (<= (+ main_~i~0 4) ~SIZE~0) (<= ~SIZE~0 (+ main_~i~0 2))) (= |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; {4926#(and (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))))) (<= (+ main_~i~0 4) ~SIZE~0) (<= ~SIZE~0 (+ main_~i~0 2))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:20,468 INFO L273 TraceCheckUtils]: 40: Hoare triple {4926#(and (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))))) (<= (+ main_~i~0 4) ~SIZE~0) (<= ~SIZE~0 (+ main_~i~0 2))) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4927#(and (or (<= ~SIZE~0 (+ main_~i~0 1)) (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)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:20,470 INFO L273 TraceCheckUtils]: 41: Hoare triple {4927#(and (or (<= ~SIZE~0 (+ main_~i~0 1)) (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)) (<= (+ (* 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; {4928#(and (or (<= ~SIZE~0 (+ main_~i~0 1)) (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))))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:20,471 INFO L273 TraceCheckUtils]: 42: Hoare triple {4928#(and (or (<= ~SIZE~0 (+ main_~i~0 1)) (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))))))) (<= (+ (* 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; {4929#(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:30:20,473 INFO L273 TraceCheckUtils]: 43: Hoare triple {4929#(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~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem9;havoc #t~mem9; {4930#(or (<= (+ main_~i~0 2) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} is VALID [2018-11-23 12:30:20,474 INFO L273 TraceCheckUtils]: 44: Hoare triple {4930#(or (<= (+ main_~i~0 2) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4931#(or (<= (+ main_~i~0 1) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} is VALID [2018-11-23 12:30:20,475 INFO L273 TraceCheckUtils]: 45: Hoare triple {4931#(or (<= (+ main_~i~0 1) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} assume !(~i~0 < ~SIZE~0); {4932#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:30:20,476 INFO L256 TraceCheckUtils]: 46: Hoare triple {4932#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {4933#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:30:20,477 INFO L273 TraceCheckUtils]: 47: Hoare triple {4933#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {4934#(= __VERIFIER_assert_~cond 1)} is VALID [2018-11-23 12:30:20,477 INFO L273 TraceCheckUtils]: 48: Hoare triple {4934#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {4895#false} is VALID [2018-11-23 12:30:20,477 INFO L273 TraceCheckUtils]: 49: Hoare triple {4895#false} assume !false; {4895#false} is VALID [2018-11-23 12:30:20,497 INFO L134 CoverageAnalysis]: Checked inductivity of 64 backedges. 0 proven. 64 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:30:20,497 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:30:20,497 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:30:20,514 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:30:20,541 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 5 check-sat command(s) [2018-11-23 12:30:20,541 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:30:20,556 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:30:20,558 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:30:23,121 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 89 treesize of output 65 [2018-11-23 12:30:23,134 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:30:23,136 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:30:23,137 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:30:23,138 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:30:23,139 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:30:23,140 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:30:23,141 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:30:23,142 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:30:23,167 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 6 select indices, 6 select index equivalence classes, 5 disjoint index pairs (out of 15 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 65 treesize of output 80 [2018-11-23 12:30:23,175 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:30:23,190 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:30:23,200 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:30:23,201 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 3 variables, input treesize:95, output treesize:7 [2018-11-23 12:30:23,304 INFO L256 TraceCheckUtils]: 0: Hoare triple {4894#true} call ULTIMATE.init(); {4894#true} is VALID [2018-11-23 12:30:23,304 INFO L273 TraceCheckUtils]: 1: Hoare triple {4894#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {4894#true} is VALID [2018-11-23 12:30:23,304 INFO L273 TraceCheckUtils]: 2: Hoare triple {4894#true} assume true; {4894#true} is VALID [2018-11-23 12:30:23,305 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4894#true} {4894#true} #83#return; {4894#true} is VALID [2018-11-23 12:30:23,305 INFO L256 TraceCheckUtils]: 4: Hoare triple {4894#true} call #t~ret10 := main(); {4894#true} is VALID [2018-11-23 12:30:23,305 INFO L273 TraceCheckUtils]: 5: Hoare triple {4894#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {4894#true} is VALID [2018-11-23 12:30:23,305 INFO L273 TraceCheckUtils]: 6: Hoare triple {4894#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; {4896#(and (= main_~sum~0 0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,306 INFO L273 TraceCheckUtils]: 7: Hoare triple {4896#(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; {4897#(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:30:23,307 INFO L273 TraceCheckUtils]: 8: Hoare triple {4897#(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; {4898#(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) (<= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,307 INFO L273 TraceCheckUtils]: 9: Hoare triple {4898#(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) (<= main_~i~0 1) (= |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; {4899#(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_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,308 INFO L273 TraceCheckUtils]: 10: Hoare triple {4899#(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_~i~0 1) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4900#(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|)))) (<= 2 main_~i~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|))) main_~sum~0) (<= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,309 INFO L273 TraceCheckUtils]: 11: Hoare triple {4900#(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|)))) (<= 2 main_~i~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|))) main_~sum~0) (<= main_~i~0 2) (= |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; {4901#(and (<= 2 main_~i~0) (<= 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))))) (<= (+ (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)))) main_~sum~0) (<= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,310 INFO L273 TraceCheckUtils]: 12: Hoare triple {4901#(and (<= 2 main_~i~0) (<= 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))))) (<= (+ (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)))) main_~sum~0) (<= main_~i~0 2) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4974#(and (<= main_~i~0 3) (<= (+ (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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 4)))) main_~sum~0) (<= 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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 4))))) (<= 3 main_~i~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,312 INFO L273 TraceCheckUtils]: 13: Hoare triple {4974#(and (<= main_~i~0 3) (<= (+ (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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 4)))) main_~sum~0) (<= 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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 4))))) (<= 3 main_~i~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; {4978#(and (exists ((main_~i~0 Int)) (and (<= main_~i~0 3) (<= 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) (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|) (+ (* 2 main_~i~0) |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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 3 main_~i~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,314 INFO L273 TraceCheckUtils]: 14: Hoare triple {4978#(and (exists ((main_~i~0 Int)) (and (<= main_~i~0 3) (<= 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) (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|) (+ (* 2 main_~i~0) |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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 3 main_~i~0))) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4978#(and (exists ((main_~i~0 Int)) (and (<= main_~i~0 3) (<= 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) (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|) (+ (* 2 main_~i~0) |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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 3 main_~i~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,315 INFO L273 TraceCheckUtils]: 15: Hoare triple {4978#(and (exists ((main_~i~0 Int)) (and (<= main_~i~0 3) (<= 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) (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|) (+ (* 2 main_~i~0) |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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 3 main_~i~0))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {4978#(and (exists ((main_~i~0 Int)) (and (<= main_~i~0 3) (<= 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) (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|) (+ (* 2 main_~i~0) |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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 3 main_~i~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,317 INFO L273 TraceCheckUtils]: 16: Hoare triple {4978#(and (exists ((main_~i~0 Int)) (and (<= main_~i~0 3) (<= 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) (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|) (+ (* 2 main_~i~0) |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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 3 main_~i~0))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {4988#(and (exists ((v_prenex_3 Int)) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= 3 v_prenex_3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2)))) main_~sum~0) (<= v_prenex_3 3))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,319 INFO L273 TraceCheckUtils]: 17: Hoare triple {4988#(and (exists ((v_prenex_3 Int)) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= 3 v_prenex_3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2)))) main_~sum~0) (<= v_prenex_3 3))) (= 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; {4992#(and (exists ((v_prenex_3 Int)) (and (<= 3 v_prenex_3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2)))) (+ 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|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= v_prenex_3 3))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,339 INFO L273 TraceCheckUtils]: 18: Hoare triple {4992#(and (exists ((v_prenex_3 Int)) (and (<= 3 v_prenex_3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2)))) (+ 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|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= v_prenex_3 3))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {4996#(and (= main_~i~0 1) (exists ((v_prenex_3 Int)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= 3 v_prenex_3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2)))) (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0)) (<= v_prenex_3 3))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,354 INFO L273 TraceCheckUtils]: 19: Hoare triple {4996#(and (= main_~i~0 1) (exists ((v_prenex_3 Int)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= 3 v_prenex_3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2)))) (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0)) (<= v_prenex_3 3))) (= |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; {5000#(and (= main_~i~0 1) (exists ((v_prenex_3 Int)) (and (<= 3 v_prenex_3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 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|)))) (<= v_prenex_3 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|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,368 INFO L273 TraceCheckUtils]: 20: Hoare triple {5000#(and (= main_~i~0 1) (exists ((v_prenex_3 Int)) (and (<= 3 v_prenex_3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 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|)))) (<= v_prenex_3 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|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {5004#(and (= main_~i~0 2) (exists ((v_prenex_3 Int)) (and (<= 3 v_prenex_3) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 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)) (<= v_prenex_3 3))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,378 INFO L273 TraceCheckUtils]: 21: Hoare triple {5004#(and (= main_~i~0 2) (exists ((v_prenex_3 Int)) (and (<= 3 v_prenex_3) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 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)) (<= v_prenex_3 3))) (= |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; {5008#(and (exists ((v_prenex_3 Int)) (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|) 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|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= 3 v_prenex_3) (<= v_prenex_3 3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))))) (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,394 INFO L273 TraceCheckUtils]: 22: Hoare triple {5008#(and (exists ((v_prenex_3 Int)) (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|) 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|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= 3 v_prenex_3) (<= v_prenex_3 3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))))) (= main_~i~0 2) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {5012#(and (= main_~i~0 3) (exists ((v_prenex_3 Int)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 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)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0)) (<= 3 v_prenex_3) (<= v_prenex_3 3) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,396 INFO L273 TraceCheckUtils]: 23: Hoare triple {5012#(and (= main_~i~0 3) (exists ((v_prenex_3 Int)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 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)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0)) (<= 3 v_prenex_3) (<= v_prenex_3 3) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 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; {5016#(and (= main_~i~0 3) (exists ((v_prenex_3 Int)) (and (<= 3 v_prenex_3) (<= v_prenex_3 3) (<= (+ (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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 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)) (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:30:23,398 INFO L273 TraceCheckUtils]: 24: Hoare triple {5016#(and (= main_~i~0 3) (exists ((v_prenex_3 Int)) (and (<= 3 v_prenex_3) (<= v_prenex_3 3) (<= (+ (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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 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)) (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~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {5020#(and (exists ((v_prenex_3 Int)) (and (<= 3 v_prenex_3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 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)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) |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| 6)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= v_prenex_3 3))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,416 INFO L273 TraceCheckUtils]: 25: Hoare triple {5020#(and (exists ((v_prenex_3 Int)) (and (<= 3 v_prenex_3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 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)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) |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| 6)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= v_prenex_3 3))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {5020#(and (exists ((v_prenex_3 Int)) (and (<= 3 v_prenex_3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 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)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) |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| 6)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= v_prenex_3 3))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,432 INFO L273 TraceCheckUtils]: 26: Hoare triple {5020#(and (exists ((v_prenex_3 Int)) (and (<= 3 v_prenex_3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 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)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) |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| 6)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= v_prenex_3 3))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {4896#(and (= main_~sum~0 0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,434 INFO L273 TraceCheckUtils]: 27: Hoare triple {4896#(and (= main_~sum~0 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; {4897#(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:30:23,435 INFO L273 TraceCheckUtils]: 28: Hoare triple {4897#(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~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4898#(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) (<= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,440 INFO L273 TraceCheckUtils]: 29: Hoare triple {4898#(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) (<= main_~i~0 1) (= |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; {4899#(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_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,441 INFO L273 TraceCheckUtils]: 30: Hoare triple {4899#(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_~i~0 1) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4900#(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|)))) (<= 2 main_~i~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|))) main_~sum~0) (<= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,442 INFO L273 TraceCheckUtils]: 31: Hoare triple {4900#(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|)))) (<= 2 main_~i~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|))) main_~sum~0) (<= main_~i~0 2) (= |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; {4901#(and (<= 2 main_~i~0) (<= 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))))) (<= (+ (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)))) main_~sum~0) (<= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,442 INFO L273 TraceCheckUtils]: 32: Hoare triple {4901#(and (<= 2 main_~i~0) (<= 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))))) (<= (+ (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)))) main_~sum~0) (<= main_~i~0 2) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4974#(and (<= main_~i~0 3) (<= (+ (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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 4)))) main_~sum~0) (<= 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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 4))))) (<= 3 main_~i~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,444 INFO L273 TraceCheckUtils]: 33: Hoare triple {4974#(and (<= main_~i~0 3) (<= (+ (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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 4)))) main_~sum~0) (<= 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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 4))))) (<= 3 main_~i~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; {4978#(and (exists ((main_~i~0 Int)) (and (<= main_~i~0 3) (<= 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) (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|) (+ (* 2 main_~i~0) |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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 3 main_~i~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,445 INFO L273 TraceCheckUtils]: 34: Hoare triple {4978#(and (exists ((main_~i~0 Int)) (and (<= main_~i~0 3) (<= 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) (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|) (+ (* 2 main_~i~0) |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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 3 main_~i~0))) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4978#(and (exists ((main_~i~0 Int)) (and (<= main_~i~0 3) (<= 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) (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|) (+ (* 2 main_~i~0) |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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 3 main_~i~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,446 INFO L273 TraceCheckUtils]: 35: Hoare triple {4978#(and (exists ((main_~i~0 Int)) (and (<= main_~i~0 3) (<= 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) (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|) (+ (* 2 main_~i~0) |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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 3 main_~i~0))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {4978#(and (exists ((main_~i~0 Int)) (and (<= main_~i~0 3) (<= 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) (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|) (+ (* 2 main_~i~0) |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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 3 main_~i~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,448 INFO L273 TraceCheckUtils]: 36: Hoare triple {4978#(and (exists ((main_~i~0 Int)) (and (<= main_~i~0 3) (<= 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) (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|) (+ (* 2 main_~i~0) |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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 3 main_~i~0))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {4988#(and (exists ((v_prenex_3 Int)) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= 3 v_prenex_3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2)))) main_~sum~0) (<= v_prenex_3 3))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,450 INFO L273 TraceCheckUtils]: 37: Hoare triple {4988#(and (exists ((v_prenex_3 Int)) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= 3 v_prenex_3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2)))) main_~sum~0) (<= v_prenex_3 3))) (= 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; {4992#(and (exists ((v_prenex_3 Int)) (and (<= 3 v_prenex_3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2)))) (+ 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|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= v_prenex_3 3))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,453 INFO L273 TraceCheckUtils]: 38: Hoare triple {4992#(and (exists ((v_prenex_3 Int)) (and (<= 3 v_prenex_3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2)))) (+ 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|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= v_prenex_3 3))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4996#(and (= main_~i~0 1) (exists ((v_prenex_3 Int)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= 3 v_prenex_3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2)))) (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0)) (<= v_prenex_3 3))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,455 INFO L273 TraceCheckUtils]: 39: Hoare triple {4996#(and (= main_~i~0 1) (exists ((v_prenex_3 Int)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= 3 v_prenex_3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2)))) (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0)) (<= v_prenex_3 3))) (= |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; {5000#(and (= main_~i~0 1) (exists ((v_prenex_3 Int)) (and (<= 3 v_prenex_3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 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|)))) (<= v_prenex_3 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|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,457 INFO L273 TraceCheckUtils]: 40: Hoare triple {5000#(and (= main_~i~0 1) (exists ((v_prenex_3 Int)) (and (<= 3 v_prenex_3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 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|)))) (<= v_prenex_3 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|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))))) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {5004#(and (= main_~i~0 2) (exists ((v_prenex_3 Int)) (and (<= 3 v_prenex_3) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 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)) (<= v_prenex_3 3))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,460 INFO L273 TraceCheckUtils]: 41: Hoare triple {5004#(and (= main_~i~0 2) (exists ((v_prenex_3 Int)) (and (<= 3 v_prenex_3) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 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)) (<= v_prenex_3 3))) (= |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; {5008#(and (exists ((v_prenex_3 Int)) (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|) 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|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= 3 v_prenex_3) (<= v_prenex_3 3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))))) (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,462 INFO L273 TraceCheckUtils]: 42: Hoare triple {5008#(and (exists ((v_prenex_3 Int)) (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|) 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|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= 3 v_prenex_3) (<= v_prenex_3 3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))))) (= main_~i~0 2) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {5012#(and (= main_~i~0 3) (exists ((v_prenex_3 Int)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 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)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0)) (<= 3 v_prenex_3) (<= v_prenex_3 3) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:30:23,464 INFO L273 TraceCheckUtils]: 43: Hoare triple {5012#(and (= main_~i~0 3) (exists ((v_prenex_3 Int)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 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)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0)) (<= 3 v_prenex_3) (<= v_prenex_3 3) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))))) (= |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; {4932#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:30:23,465 INFO L273 TraceCheckUtils]: 44: Hoare triple {4932#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4932#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:30:23,466 INFO L273 TraceCheckUtils]: 45: Hoare triple {4932#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} assume !(~i~0 < ~SIZE~0); {4932#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:30:23,467 INFO L256 TraceCheckUtils]: 46: Hoare triple {4932#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {4933#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:30:23,467 INFO L273 TraceCheckUtils]: 47: Hoare triple {4933#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {4934#(= __VERIFIER_assert_~cond 1)} is VALID [2018-11-23 12:30:23,468 INFO L273 TraceCheckUtils]: 48: Hoare triple {4934#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {4895#false} is VALID [2018-11-23 12:30:23,468 INFO L273 TraceCheckUtils]: 49: Hoare triple {4895#false} assume !false; {4895#false} is VALID [2018-11-23 12:30:23,486 INFO L134 CoverageAnalysis]: Checked inductivity of 64 backedges. 0 proven. 64 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:30:23,505 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:30:23,506 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [41, 22] total 52 [2018-11-23 12:30:23,506 INFO L78 Accepts]: Start accepts. Automaton has 52 states. Word has length 50 [2018-11-23 12:30:23,506 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:30:23,507 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 52 states. [2018-11-23 12:30:23,673 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 84 edges. 84 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:30:23,673 INFO L459 AbstractCegarLoop]: Interpolant automaton has 52 states [2018-11-23 12:30:23,674 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 52 interpolants. [2018-11-23 12:30:23,675 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=159, Invalid=2493, Unknown=0, NotChecked=0, Total=2652 [2018-11-23 12:30:23,675 INFO L87 Difference]: Start difference. First operand 51 states and 54 transitions. Second operand 52 states. [2018-11-23 12:30:27,991 WARN L180 SmtUtils]: Spent 647.00 ms on a formula simplification. DAG size of input: 116 DAG size of output: 98 [2018-11-23 12:30:28,921 WARN L180 SmtUtils]: Spent 109.00 ms on a formula simplification. DAG size of input: 146 DAG size of output: 34 [2018-11-23 12:30:29,385 WARN L180 SmtUtils]: Spent 136.00 ms on a formula simplification. DAG size of input: 142 DAG size of output: 41 [2018-11-23 12:30:29,912 WARN L180 SmtUtils]: Spent 133.00 ms on a formula simplification. DAG size of input: 143 DAG size of output: 43 [2018-11-23 12:30:30,658 WARN L180 SmtUtils]: Spent 140.00 ms on a formula simplification. DAG size of input: 137 DAG size of output: 40 [2018-11-23 12:30:31,102 WARN L180 SmtUtils]: Spent 143.00 ms on a formula simplification. DAG size of input: 138 DAG size of output: 43 [2018-11-23 12:30:31,601 WARN L180 SmtUtils]: Spent 183.00 ms on a formula simplification. DAG size of input: 139 DAG size of output: 44 [2018-11-23 12:30:32,115 WARN L180 SmtUtils]: Spent 162.00 ms on a formula simplification. DAG size of input: 134 DAG size of output: 28 [2018-11-23 12:30:32,843 WARN L180 SmtUtils]: Spent 461.00 ms on a formula simplification. DAG size of input: 116 DAG size of output: 97 [2018-11-23 12:30:33,922 WARN L180 SmtUtils]: Spent 505.00 ms on a formula simplification. DAG size of input: 138 DAG size of output: 115 [2018-11-23 12:30:35,086 WARN L180 SmtUtils]: Spent 283.00 ms on a formula simplification. DAG size of input: 89 DAG size of output: 89 [2018-11-23 12:30:36,155 WARN L180 SmtUtils]: Spent 320.00 ms on a formula simplification. DAG size of input: 114 DAG size of output: 82 [2018-11-23 12:30:36,885 WARN L180 SmtUtils]: Spent 109.00 ms on a formula simplification. DAG size of input: 125 DAG size of output: 23 [2018-11-23 12:30:37,254 WARN L180 SmtUtils]: Spent 115.00 ms on a formula simplification. DAG size of input: 142 DAG size of output: 35 [2018-11-23 12:30:37,956 WARN L180 SmtUtils]: Spent 131.00 ms on a formula simplification. DAG size of input: 128 DAG size of output: 26 [2018-11-23 12:30:38,735 WARN L180 SmtUtils]: Spent 147.00 ms on a formula simplification. DAG size of input: 123 DAG size of output: 26 [2018-11-23 12:30:39,278 WARN L180 SmtUtils]: Spent 147.00 ms on a formula simplification. DAG size of input: 123 DAG size of output: 29 [2018-11-23 12:30:39,760 WARN L180 SmtUtils]: Spent 146.00 ms on a formula simplification. DAG size of input: 126 DAG size of output: 30 [2018-11-23 12:30:40,635 WARN L180 SmtUtils]: Spent 582.00 ms on a formula simplification. DAG size of input: 118 DAG size of output: 85 [2018-11-23 12:30:41,327 WARN L180 SmtUtils]: Spent 235.00 ms on a formula simplification. DAG size of input: 81 DAG size of output: 81 [2018-11-23 12:30:41,922 WARN L180 SmtUtils]: Spent 184.00 ms on a formula simplification. DAG size of input: 87 DAG size of output: 78 [2018-11-23 12:30:42,502 WARN L180 SmtUtils]: Spent 165.00 ms on a formula simplification. DAG size of input: 63 DAG size of output: 63 [2018-11-23 12:30:47,474 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:30:47,475 INFO L93 Difference]: Finished difference Result 119 states and 136 transitions. [2018-11-23 12:30:47,475 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 50 states. [2018-11-23 12:30:47,475 INFO L78 Accepts]: Start accepts. Automaton has 52 states. Word has length 50 [2018-11-23 12:30:47,476 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:30:47,476 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 52 states. [2018-11-23 12:30:47,478 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 115 transitions. [2018-11-23 12:30:47,478 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 52 states. [2018-11-23 12:30:47,480 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 115 transitions. [2018-11-23 12:30:47,480 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 50 states and 115 transitions. [2018-11-23 12:30:48,159 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 115 edges. 115 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:30:48,161 INFO L225 Difference]: With dead ends: 119 [2018-11-23 12:30:48,162 INFO L226 Difference]: Without dead ends: 113 [2018-11-23 12:30:48,164 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 133 GetRequests, 26 SyntacticMatches, 17 SemanticMatches, 90 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1787 ImplicationChecksByTransitivity, 16.9s TimeCoverageRelationStatistics Valid=1087, Invalid=7285, Unknown=0, NotChecked=0, Total=8372 [2018-11-23 12:30:48,165 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 113 states. [2018-11-23 12:30:48,880 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 113 to 98. [2018-11-23 12:30:48,880 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:30:48,880 INFO L82 GeneralOperation]: Start isEquivalent. First operand 113 states. Second operand 98 states. [2018-11-23 12:30:48,880 INFO L74 IsIncluded]: Start isIncluded. First operand 113 states. Second operand 98 states. [2018-11-23 12:30:48,880 INFO L87 Difference]: Start difference. First operand 113 states. Second operand 98 states. [2018-11-23 12:30:48,883 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:30:48,883 INFO L93 Difference]: Finished difference Result 113 states and 126 transitions. [2018-11-23 12:30:48,883 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 126 transitions. [2018-11-23 12:30:48,884 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:30:48,884 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:30:48,884 INFO L74 IsIncluded]: Start isIncluded. First operand 98 states. Second operand 113 states. [2018-11-23 12:30:48,884 INFO L87 Difference]: Start difference. First operand 98 states. Second operand 113 states. [2018-11-23 12:30:48,887 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:30:48,887 INFO L93 Difference]: Finished difference Result 113 states and 126 transitions. [2018-11-23 12:30:48,887 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 126 transitions. [2018-11-23 12:30:48,887 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:30:48,888 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:30:48,888 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:30:48,888 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:30:48,888 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 98 states. [2018-11-23 12:30:48,890 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 98 states to 98 states and 111 transitions. [2018-11-23 12:30:48,890 INFO L78 Accepts]: Start accepts. Automaton has 98 states and 111 transitions. Word has length 50 [2018-11-23 12:30:48,891 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:30:48,891 INFO L480 AbstractCegarLoop]: Abstraction has 98 states and 111 transitions. [2018-11-23 12:30:48,891 INFO L481 AbstractCegarLoop]: Interpolant automaton has 52 states. [2018-11-23 12:30:48,891 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 111 transitions. [2018-11-23 12:30:48,892 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2018-11-23 12:30:48,892 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:30:48,892 INFO L402 BasicCegarLoop]: trace histogram [5, 5, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:30:48,892 INFO L423 AbstractCegarLoop]: === Iteration 14 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:30:48,892 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:30:48,893 INFO L82 PathProgramCache]: Analyzing trace with hash -884695365, now seen corresponding path program 10 times [2018-11-23 12:30:48,893 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:30:48,893 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:30:48,893 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:30:48,894 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:30:48,894 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:30:48,904 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:30:49,849 INFO L256 TraceCheckUtils]: 0: Hoare triple {5725#true} call ULTIMATE.init(); {5725#true} is VALID [2018-11-23 12:30:49,850 INFO L273 TraceCheckUtils]: 1: Hoare triple {5725#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {5725#true} is VALID [2018-11-23 12:30:49,850 INFO L273 TraceCheckUtils]: 2: Hoare triple {5725#true} assume true; {5725#true} is VALID [2018-11-23 12:30:49,850 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5725#true} {5725#true} #83#return; {5725#true} is VALID [2018-11-23 12:30:49,850 INFO L256 TraceCheckUtils]: 4: Hoare triple {5725#true} call #t~ret10 := main(); {5725#true} is VALID [2018-11-23 12:30:49,851 INFO L273 TraceCheckUtils]: 5: Hoare triple {5725#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {5725#true} is VALID [2018-11-23 12:30:49,851 INFO L273 TraceCheckUtils]: 6: Hoare triple {5725#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; {5727#(= main_~i~0 0)} is VALID [2018-11-23 12:30:49,852 INFO L273 TraceCheckUtils]: 7: Hoare triple {5727#(= 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; {5727#(= main_~i~0 0)} is VALID [2018-11-23 12:30:49,852 INFO L273 TraceCheckUtils]: 8: Hoare triple {5727#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5728#(<= 1 main_~i~0)} is VALID [2018-11-23 12:30:49,853 INFO L273 TraceCheckUtils]: 9: Hoare triple {5728#(<= 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; {5728#(<= 1 main_~i~0)} is VALID [2018-11-23 12:30:49,853 INFO L273 TraceCheckUtils]: 10: Hoare triple {5728#(<= 1 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5729#(<= 2 main_~i~0)} is VALID [2018-11-23 12:30:49,853 INFO L273 TraceCheckUtils]: 11: Hoare triple {5729#(<= 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; {5729#(<= 2 main_~i~0)} is VALID [2018-11-23 12:30:49,854 INFO L273 TraceCheckUtils]: 12: Hoare triple {5729#(<= 2 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5730#(<= 3 main_~i~0)} is VALID [2018-11-23 12:30:49,854 INFO L273 TraceCheckUtils]: 13: Hoare triple {5730#(<= 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; {5730#(<= 3 main_~i~0)} is VALID [2018-11-23 12:30:49,855 INFO L273 TraceCheckUtils]: 14: Hoare triple {5730#(<= 3 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5731#(<= 4 main_~i~0)} is VALID [2018-11-23 12:30:49,855 INFO L273 TraceCheckUtils]: 15: Hoare triple {5731#(<= 4 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; {5732#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:30:49,856 INFO L273 TraceCheckUtils]: 16: Hoare triple {5732#(<= 5 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5732#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:30:49,857 INFO L273 TraceCheckUtils]: 17: Hoare triple {5732#(<= 5 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {5732#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:30:49,857 INFO L273 TraceCheckUtils]: 18: Hoare triple {5732#(<= 5 ~SIZE~0)} ~i~0 := 0; {5732#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:30:49,858 INFO L273 TraceCheckUtils]: 19: Hoare triple {5732#(<= 5 ~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; {5732#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:30:49,858 INFO L273 TraceCheckUtils]: 20: Hoare triple {5732#(<= 5 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {5732#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:30:49,859 INFO L273 TraceCheckUtils]: 21: Hoare triple {5732#(<= 5 ~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; {5732#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:30:49,859 INFO L273 TraceCheckUtils]: 22: Hoare triple {5732#(<= 5 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {5732#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:30:49,860 INFO L273 TraceCheckUtils]: 23: Hoare triple {5732#(<= 5 ~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; {5732#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:30:49,860 INFO L273 TraceCheckUtils]: 24: Hoare triple {5732#(<= 5 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {5732#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:30:49,861 INFO L273 TraceCheckUtils]: 25: Hoare triple {5732#(<= 5 ~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; {5732#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:30:49,861 INFO L273 TraceCheckUtils]: 26: Hoare triple {5732#(<= 5 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {5732#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:30:49,862 INFO L273 TraceCheckUtils]: 27: Hoare triple {5732#(<= 5 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {5732#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:30:49,862 INFO L273 TraceCheckUtils]: 28: Hoare triple {5732#(<= 5 ~SIZE~0)} ~i~0 := 0; {5733#(and (<= 5 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:30:49,863 INFO L273 TraceCheckUtils]: 29: Hoare triple {5733#(and (<= 5 ~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; {5733#(and (<= 5 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:30:49,864 INFO L273 TraceCheckUtils]: 30: Hoare triple {5733#(and (<= 5 ~SIZE~0) (= main_~i~0 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {5734#(<= (+ main_~i~0 4) ~SIZE~0)} is VALID [2018-11-23 12:30:49,865 INFO L273 TraceCheckUtils]: 31: Hoare triple {5734#(<= (+ main_~i~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; {5734#(<= (+ main_~i~0 4) ~SIZE~0)} is VALID [2018-11-23 12:30:49,865 INFO L273 TraceCheckUtils]: 32: Hoare triple {5734#(<= (+ main_~i~0 4) ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {5735#(<= (+ main_~i~0 3) ~SIZE~0)} is VALID [2018-11-23 12:30:49,866 INFO L273 TraceCheckUtils]: 33: Hoare triple {5735#(<= (+ main_~i~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; {5735#(<= (+ main_~i~0 3) ~SIZE~0)} is VALID [2018-11-23 12:30:49,867 INFO L273 TraceCheckUtils]: 34: Hoare triple {5735#(<= (+ main_~i~0 3) ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {5736#(<= (+ main_~i~0 2) ~SIZE~0)} is VALID [2018-11-23 12:30:49,867 INFO L273 TraceCheckUtils]: 35: Hoare triple {5736#(<= (+ 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; {5736#(<= (+ main_~i~0 2) ~SIZE~0)} is VALID [2018-11-23 12:30:49,868 INFO L273 TraceCheckUtils]: 36: Hoare triple {5736#(<= (+ main_~i~0 2) ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {5737#(<= (+ main_~i~0 1) ~SIZE~0)} is VALID [2018-11-23 12:30:49,869 INFO L273 TraceCheckUtils]: 37: Hoare triple {5737#(<= (+ main_~i~0 1) ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {5726#false} is VALID [2018-11-23 12:30:49,869 INFO L273 TraceCheckUtils]: 38: Hoare triple {5726#false} ~i~0 := 0; {5726#false} is VALID [2018-11-23 12:30:49,869 INFO L273 TraceCheckUtils]: 39: Hoare triple {5726#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; {5726#false} is VALID [2018-11-23 12:30:49,870 INFO L273 TraceCheckUtils]: 40: Hoare triple {5726#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {5726#false} is VALID [2018-11-23 12:30:49,870 INFO L273 TraceCheckUtils]: 41: Hoare triple {5726#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; {5726#false} is VALID [2018-11-23 12:30:49,870 INFO L273 TraceCheckUtils]: 42: Hoare triple {5726#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {5726#false} is VALID [2018-11-23 12:30:49,870 INFO L273 TraceCheckUtils]: 43: Hoare triple {5726#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; {5726#false} is VALID [2018-11-23 12:30:49,870 INFO L273 TraceCheckUtils]: 44: Hoare triple {5726#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {5726#false} is VALID [2018-11-23 12:30:49,871 INFO L273 TraceCheckUtils]: 45: Hoare triple {5726#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; {5726#false} is VALID [2018-11-23 12:30:49,871 INFO L273 TraceCheckUtils]: 46: Hoare triple {5726#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {5726#false} is VALID [2018-11-23 12:30:49,871 INFO L273 TraceCheckUtils]: 47: Hoare triple {5726#false} assume !(~i~0 < ~SIZE~0); {5726#false} is VALID [2018-11-23 12:30:49,871 INFO L256 TraceCheckUtils]: 48: Hoare triple {5726#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {5726#false} is VALID [2018-11-23 12:30:49,871 INFO L273 TraceCheckUtils]: 49: Hoare triple {5726#false} ~cond := #in~cond; {5726#false} is VALID [2018-11-23 12:30:49,872 INFO L273 TraceCheckUtils]: 50: Hoare triple {5726#false} assume 0 == ~cond; {5726#false} is VALID [2018-11-23 12:30:49,872 INFO L273 TraceCheckUtils]: 51: Hoare triple {5726#false} assume !false; {5726#false} is VALID [2018-11-23 12:30:49,874 INFO L134 CoverageAnalysis]: Checked inductivity of 73 backedges. 9 proven. 32 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2018-11-23 12:30:49,875 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:30:49,875 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 12 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 12 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:30:49,883 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 12:30:49,904 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 12:30:49,904 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:30:49,915 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:30:49,917 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:30:50,158 INFO L256 TraceCheckUtils]: 0: Hoare triple {5725#true} call ULTIMATE.init(); {5725#true} is VALID [2018-11-23 12:30:50,159 INFO L273 TraceCheckUtils]: 1: Hoare triple {5725#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {5725#true} is VALID [2018-11-23 12:30:50,159 INFO L273 TraceCheckUtils]: 2: Hoare triple {5725#true} assume true; {5725#true} is VALID [2018-11-23 12:30:50,159 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5725#true} {5725#true} #83#return; {5725#true} is VALID [2018-11-23 12:30:50,160 INFO L256 TraceCheckUtils]: 4: Hoare triple {5725#true} call #t~ret10 := main(); {5725#true} is VALID [2018-11-23 12:30:50,160 INFO L273 TraceCheckUtils]: 5: Hoare triple {5725#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {5725#true} is VALID [2018-11-23 12:30:50,161 INFO L273 TraceCheckUtils]: 6: Hoare triple {5725#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; {5759#(<= 0 main_~i~0)} is VALID [2018-11-23 12:30:50,161 INFO L273 TraceCheckUtils]: 7: Hoare triple {5759#(<= 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; {5759#(<= 0 main_~i~0)} is VALID [2018-11-23 12:30:50,161 INFO L273 TraceCheckUtils]: 8: Hoare triple {5759#(<= 0 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5728#(<= 1 main_~i~0)} is VALID [2018-11-23 12:30:50,162 INFO L273 TraceCheckUtils]: 9: Hoare triple {5728#(<= 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; {5728#(<= 1 main_~i~0)} is VALID [2018-11-23 12:30:50,162 INFO L273 TraceCheckUtils]: 10: Hoare triple {5728#(<= 1 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5729#(<= 2 main_~i~0)} is VALID [2018-11-23 12:30:50,162 INFO L273 TraceCheckUtils]: 11: Hoare triple {5729#(<= 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; {5729#(<= 2 main_~i~0)} is VALID [2018-11-23 12:30:50,163 INFO L273 TraceCheckUtils]: 12: Hoare triple {5729#(<= 2 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5730#(<= 3 main_~i~0)} is VALID [2018-11-23 12:30:50,163 INFO L273 TraceCheckUtils]: 13: Hoare triple {5730#(<= 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; {5730#(<= 3 main_~i~0)} is VALID [2018-11-23 12:30:50,164 INFO L273 TraceCheckUtils]: 14: Hoare triple {5730#(<= 3 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5731#(<= 4 main_~i~0)} is VALID [2018-11-23 12:30:50,165 INFO L273 TraceCheckUtils]: 15: Hoare triple {5731#(<= 4 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; {5732#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:30:50,166 INFO L273 TraceCheckUtils]: 16: Hoare triple {5732#(<= 5 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5732#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:30:50,166 INFO L273 TraceCheckUtils]: 17: Hoare triple {5732#(<= 5 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {5732#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:30:50,167 INFO L273 TraceCheckUtils]: 18: Hoare triple {5732#(<= 5 ~SIZE~0)} ~i~0 := 0; {5796#(and (<= 5 ~SIZE~0) (<= main_~i~0 0))} is VALID [2018-11-23 12:30:50,167 INFO L273 TraceCheckUtils]: 19: Hoare triple {5796#(and (<= 5 ~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; {5796#(and (<= 5 ~SIZE~0) (<= main_~i~0 0))} is VALID [2018-11-23 12:30:50,168 INFO L273 TraceCheckUtils]: 20: Hoare triple {5796#(and (<= 5 ~SIZE~0) (<= main_~i~0 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {5803#(and (<= main_~i~0 1) (<= 5 ~SIZE~0))} is VALID [2018-11-23 12:30:50,169 INFO L273 TraceCheckUtils]: 21: Hoare triple {5803#(and (<= main_~i~0 1) (<= 5 ~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; {5803#(and (<= main_~i~0 1) (<= 5 ~SIZE~0))} is VALID [2018-11-23 12:30:50,170 INFO L273 TraceCheckUtils]: 22: Hoare triple {5803#(and (<= main_~i~0 1) (<= 5 ~SIZE~0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {5810#(and (<= main_~i~0 2) (<= 5 ~SIZE~0))} is VALID [2018-11-23 12:30:50,171 INFO L273 TraceCheckUtils]: 23: Hoare triple {5810#(and (<= main_~i~0 2) (<= 5 ~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; {5810#(and (<= main_~i~0 2) (<= 5 ~SIZE~0))} is VALID [2018-11-23 12:30:50,172 INFO L273 TraceCheckUtils]: 24: Hoare triple {5810#(and (<= main_~i~0 2) (<= 5 ~SIZE~0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {5817#(and (<= main_~i~0 3) (<= 5 ~SIZE~0))} is VALID [2018-11-23 12:30:50,172 INFO L273 TraceCheckUtils]: 25: Hoare triple {5817#(and (<= main_~i~0 3) (<= 5 ~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; {5817#(and (<= main_~i~0 3) (<= 5 ~SIZE~0))} is VALID [2018-11-23 12:30:50,173 INFO L273 TraceCheckUtils]: 26: Hoare triple {5817#(and (<= main_~i~0 3) (<= 5 ~SIZE~0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {5824#(and (<= main_~i~0 4) (<= 5 ~SIZE~0))} is VALID [2018-11-23 12:30:50,174 INFO L273 TraceCheckUtils]: 27: Hoare triple {5824#(and (<= main_~i~0 4) (<= 5 ~SIZE~0))} assume !(~i~0 < ~SIZE~0); {5726#false} is VALID [2018-11-23 12:30:50,174 INFO L273 TraceCheckUtils]: 28: Hoare triple {5726#false} ~i~0 := 0; {5726#false} is VALID [2018-11-23 12:30:50,175 INFO L273 TraceCheckUtils]: 29: Hoare triple {5726#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; {5726#false} is VALID [2018-11-23 12:30:50,175 INFO L273 TraceCheckUtils]: 30: Hoare triple {5726#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {5726#false} is VALID [2018-11-23 12:30:50,175 INFO L273 TraceCheckUtils]: 31: Hoare triple {5726#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; {5726#false} is VALID [2018-11-23 12:30:50,175 INFO L273 TraceCheckUtils]: 32: Hoare triple {5726#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {5726#false} is VALID [2018-11-23 12:30:50,176 INFO L273 TraceCheckUtils]: 33: Hoare triple {5726#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; {5726#false} is VALID [2018-11-23 12:30:50,176 INFO L273 TraceCheckUtils]: 34: Hoare triple {5726#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {5726#false} is VALID [2018-11-23 12:30:50,176 INFO L273 TraceCheckUtils]: 35: Hoare triple {5726#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; {5726#false} is VALID [2018-11-23 12:30:50,176 INFO L273 TraceCheckUtils]: 36: Hoare triple {5726#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {5726#false} is VALID [2018-11-23 12:30:50,177 INFO L273 TraceCheckUtils]: 37: Hoare triple {5726#false} assume !(~i~0 < ~SIZE~0); {5726#false} is VALID [2018-11-23 12:30:50,177 INFO L273 TraceCheckUtils]: 38: Hoare triple {5726#false} ~i~0 := 0; {5726#false} is VALID [2018-11-23 12:30:50,177 INFO L273 TraceCheckUtils]: 39: Hoare triple {5726#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; {5726#false} is VALID [2018-11-23 12:30:50,177 INFO L273 TraceCheckUtils]: 40: Hoare triple {5726#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {5726#false} is VALID [2018-11-23 12:30:50,177 INFO L273 TraceCheckUtils]: 41: Hoare triple {5726#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; {5726#false} is VALID [2018-11-23 12:30:50,178 INFO L273 TraceCheckUtils]: 42: Hoare triple {5726#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {5726#false} is VALID [2018-11-23 12:30:50,178 INFO L273 TraceCheckUtils]: 43: Hoare triple {5726#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; {5726#false} is VALID [2018-11-23 12:30:50,178 INFO L273 TraceCheckUtils]: 44: Hoare triple {5726#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {5726#false} is VALID [2018-11-23 12:30:50,178 INFO L273 TraceCheckUtils]: 45: Hoare triple {5726#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; {5726#false} is VALID [2018-11-23 12:30:50,178 INFO L273 TraceCheckUtils]: 46: Hoare triple {5726#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {5726#false} is VALID [2018-11-23 12:30:50,178 INFO L273 TraceCheckUtils]: 47: Hoare triple {5726#false} assume !(~i~0 < ~SIZE~0); {5726#false} is VALID [2018-11-23 12:30:50,179 INFO L256 TraceCheckUtils]: 48: Hoare triple {5726#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {5726#false} is VALID [2018-11-23 12:30:50,179 INFO L273 TraceCheckUtils]: 49: Hoare triple {5726#false} ~cond := #in~cond; {5726#false} is VALID [2018-11-23 12:30:50,179 INFO L273 TraceCheckUtils]: 50: Hoare triple {5726#false} assume 0 == ~cond; {5726#false} is VALID [2018-11-23 12:30:50,179 INFO L273 TraceCheckUtils]: 51: Hoare triple {5726#false} assume !false; {5726#false} is VALID [2018-11-23 12:30:50,181 INFO L134 CoverageAnalysis]: Checked inductivity of 73 backedges. 16 proven. 25 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2018-11-23 12:30:50,200 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:30:50,200 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 19 [2018-11-23 12:30:50,200 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 52 [2018-11-23 12:30:50,201 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:30:50,201 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states. [2018-11-23 12:30:50,259 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:30:50,259 INFO L459 AbstractCegarLoop]: Interpolant automaton has 19 states [2018-11-23 12:30:50,260 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2018-11-23 12:30:50,260 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=93, Invalid=249, Unknown=0, NotChecked=0, Total=342 [2018-11-23 12:30:50,260 INFO L87 Difference]: Start difference. First operand 98 states and 111 transitions. Second operand 19 states. [2018-11-23 12:30:53,010 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:30:53,011 INFO L93 Difference]: Finished difference Result 172 states and 190 transitions. [2018-11-23 12:30:53,011 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2018-11-23 12:30:53,011 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 52 [2018-11-23 12:30:53,011 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:30:53,012 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-23 12:30:53,013 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 113 transitions. [2018-11-23 12:30:53,014 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-23 12:30:53,015 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 113 transitions. [2018-11-23 12:30:53,015 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states and 113 transitions. [2018-11-23 12:30:53,562 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 113 edges. 113 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:30:53,565 INFO L225 Difference]: With dead ends: 172 [2018-11-23 12:30:53,566 INFO L226 Difference]: Without dead ends: 136 [2018-11-23 12:30:53,567 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 75 GetRequests, 47 SyntacticMatches, 0 SemanticMatches, 28 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 196 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=206, Invalid=664, Unknown=0, NotChecked=0, Total=870 [2018-11-23 12:30:53,567 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 136 states. [2018-11-23 12:30:54,662 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 136 to 112. [2018-11-23 12:30:54,662 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:30:54,662 INFO L82 GeneralOperation]: Start isEquivalent. First operand 136 states. Second operand 112 states. [2018-11-23 12:30:54,662 INFO L74 IsIncluded]: Start isIncluded. First operand 136 states. Second operand 112 states. [2018-11-23 12:30:54,662 INFO L87 Difference]: Start difference. First operand 136 states. Second operand 112 states. [2018-11-23 12:30:54,665 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:30:54,665 INFO L93 Difference]: Finished difference Result 136 states and 149 transitions. [2018-11-23 12:30:54,665 INFO L276 IsEmpty]: Start isEmpty. Operand 136 states and 149 transitions. [2018-11-23 12:30:54,665 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:30:54,665 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:30:54,666 INFO L74 IsIncluded]: Start isIncluded. First operand 112 states. Second operand 136 states. [2018-11-23 12:30:54,666 INFO L87 Difference]: Start difference. First operand 112 states. Second operand 136 states. [2018-11-23 12:30:54,668 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:30:54,669 INFO L93 Difference]: Finished difference Result 136 states and 149 transitions. [2018-11-23 12:30:54,669 INFO L276 IsEmpty]: Start isEmpty. Operand 136 states and 149 transitions. [2018-11-23 12:30:54,669 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:30:54,669 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:30:54,670 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:30:54,670 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:30:54,670 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 112 states. [2018-11-23 12:30:54,672 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 112 states to 112 states and 125 transitions. [2018-11-23 12:30:54,672 INFO L78 Accepts]: Start accepts. Automaton has 112 states and 125 transitions. Word has length 52 [2018-11-23 12:30:54,673 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:30:54,673 INFO L480 AbstractCegarLoop]: Abstraction has 112 states and 125 transitions. [2018-11-23 12:30:54,673 INFO L481 AbstractCegarLoop]: Interpolant automaton has 19 states. [2018-11-23 12:30:54,673 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 125 transitions. [2018-11-23 12:30:54,674 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2018-11-23 12:30:54,674 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:30:54,674 INFO L402 BasicCegarLoop]: trace histogram [5, 5, 5, 5, 5, 5, 5, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:30:54,674 INFO L423 AbstractCegarLoop]: === Iteration 15 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:30:54,674 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:30:54,675 INFO L82 PathProgramCache]: Analyzing trace with hash -1509833995, now seen corresponding path program 11 times [2018-11-23 12:30:54,675 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:30:54,675 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:30:54,675 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:30:54,676 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:30:54,676 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:30:54,717 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:30:55,330 WARN L180 SmtUtils]: Spent 174.00 ms on a formula simplification. DAG size of input: 15 DAG size of output: 8 [2018-11-23 12:31:02,380 INFO L256 TraceCheckUtils]: 0: Hoare triple {6616#true} call ULTIMATE.init(); {6616#true} is VALID [2018-11-23 12:31:02,380 INFO L273 TraceCheckUtils]: 1: Hoare triple {6616#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {6616#true} is VALID [2018-11-23 12:31:02,381 INFO L273 TraceCheckUtils]: 2: Hoare triple {6616#true} assume true; {6616#true} is VALID [2018-11-23 12:31:02,381 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6616#true} {6616#true} #83#return; {6616#true} is VALID [2018-11-23 12:31:02,381 INFO L256 TraceCheckUtils]: 4: Hoare triple {6616#true} call #t~ret10 := main(); {6616#true} is VALID [2018-11-23 12:31:02,381 INFO L273 TraceCheckUtils]: 5: Hoare triple {6616#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {6616#true} is VALID [2018-11-23 12:31:02,390 INFO L273 TraceCheckUtils]: 6: Hoare triple {6616#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; {6618#(and (= main_~sum~0 0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,403 INFO L273 TraceCheckUtils]: 7: Hoare triple {6618#(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; {6619#(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:31:02,416 INFO L273 TraceCheckUtils]: 8: Hoare triple {6619#(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; {6620#(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) (<= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,428 INFO L273 TraceCheckUtils]: 9: Hoare triple {6620#(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) (<= main_~i~0 1) (= |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; {6621#(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_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,447 INFO L273 TraceCheckUtils]: 10: Hoare triple {6621#(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_~i~0 1) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6622#(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) 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,456 INFO L273 TraceCheckUtils]: 11: Hoare triple {6622#(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) 4) (= |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; {6623#(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) 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,469 INFO L273 TraceCheckUtils]: 12: Hoare triple {6623#(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) 4) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6624#(and (<= main_~i~0 3) (<= 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) (<= 3 main_~i~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,482 INFO L273 TraceCheckUtils]: 13: Hoare triple {6624#(and (<= main_~i~0 3) (<= 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) (<= 3 main_~i~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; {6625#(and (<= (+ (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))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2)))))) main_~sum~0) (<= main_~i~0 3) (<= 3 main_~i~0) (<= 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))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,495 INFO L273 TraceCheckUtils]: 14: Hoare triple {6625#(and (<= (+ (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))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2)))))) main_~sum~0) (<= main_~i~0 3) (<= 3 main_~i~0) (<= 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))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2))))))) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6626#(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|) (+ (* 2 (+ main_~i~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 3))))))) (= (* 2 main_~i~0) 8) (<= (+ (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|) (+ (* 2 (+ main_~i~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 3)))))) main_~sum~0)) (< (+ main_~i~0 1) ~SIZE~0)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,508 INFO L273 TraceCheckUtils]: 15: Hoare triple {6626#(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|) (+ (* 2 (+ main_~i~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 3))))))) (= (* 2 main_~i~0) 8) (<= (+ (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|) (+ (* 2 (+ main_~i~0 (- 2))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 3)))))) main_~sum~0)) (< (+ main_~i~0 1) ~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; {6627#(and (or (and (<= main_~i~0 4) (<= 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|) (+ (* 2 (+ main_~i~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 (- 4))))))) (<= (+ (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|) (+ (* 2 (+ main_~i~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 (- 4)))))) main_~sum~0) (<= 5 ~SIZE~0)) (< (+ main_~i~0 1) ~SIZE~0)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,521 INFO L273 TraceCheckUtils]: 16: Hoare triple {6627#(and (or (and (<= main_~i~0 4) (<= 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|) (+ (* 2 (+ main_~i~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 (- 4))))))) (<= (+ (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|) (+ (* 2 (+ main_~i~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 (- 4)))))) main_~sum~0) (<= 5 ~SIZE~0)) (< (+ main_~i~0 1) ~SIZE~0)) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6628#(and (or (<= (+ 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= ~SIZE~0 5) (<= 5 ~SIZE~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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,534 INFO L273 TraceCheckUtils]: 17: Hoare triple {6628#(and (or (<= (+ 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= ~SIZE~0 5) (<= 5 ~SIZE~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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {6629#(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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= ~SIZE~0 5) (<= 5 ~SIZE~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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,547 INFO L273 TraceCheckUtils]: 18: Hoare triple {6629#(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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= ~SIZE~0 5) (<= 5 ~SIZE~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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {6630#(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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (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 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~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 (+ ~SIZE~0 (- 2))))) (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 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0) (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,559 INFO L273 TraceCheckUtils]: 19: Hoare triple {6630#(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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (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 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~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 (+ ~SIZE~0 (- 2))))) (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 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0) (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (= 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; {6631#(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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0) (<= ~SIZE~0 5) (<= 5 ~SIZE~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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,572 INFO L273 TraceCheckUtils]: 20: Hoare triple {6631#(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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0) (<= ~SIZE~0 5) (<= 5 ~SIZE~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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {6632#(and (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0) (<= ~SIZE~0 5) (<= 5 ~SIZE~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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (= (+ (* 2 main_~i~0) 8) (* 2 ~SIZE~0))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 9) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,585 INFO L273 TraceCheckUtils]: 21: Hoare triple {6632#(and (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0) (<= ~SIZE~0 5) (<= 5 ~SIZE~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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (= (+ (* 2 main_~i~0) 8) (* 2 ~SIZE~0))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 9) (* 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; {6633#(and (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) (+ (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= (+ main_~i~0 4) ~SIZE~0) (<= ~SIZE~0 5) (<= 5 ~SIZE~0)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 9) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,600 INFO L273 TraceCheckUtils]: 22: Hoare triple {6633#(and (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) (+ (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= (+ main_~i~0 4) ~SIZE~0) (<= ~SIZE~0 5) (<= 5 ~SIZE~0)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 9) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {6634#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0)) (and (= (+ (* 2 main_~i~0) 6) (* 2 ~SIZE~0)) (<= ~SIZE~0 5) (<= 5 ~SIZE~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 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,609 INFO L273 TraceCheckUtils]: 23: Hoare triple {6634#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0)) (and (= (+ (* 2 main_~i~0) 6) (* 2 ~SIZE~0)) (<= ~SIZE~0 5) (<= 5 ~SIZE~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 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |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; {6635#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0)) (and (= (+ (* 2 main_~i~0) 6) (* 2 ~SIZE~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 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |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 5) (<= 5 ~SIZE~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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,622 INFO L273 TraceCheckUtils]: 24: Hoare triple {6635#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0)) (and (= (+ (* 2 main_~i~0) 6) (* 2 ~SIZE~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 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |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 5) (<= 5 ~SIZE~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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {6636#(and (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) main_~sum~0) (= (+ (* 2 main_~i~0) 4) (* 2 ~SIZE~0)) (<= ~SIZE~0 5) (<= 5 ~SIZE~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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,635 INFO L273 TraceCheckUtils]: 25: Hoare triple {6636#(and (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) main_~sum~0) (= (+ (* 2 main_~i~0) 4) (* 2 ~SIZE~0)) (<= ~SIZE~0 5) (<= 5 ~SIZE~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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 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; {6637#(and (or (and (= (+ (* 2 main_~i~0) 4) (* 2 ~SIZE~0)) (<= ~SIZE~0 5) (<= 5 ~SIZE~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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~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 (+ ~SIZE~0 (- 2)))))) (+ (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))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,637 INFO L273 TraceCheckUtils]: 26: Hoare triple {6637#(and (or (and (= (+ (* 2 main_~i~0) 4) (* 2 ~SIZE~0)) (<= ~SIZE~0 5) (<= 5 ~SIZE~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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~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 (+ ~SIZE~0 (- 2)))))) (+ (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))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {6638#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) main_~sum~0) (<= ~SIZE~0 5) (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (<= 5 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,638 INFO L273 TraceCheckUtils]: 27: Hoare triple {6638#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) main_~sum~0) (<= ~SIZE~0 5) (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (<= 5 ~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; {6639#(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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (<= (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)) (<= ~SIZE~0 5) (<= 5 ~SIZE~0)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,640 INFO L273 TraceCheckUtils]: 28: Hoare triple {6639#(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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (<= (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)) (<= ~SIZE~0 5) (<= 5 ~SIZE~0)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {6640#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 1) (* 2 ~SIZE~0)) (and (<= 0 main_~sum~0) (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (<= main_~sum~0 0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,640 INFO L273 TraceCheckUtils]: 29: Hoare triple {6640#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 1) (* 2 ~SIZE~0)) (and (<= 0 main_~sum~0) (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (<= main_~sum~0 0))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {6641#(and (<= 0 main_~sum~0) (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (<= main_~sum~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,643 INFO L273 TraceCheckUtils]: 30: Hoare triple {6641#(and (<= 0 main_~sum~0) (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (<= main_~sum~0 0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {6642#(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)) (<= (+ (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))) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,643 INFO L273 TraceCheckUtils]: 31: Hoare triple {6642#(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)) (<= (+ (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))) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= ~SIZE~0 5) (<= 5 ~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; {6643#(and (or (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)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,646 INFO L273 TraceCheckUtils]: 32: Hoare triple {6643#(and (or (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)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {6644#(and (or (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) (+ (* 2 main_~i~0) |main_~#a~0.offset| 7)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 9) (* 2 ~SIZE~0))) (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,647 INFO L273 TraceCheckUtils]: 33: Hoare triple {6644#(and (or (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) (+ (* 2 main_~i~0) |main_~#a~0.offset| 7)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 9) (* 2 ~SIZE~0))) (<= ~SIZE~0 5) (<= 5 ~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; {6645#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~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 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)))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 9) (* 2 ~SIZE~0))) (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,648 INFO L273 TraceCheckUtils]: 34: Hoare triple {6645#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~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 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)))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 9) (* 2 ~SIZE~0))) (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {6646#(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 (- 4)))))) 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 (- 4)))))))) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 5)) (<= (+ main_~i~0 4) ~SIZE~0)) (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,650 INFO L273 TraceCheckUtils]: 35: Hoare triple {6646#(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 (- 4)))))) 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 (- 4)))))))) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 5)) (<= (+ main_~i~0 4) ~SIZE~0)) (<= ~SIZE~0 5) (<= 5 ~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; {6647#(and (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (or (<= (+ main_~i~0 4) ~SIZE~0) (<= ~SIZE~0 (+ main_~i~0 2)) (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))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) 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))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,652 INFO L273 TraceCheckUtils]: 36: Hoare triple {6647#(and (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (or (<= (+ main_~i~0 4) ~SIZE~0) (<= ~SIZE~0 (+ main_~i~0 2)) (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))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) 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))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))))) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {6648#(and (or (<= ~SIZE~0 (+ main_~i~0 1)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) 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 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,653 INFO L273 TraceCheckUtils]: 37: Hoare triple {6648#(and (or (<= ~SIZE~0 (+ main_~i~0 1)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) 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 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (<= ~SIZE~0 5) (<= 5 ~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; {6649#(and (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (or (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 main_~i~0))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= (+ (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|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0)) (<= ~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:31:02,655 INFO L273 TraceCheckUtils]: 38: Hoare triple {6649#(and (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (or (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 main_~i~0))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= (+ (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|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0)) (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {6650#(and (or (<= (* 2 ~SIZE~0) (+ (* 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0)) (<= (+ main_~i~0 2) ~SIZE~0)) (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,657 INFO L273 TraceCheckUtils]: 39: Hoare triple {6650#(and (or (<= (* 2 ~SIZE~0) (+ (* 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0)) (<= (+ main_~i~0 2) ~SIZE~0)) (<= ~SIZE~0 5) (<= 5 ~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; {6651#(and (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (or (<= (+ main_~i~0 2) ~SIZE~0) (and (= (+ (* 2 main_~i~0) 2) (* 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 (- 2))))) (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 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (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 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,659 INFO L273 TraceCheckUtils]: 40: Hoare triple {6651#(and (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (or (<= (+ main_~i~0 2) ~SIZE~0) (and (= (+ (* 2 main_~i~0) 2) (* 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 (- 2))))) (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 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (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 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0))) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {6652#(and (<= ~SIZE~0 5) (or (<= (+ 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= (+ (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 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0))) (<= 5 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,660 INFO L273 TraceCheckUtils]: 41: Hoare triple {6652#(and (<= ~SIZE~0 5) (or (<= (+ 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= (+ (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 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0))) (<= 5 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {6629#(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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= ~SIZE~0 5) (<= 5 ~SIZE~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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,661 INFO L273 TraceCheckUtils]: 42: Hoare triple {6629#(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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= ~SIZE~0 5) (<= 5 ~SIZE~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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {6653#(and (or (and (or (<= 5 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1))) (or (<= ~SIZE~0 5) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))) (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))) (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:31:02,663 INFO L273 TraceCheckUtils]: 43: Hoare triple {6653#(and (or (and (or (<= 5 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1))) (or (<= ~SIZE~0 5) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))) (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 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; {6654#(and (or (and (or (<= 5 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1))) (or (<= ~SIZE~0 5) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,665 INFO L273 TraceCheckUtils]: 44: Hoare triple {6654#(and (or (and (or (<= 5 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1))) (or (<= ~SIZE~0 5) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))))) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {6655#(and (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0)) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 7)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 9) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,667 INFO L273 TraceCheckUtils]: 45: Hoare triple {6655#(and (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0)) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 7)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 9) (* 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; {6656#(and (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))))) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 7)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 9) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,669 INFO L273 TraceCheckUtils]: 46: Hoare triple {6656#(and (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))))) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 7)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 9) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {6657#(and (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0)) (<= (+ main_~i~0 4) ~SIZE~0) (<= ~SIZE~0 (+ main_~i~0 2))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,670 INFO L273 TraceCheckUtils]: 47: Hoare triple {6657#(and (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0)) (<= (+ main_~i~0 4) ~SIZE~0) (<= ~SIZE~0 (+ main_~i~0 2))) (= |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; {6658#(and (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))))) (<= (+ main_~i~0 4) ~SIZE~0) (<= ~SIZE~0 (+ main_~i~0 2))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,672 INFO L273 TraceCheckUtils]: 48: Hoare triple {6658#(and (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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))))) (<= (+ main_~i~0 4) ~SIZE~0) (<= ~SIZE~0 (+ main_~i~0 2))) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {6659#(and (or (<= ~SIZE~0 (+ main_~i~0 1)) (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)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,673 INFO L273 TraceCheckUtils]: 49: Hoare triple {6659#(and (or (<= ~SIZE~0 (+ main_~i~0 1)) (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)) (<= (+ (* 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; {6660#(and (or (<= ~SIZE~0 (+ main_~i~0 1)) (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))))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:02,675 INFO L273 TraceCheckUtils]: 50: Hoare triple {6660#(and (or (<= ~SIZE~0 (+ main_~i~0 1)) (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))))))) (<= (+ (* 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; {6661#(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:31:02,676 INFO L273 TraceCheckUtils]: 51: Hoare triple {6661#(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~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem9;havoc #t~mem9; {6662#(or (<= (+ main_~i~0 2) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} is VALID [2018-11-23 12:31:02,677 INFO L273 TraceCheckUtils]: 52: Hoare triple {6662#(or (<= (+ main_~i~0 2) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {6663#(or (<= (+ main_~i~0 1) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} is VALID [2018-11-23 12:31:02,678 INFO L273 TraceCheckUtils]: 53: Hoare triple {6663#(or (<= (+ main_~i~0 1) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} assume !(~i~0 < ~SIZE~0); {6664#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:31:02,679 INFO L256 TraceCheckUtils]: 54: Hoare triple {6664#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {6665#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:31:02,679 INFO L273 TraceCheckUtils]: 55: Hoare triple {6665#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {6666#(= __VERIFIER_assert_~cond 1)} is VALID [2018-11-23 12:31:02,680 INFO L273 TraceCheckUtils]: 56: Hoare triple {6666#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {6617#false} is VALID [2018-11-23 12:31:02,680 INFO L273 TraceCheckUtils]: 57: Hoare triple {6617#false} assume !false; {6617#false} is VALID [2018-11-23 12:31:02,707 INFO L134 CoverageAnalysis]: Checked inductivity of 100 backedges. 0 proven. 100 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:31:02,707 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:31:02,708 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 13 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 13 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:31:02,715 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 12:31:02,748 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 6 check-sat command(s) [2018-11-23 12:31:02,748 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:31:02,770 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:31:02,772 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:31:05,176 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 117 treesize of output 85 [2018-11-23 12:31:05,218 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:31:05,219 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:31:05,223 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:31:05,223 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:31:05,224 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:31:05,225 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:31:05,225 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:31:05,226 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:31:05,230 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:31:05,231 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:31:05,231 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:31:05,231 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:31:05,263 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 8 select indices, 8 select index equivalence classes, 8 disjoint index pairs (out of 28 index pairs), introduced 4 new quantified variables, introduced 0 case distinctions, treesize of input 85 treesize of output 121 [2018-11-23 12:31:05,266 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:31:05,286 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:31:05,295 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:31:05,295 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 3 variables, input treesize:123, output treesize:7 [2018-11-23 12:31:05,374 INFO L256 TraceCheckUtils]: 0: Hoare triple {6616#true} call ULTIMATE.init(); {6616#true} is VALID [2018-11-23 12:31:05,375 INFO L273 TraceCheckUtils]: 1: Hoare triple {6616#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {6616#true} is VALID [2018-11-23 12:31:05,375 INFO L273 TraceCheckUtils]: 2: Hoare triple {6616#true} assume true; {6616#true} is VALID [2018-11-23 12:31:05,375 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6616#true} {6616#true} #83#return; {6616#true} is VALID [2018-11-23 12:31:05,375 INFO L256 TraceCheckUtils]: 4: Hoare triple {6616#true} call #t~ret10 := main(); {6616#true} is VALID [2018-11-23 12:31:05,375 INFO L273 TraceCheckUtils]: 5: Hoare triple {6616#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {6616#true} is VALID [2018-11-23 12:31:05,376 INFO L273 TraceCheckUtils]: 6: Hoare triple {6616#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; {6618#(and (= main_~sum~0 0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,376 INFO L273 TraceCheckUtils]: 7: Hoare triple {6618#(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; {6619#(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:31:05,377 INFO L273 TraceCheckUtils]: 8: Hoare triple {6619#(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; {6620#(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) (<= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,378 INFO L273 TraceCheckUtils]: 9: Hoare triple {6620#(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) (<= main_~i~0 1) (= |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; {6621#(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_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,379 INFO L273 TraceCheckUtils]: 10: Hoare triple {6621#(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_~i~0 1) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6622#(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) 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,380 INFO L273 TraceCheckUtils]: 11: Hoare triple {6622#(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) 4) (= |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; {6623#(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) 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,381 INFO L273 TraceCheckUtils]: 12: Hoare triple {6623#(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) 4) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6624#(and (<= main_~i~0 3) (<= 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) (<= 3 main_~i~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,382 INFO L273 TraceCheckUtils]: 13: Hoare triple {6624#(and (<= main_~i~0 3) (<= 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) (<= 3 main_~i~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; {6625#(and (<= (+ (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))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2)))))) main_~sum~0) (<= main_~i~0 3) (<= 3 main_~i~0) (<= 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))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,384 INFO L273 TraceCheckUtils]: 14: Hoare triple {6625#(and (<= (+ (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))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2)))))) main_~sum~0) (<= main_~i~0 3) (<= 3 main_~i~0) (<= 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))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2))))))) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6712#(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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))))) (<= 4 main_~i~0) (<= main_~i~0 4) (= |main_~#a~0.offset| 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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6)))) main_~sum~0))} is VALID [2018-11-23 12:31:05,386 INFO L273 TraceCheckUtils]: 15: Hoare triple {6712#(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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))))) (<= 4 main_~i~0) (<= main_~i~0 4) (= |main_~#a~0.offset| 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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6)))) main_~sum~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; {6716#(and (exists ((main_~i~0 Int)) (and (<= (+ (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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 4 main_~i~0) (<= main_~i~0 4) (<= 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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (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:31:05,388 INFO L273 TraceCheckUtils]: 16: Hoare triple {6716#(and (exists ((main_~i~0 Int)) (and (<= (+ (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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 4 main_~i~0) (<= main_~i~0 4) (<= 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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 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; {6716#(and (exists ((main_~i~0 Int)) (and (<= (+ (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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 4 main_~i~0) (<= main_~i~0 4) (<= 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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (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:31:05,390 INFO L273 TraceCheckUtils]: 17: Hoare triple {6716#(and (exists ((main_~i~0 Int)) (and (<= (+ (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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 4 main_~i~0) (<= main_~i~0 4) (<= 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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {6716#(and (exists ((main_~i~0 Int)) (and (<= (+ (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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 4 main_~i~0) (<= main_~i~0 4) (<= 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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (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:31:05,392 INFO L273 TraceCheckUtils]: 18: Hoare triple {6716#(and (exists ((main_~i~0 Int)) (and (<= (+ (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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 4 main_~i~0) (<= main_~i~0 4) (<= 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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {6726#(and (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= 4 v_prenex_5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2)))) main_~sum~0))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,394 INFO L273 TraceCheckUtils]: 19: Hoare triple {6726#(and (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= 4 v_prenex_5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2)))) main_~sum~0))) (= 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; {6730#(and (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= 4 v_prenex_5) (<= (+ 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|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2)))) (+ 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:31:05,396 INFO L273 TraceCheckUtils]: 20: Hoare triple {6730#(and (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= 4 v_prenex_5) (<= (+ 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|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2)))) (+ 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~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {6734#(and (= main_~i~0 1) (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2)))) (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0)) (<= 4 v_prenex_5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,398 INFO L273 TraceCheckUtils]: 21: Hoare triple {6734#(and (= main_~i~0 1) (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2)))) (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0)) (<= 4 v_prenex_5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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; {6738#(and (= main_~i~0 1) (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= 4 v_prenex_5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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|)))) (<= (+ (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|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,400 INFO L273 TraceCheckUtils]: 22: Hoare triple {6738#(and (= main_~i~0 1) (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= 4 v_prenex_5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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|)))) (<= (+ (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|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {6742#(and (= main_~i~0 2) (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= 4 v_prenex_5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,403 INFO L273 TraceCheckUtils]: 23: Hoare triple {6742#(and (= main_~i~0 2) (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= 4 v_prenex_5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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_~#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; {6746#(and (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= (+ (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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= 4 v_prenex_5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))))) (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,405 INFO L273 TraceCheckUtils]: 24: Hoare triple {6746#(and (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= (+ (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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= 4 v_prenex_5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))))) (= main_~i~0 2) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {6750#(and (= main_~i~0 3) (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0)) (<= 4 v_prenex_5) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,407 INFO L273 TraceCheckUtils]: 25: Hoare triple {6750#(and (= main_~i~0 3) (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0)) (<= 4 v_prenex_5) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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; {6754#(and (= main_~i~0 3) (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= 4 v_prenex_5) (<= (+ (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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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)) (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:31:05,410 INFO L273 TraceCheckUtils]: 26: Hoare triple {6754#(and (= main_~i~0 3) (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= 4 v_prenex_5) (<= (+ (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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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)) (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~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {6758#(and (exists ((v_prenex_5 Int)) (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|) (+ |main_~#a~0.offset| 6)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= v_prenex_5 4) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 6)) main_~sum~0)) (<= 4 v_prenex_5))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,412 INFO L273 TraceCheckUtils]: 27: Hoare triple {6758#(and (exists ((v_prenex_5 Int)) (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|) (+ |main_~#a~0.offset| 6)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= v_prenex_5 4) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 6)) main_~sum~0)) (<= 4 v_prenex_5))) (= 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; {6762#(and (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) 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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= 4 v_prenex_5))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,414 INFO L273 TraceCheckUtils]: 28: Hoare triple {6762#(and (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) 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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= 4 v_prenex_5))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {6762#(and (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) 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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= 4 v_prenex_5))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,415 INFO L273 TraceCheckUtils]: 29: Hoare triple {6762#(and (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) 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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= 4 v_prenex_5))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {6762#(and (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) 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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= 4 v_prenex_5))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,417 INFO L273 TraceCheckUtils]: 30: Hoare triple {6762#(and (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) 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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= 4 v_prenex_5))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {6618#(and (= main_~sum~0 0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,417 INFO L273 TraceCheckUtils]: 31: Hoare triple {6618#(and (= main_~sum~0 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; {6619#(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:31:05,419 INFO L273 TraceCheckUtils]: 32: Hoare triple {6619#(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~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {6620#(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) (<= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,420 INFO L273 TraceCheckUtils]: 33: Hoare triple {6620#(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) (<= main_~i~0 1) (= |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; {6621#(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_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,421 INFO L273 TraceCheckUtils]: 34: Hoare triple {6621#(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_~i~0 1) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {6622#(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) 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,422 INFO L273 TraceCheckUtils]: 35: Hoare triple {6622#(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) 4) (= |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; {6623#(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) 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,424 INFO L273 TraceCheckUtils]: 36: Hoare triple {6623#(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) 4) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {6624#(and (<= main_~i~0 3) (<= 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) (<= 3 main_~i~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,425 INFO L273 TraceCheckUtils]: 37: Hoare triple {6624#(and (<= main_~i~0 3) (<= 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) (<= 3 main_~i~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; {6625#(and (<= (+ (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))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2)))))) main_~sum~0) (<= main_~i~0 3) (<= 3 main_~i~0) (<= 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))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,427 INFO L273 TraceCheckUtils]: 38: Hoare triple {6625#(and (<= (+ (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))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2)))))) main_~sum~0) (<= main_~i~0 3) (<= 3 main_~i~0) (<= 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))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2))))))) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {6712#(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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))))) (<= 4 main_~i~0) (<= main_~i~0 4) (= |main_~#a~0.offset| 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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6)))) main_~sum~0))} is VALID [2018-11-23 12:31:05,429 INFO L273 TraceCheckUtils]: 39: Hoare triple {6712#(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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))))) (<= 4 main_~i~0) (<= main_~i~0 4) (= |main_~#a~0.offset| 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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6)))) 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; {6716#(and (exists ((main_~i~0 Int)) (and (<= (+ (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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 4 main_~i~0) (<= main_~i~0 4) (<= 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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (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:31:05,431 INFO L273 TraceCheckUtils]: 40: Hoare triple {6716#(and (exists ((main_~i~0 Int)) (and (<= (+ (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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 4 main_~i~0) (<= main_~i~0 4) (<= 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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {6716#(and (exists ((main_~i~0 Int)) (and (<= (+ (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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 4 main_~i~0) (<= main_~i~0 4) (<= 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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (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:31:05,432 INFO L273 TraceCheckUtils]: 41: Hoare triple {6716#(and (exists ((main_~i~0 Int)) (and (<= (+ (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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 4 main_~i~0) (<= main_~i~0 4) (<= 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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {6716#(and (exists ((main_~i~0 Int)) (and (<= (+ (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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 4 main_~i~0) (<= main_~i~0 4) (<= 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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (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:31:05,434 INFO L273 TraceCheckUtils]: 42: Hoare triple {6716#(and (exists ((main_~i~0 Int)) (and (<= (+ (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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 4 main_~i~0) (<= main_~i~0 4) (<= 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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {6726#(and (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= 4 v_prenex_5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2)))) main_~sum~0))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,436 INFO L273 TraceCheckUtils]: 43: Hoare triple {6726#(and (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= 4 v_prenex_5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2)))) main_~sum~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; {6730#(and (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= 4 v_prenex_5) (<= (+ 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|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2)))) (+ 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:31:05,438 INFO L273 TraceCheckUtils]: 44: Hoare triple {6730#(and (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= 4 v_prenex_5) (<= (+ 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|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2)))) (+ 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~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {6734#(and (= main_~i~0 1) (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2)))) (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0)) (<= 4 v_prenex_5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,441 INFO L273 TraceCheckUtils]: 45: Hoare triple {6734#(and (= main_~i~0 1) (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2)))) (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0)) (<= 4 v_prenex_5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))))) (= |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; {6738#(and (= main_~i~0 1) (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= 4 v_prenex_5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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|)))) (<= (+ (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|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,443 INFO L273 TraceCheckUtils]: 46: Hoare triple {6738#(and (= main_~i~0 1) (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= 4 v_prenex_5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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|)))) (<= (+ (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|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))))) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {6742#(and (= main_~i~0 2) (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= 4 v_prenex_5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,445 INFO L273 TraceCheckUtils]: 47: Hoare triple {6742#(and (= main_~i~0 2) (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= 4 v_prenex_5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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_~#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; {6746#(and (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= (+ (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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= 4 v_prenex_5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))))) (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,447 INFO L273 TraceCheckUtils]: 48: Hoare triple {6746#(and (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= (+ (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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= 4 v_prenex_5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))))) (= main_~i~0 2) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {6750#(and (= main_~i~0 3) (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0)) (<= 4 v_prenex_5) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,450 INFO L273 TraceCheckUtils]: 49: Hoare triple {6750#(and (= main_~i~0 3) (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0)) (<= 4 v_prenex_5) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))))) (= |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; {6754#(and (= main_~i~0 3) (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= 4 v_prenex_5) (<= (+ (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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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)) (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:31:05,452 INFO L273 TraceCheckUtils]: 50: Hoare triple {6754#(and (= main_~i~0 3) (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= 4 v_prenex_5) (<= (+ (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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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)) (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~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {6758#(and (exists ((v_prenex_5 Int)) (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|) (+ |main_~#a~0.offset| 6)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= v_prenex_5 4) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 6)) main_~sum~0)) (<= 4 v_prenex_5))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:31:05,454 INFO L273 TraceCheckUtils]: 51: Hoare triple {6758#(and (exists ((v_prenex_5 Int)) (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|) (+ |main_~#a~0.offset| 6)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))) (<= v_prenex_5 4) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 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)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 6)) main_~sum~0)) (<= 4 v_prenex_5))) (= main_~i~0 4) (= |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; {6664#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:31:05,455 INFO L273 TraceCheckUtils]: 52: Hoare triple {6664#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {6664#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:31:05,455 INFO L273 TraceCheckUtils]: 53: Hoare triple {6664#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} assume !(~i~0 < ~SIZE~0); {6664#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:31:05,456 INFO L256 TraceCheckUtils]: 54: Hoare triple {6664#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {6665#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:31:05,457 INFO L273 TraceCheckUtils]: 55: Hoare triple {6665#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {6666#(= __VERIFIER_assert_~cond 1)} is VALID [2018-11-23 12:31:05,457 INFO L273 TraceCheckUtils]: 56: Hoare triple {6666#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {6617#false} is VALID [2018-11-23 12:31:05,458 INFO L273 TraceCheckUtils]: 57: Hoare triple {6617#false} assume !false; {6617#false} is VALID [2018-11-23 12:31:05,484 INFO L134 CoverageAnalysis]: Checked inductivity of 100 backedges. 0 proven. 100 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:31:05,503 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:31:05,503 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [51, 25] total 63 [2018-11-23 12:31:05,504 INFO L78 Accepts]: Start accepts. Automaton has 63 states. Word has length 58 [2018-11-23 12:31:05,504 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:31:05,504 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 63 states. [2018-11-23 12:31:05,702 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 98 edges. 98 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:31:05,703 INFO L459 AbstractCegarLoop]: Interpolant automaton has 63 states [2018-11-23 12:31:05,703 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 63 interpolants. [2018-11-23 12:31:05,705 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=321, Invalid=3585, Unknown=0, NotChecked=0, Total=3906 [2018-11-23 12:31:05,705 INFO L87 Difference]: Start difference. First operand 112 states and 125 transitions. Second operand 63 states. [2018-11-23 12:31:08,630 WARN L180 SmtUtils]: Spent 207.00 ms on a formula simplification. DAG size of input: 120 DAG size of output: 86 [2018-11-23 12:31:10,205 WARN L180 SmtUtils]: Spent 497.00 ms on a formula simplification. DAG size of input: 149 DAG size of output: 127 [2018-11-23 12:31:13,048 WARN L180 SmtUtils]: Spent 112.00 ms on a formula simplification. DAG size of input: 150 DAG size of output: 41 [2018-11-23 12:31:13,661 WARN L180 SmtUtils]: Spent 108.00 ms on a formula simplification. DAG size of input: 152 DAG size of output: 38 [2018-11-23 12:31:14,291 WARN L180 SmtUtils]: Spent 114.00 ms on a formula simplification. DAG size of input: 163 DAG size of output: 44 [2018-11-23 12:31:14,884 WARN L180 SmtUtils]: Spent 127.00 ms on a formula simplification. DAG size of input: 165 DAG size of output: 34 [2018-11-23 12:31:15,550 WARN L180 SmtUtils]: Spent 128.00 ms on a formula simplification. DAG size of input: 181 DAG size of output: 24 [2018-11-23 12:31:16,491 WARN L180 SmtUtils]: Spent 480.00 ms on a formula simplification. DAG size of input: 153 DAG size of output: 123 [2018-11-23 12:31:17,185 WARN L180 SmtUtils]: Spent 152.00 ms on a formula simplification that was a NOOP. DAG size: 99 [2018-11-23 12:31:18,297 WARN L180 SmtUtils]: Spent 598.00 ms on a formula simplification. DAG size of input: 148 DAG size of output: 129 [2018-11-23 12:31:19,093 WARN L180 SmtUtils]: Spent 286.00 ms on a formula simplification. DAG size of input: 114 DAG size of output: 94 [2018-11-23 12:31:19,930 WARN L180 SmtUtils]: Spent 148.00 ms on a formula simplification. DAG size of input: 77 DAG size of output: 77 [2018-11-23 12:31:21,134 WARN L180 SmtUtils]: Spent 367.00 ms on a formula simplification. DAG size of input: 146 DAG size of output: 106 [2018-11-23 12:31:21,404 WARN L180 SmtUtils]: Spent 104.00 ms on a formula simplification. DAG size of input: 74 DAG size of output: 57 [2018-11-23 12:31:21,793 WARN L180 SmtUtils]: Spent 105.00 ms on a formula simplification. DAG size of input: 135 DAG size of output: 20 [2018-11-23 12:31:22,664 WARN L180 SmtUtils]: Spent 109.00 ms on a formula simplification. DAG size of input: 139 DAG size of output: 24 [2018-11-23 12:31:23,489 WARN L180 SmtUtils]: Spent 143.00 ms on a formula simplification. DAG size of input: 148 DAG size of output: 28 [2018-11-23 12:31:24,166 WARN L180 SmtUtils]: Spent 117.00 ms on a formula simplification. DAG size of input: 148 DAG size of output: 31 [2018-11-23 12:31:24,487 WARN L180 SmtUtils]: Spent 124.00 ms on a formula simplification that was a NOOP. DAG size: 115 [2018-11-23 12:31:25,049 WARN L180 SmtUtils]: Spent 145.00 ms on a formula simplification. DAG size of input: 180 DAG size of output: 43 [2018-11-23 12:31:25,841 WARN L180 SmtUtils]: Spent 150.00 ms on a formula simplification. DAG size of input: 180 DAG size of output: 46 [2018-11-23 12:31:26,638 WARN L180 SmtUtils]: Spent 172.00 ms on a formula simplification. DAG size of input: 170 DAG size of output: 47 [2018-11-23 12:31:27,605 WARN L180 SmtUtils]: Spent 447.00 ms on a formula simplification. DAG size of input: 146 DAG size of output: 119 [2018-11-23 12:31:28,205 WARN L180 SmtUtils]: Spent 148.00 ms on a formula simplification that was a NOOP. DAG size: 100 [2018-11-23 12:31:29,119 WARN L180 SmtUtils]: Spent 204.00 ms on a formula simplification. DAG size of input: 117 DAG size of output: 104 [2018-11-23 12:31:29,820 WARN L180 SmtUtils]: Spent 147.00 ms on a formula simplification. DAG size of input: 76 DAG size of output: 76 [2018-11-23 12:31:35,543 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:31:35,544 INFO L93 Difference]: Finished difference Result 203 states and 232 transitions. [2018-11-23 12:31:35,544 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 72 states. [2018-11-23 12:31:35,544 INFO L78 Accepts]: Start accepts. Automaton has 63 states. Word has length 58 [2018-11-23 12:31:35,544 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:31:35,544 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 63 states. [2018-11-23 12:31:35,547 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 72 states to 72 states and 151 transitions. [2018-11-23 12:31:35,547 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 63 states. [2018-11-23 12:31:35,549 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 72 states to 72 states and 151 transitions. [2018-11-23 12:31:35,549 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 72 states and 151 transitions. [2018-11-23 12:31:35,907 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 151 edges. 151 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:31:35,911 INFO L225 Difference]: With dead ends: 203 [2018-11-23 12:31:35,911 INFO L226 Difference]: Without dead ends: 195 [2018-11-23 12:31:35,915 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 163 GetRequests, 29 SyntacticMatches, 19 SemanticMatches, 115 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3722 ImplicationChecksByTransitivity, 21.8s TimeCoverageRelationStatistics Valid=1691, Invalid=11881, Unknown=0, NotChecked=0, Total=13572 [2018-11-23 12:31:35,915 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 195 states. [2018-11-23 12:31:37,322 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 195 to 165. [2018-11-23 12:31:37,322 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:31:37,323 INFO L82 GeneralOperation]: Start isEquivalent. First operand 195 states. Second operand 165 states. [2018-11-23 12:31:37,323 INFO L74 IsIncluded]: Start isIncluded. First operand 195 states. Second operand 165 states. [2018-11-23 12:31:37,323 INFO L87 Difference]: Start difference. First operand 195 states. Second operand 165 states. [2018-11-23 12:31:37,327 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:31:37,327 INFO L93 Difference]: Finished difference Result 195 states and 220 transitions. [2018-11-23 12:31:37,327 INFO L276 IsEmpty]: Start isEmpty. Operand 195 states and 220 transitions. [2018-11-23 12:31:37,328 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:31:37,328 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:31:37,328 INFO L74 IsIncluded]: Start isIncluded. First operand 165 states. Second operand 195 states. [2018-11-23 12:31:37,328 INFO L87 Difference]: Start difference. First operand 165 states. Second operand 195 states. [2018-11-23 12:31:37,332 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:31:37,333 INFO L93 Difference]: Finished difference Result 195 states and 220 transitions. [2018-11-23 12:31:37,333 INFO L276 IsEmpty]: Start isEmpty. Operand 195 states and 220 transitions. [2018-11-23 12:31:37,333 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:31:37,333 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:31:37,334 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:31:37,334 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:31:37,334 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 165 states. [2018-11-23 12:31:37,337 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 165 states to 165 states and 188 transitions. [2018-11-23 12:31:37,337 INFO L78 Accepts]: Start accepts. Automaton has 165 states and 188 transitions. Word has length 58 [2018-11-23 12:31:37,338 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:31:37,338 INFO L480 AbstractCegarLoop]: Abstraction has 165 states and 188 transitions. [2018-11-23 12:31:37,338 INFO L481 AbstractCegarLoop]: Interpolant automaton has 63 states. [2018-11-23 12:31:37,338 INFO L276 IsEmpty]: Start isEmpty. Operand 165 states and 188 transitions. [2018-11-23 12:31:37,339 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 61 [2018-11-23 12:31:37,339 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:31:37,339 INFO L402 BasicCegarLoop]: trace histogram [6, 6, 5, 5, 5, 5, 5, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:31:37,339 INFO L423 AbstractCegarLoop]: === Iteration 16 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:31:37,340 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:31:37,340 INFO L82 PathProgramCache]: Analyzing trace with hash -1112519885, now seen corresponding path program 12 times [2018-11-23 12:31:37,340 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:31:37,340 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:31:37,341 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:31:37,341 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:31:37,341 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:31:37,352 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:31:37,858 INFO L256 TraceCheckUtils]: 0: Hoare triple {7901#true} call ULTIMATE.init(); {7901#true} is VALID [2018-11-23 12:31:37,858 INFO L273 TraceCheckUtils]: 1: Hoare triple {7901#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {7901#true} is VALID [2018-11-23 12:31:37,858 INFO L273 TraceCheckUtils]: 2: Hoare triple {7901#true} assume true; {7901#true} is VALID [2018-11-23 12:31:37,858 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {7901#true} {7901#true} #83#return; {7901#true} is VALID [2018-11-23 12:31:37,859 INFO L256 TraceCheckUtils]: 4: Hoare triple {7901#true} call #t~ret10 := main(); {7901#true} is VALID [2018-11-23 12:31:37,859 INFO L273 TraceCheckUtils]: 5: Hoare triple {7901#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {7901#true} is VALID [2018-11-23 12:31:37,859 INFO L273 TraceCheckUtils]: 6: Hoare triple {7901#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; {7903#(= main_~i~0 0)} is VALID [2018-11-23 12:31:37,860 INFO L273 TraceCheckUtils]: 7: Hoare triple {7903#(= 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; {7903#(= main_~i~0 0)} is VALID [2018-11-23 12:31:37,861 INFO L273 TraceCheckUtils]: 8: Hoare triple {7903#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7904#(<= 1 main_~i~0)} is VALID [2018-11-23 12:31:37,861 INFO L273 TraceCheckUtils]: 9: Hoare triple {7904#(<= 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; {7904#(<= 1 main_~i~0)} is VALID [2018-11-23 12:31:37,862 INFO L273 TraceCheckUtils]: 10: Hoare triple {7904#(<= 1 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7905#(<= 2 main_~i~0)} is VALID [2018-11-23 12:31:37,862 INFO L273 TraceCheckUtils]: 11: Hoare triple {7905#(<= 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; {7905#(<= 2 main_~i~0)} is VALID [2018-11-23 12:31:37,863 INFO L273 TraceCheckUtils]: 12: Hoare triple {7905#(<= 2 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7906#(<= 3 main_~i~0)} is VALID [2018-11-23 12:31:37,864 INFO L273 TraceCheckUtils]: 13: Hoare triple {7906#(<= 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; {7906#(<= 3 main_~i~0)} is VALID [2018-11-23 12:31:37,864 INFO L273 TraceCheckUtils]: 14: Hoare triple {7906#(<= 3 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7907#(<= 4 main_~i~0)} is VALID [2018-11-23 12:31:37,865 INFO L273 TraceCheckUtils]: 15: Hoare triple {7907#(<= 4 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; {7907#(<= 4 main_~i~0)} is VALID [2018-11-23 12:31:37,865 INFO L273 TraceCheckUtils]: 16: Hoare triple {7907#(<= 4 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7908#(<= 5 main_~i~0)} is VALID [2018-11-23 12:31:37,866 INFO L273 TraceCheckUtils]: 17: Hoare triple {7908#(<= 5 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; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:37,867 INFO L273 TraceCheckUtils]: 18: Hoare triple {7909#(<= 6 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:37,867 INFO L273 TraceCheckUtils]: 19: Hoare triple {7909#(<= 6 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:37,868 INFO L273 TraceCheckUtils]: 20: Hoare triple {7909#(<= 6 ~SIZE~0)} ~i~0 := 0; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:37,868 INFO L273 TraceCheckUtils]: 21: Hoare triple {7909#(<= 6 ~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; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:37,869 INFO L273 TraceCheckUtils]: 22: Hoare triple {7909#(<= 6 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:37,869 INFO L273 TraceCheckUtils]: 23: Hoare triple {7909#(<= 6 ~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; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:37,870 INFO L273 TraceCheckUtils]: 24: Hoare triple {7909#(<= 6 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:37,870 INFO L273 TraceCheckUtils]: 25: Hoare triple {7909#(<= 6 ~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; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:37,871 INFO L273 TraceCheckUtils]: 26: Hoare triple {7909#(<= 6 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:37,871 INFO L273 TraceCheckUtils]: 27: Hoare triple {7909#(<= 6 ~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; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:37,872 INFO L273 TraceCheckUtils]: 28: Hoare triple {7909#(<= 6 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:37,872 INFO L273 TraceCheckUtils]: 29: Hoare triple {7909#(<= 6 ~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; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:37,873 INFO L273 TraceCheckUtils]: 30: Hoare triple {7909#(<= 6 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:37,873 INFO L273 TraceCheckUtils]: 31: Hoare triple {7909#(<= 6 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:37,874 INFO L273 TraceCheckUtils]: 32: Hoare triple {7909#(<= 6 ~SIZE~0)} ~i~0 := 0; {7910#(and (<= 6 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:31:37,874 INFO L273 TraceCheckUtils]: 33: Hoare triple {7910#(and (<= 6 ~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; {7910#(and (<= 6 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:31:37,875 INFO L273 TraceCheckUtils]: 34: Hoare triple {7910#(and (<= 6 ~SIZE~0) (= main_~i~0 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {7911#(<= (+ main_~i~0 5) ~SIZE~0)} is VALID [2018-11-23 12:31:37,876 INFO L273 TraceCheckUtils]: 35: Hoare triple {7911#(<= (+ main_~i~0 5) ~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; {7911#(<= (+ main_~i~0 5) ~SIZE~0)} is VALID [2018-11-23 12:31:37,877 INFO L273 TraceCheckUtils]: 36: Hoare triple {7911#(<= (+ main_~i~0 5) ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {7912#(<= (+ main_~i~0 4) ~SIZE~0)} is VALID [2018-11-23 12:31:37,877 INFO L273 TraceCheckUtils]: 37: Hoare triple {7912#(<= (+ main_~i~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; {7912#(<= (+ main_~i~0 4) ~SIZE~0)} is VALID [2018-11-23 12:31:37,878 INFO L273 TraceCheckUtils]: 38: Hoare triple {7912#(<= (+ main_~i~0 4) ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {7913#(<= (+ main_~i~0 3) ~SIZE~0)} is VALID [2018-11-23 12:31:37,878 INFO L273 TraceCheckUtils]: 39: Hoare triple {7913#(<= (+ main_~i~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; {7913#(<= (+ main_~i~0 3) ~SIZE~0)} is VALID [2018-11-23 12:31:37,879 INFO L273 TraceCheckUtils]: 40: Hoare triple {7913#(<= (+ main_~i~0 3) ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {7914#(<= (+ main_~i~0 2) ~SIZE~0)} is VALID [2018-11-23 12:31:37,880 INFO L273 TraceCheckUtils]: 41: Hoare triple {7914#(<= (+ 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; {7914#(<= (+ main_~i~0 2) ~SIZE~0)} is VALID [2018-11-23 12:31:37,880 INFO L273 TraceCheckUtils]: 42: Hoare triple {7914#(<= (+ main_~i~0 2) ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {7915#(<= (+ main_~i~0 1) ~SIZE~0)} is VALID [2018-11-23 12:31:37,881 INFO L273 TraceCheckUtils]: 43: Hoare triple {7915#(<= (+ main_~i~0 1) ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {7902#false} is VALID [2018-11-23 12:31:37,881 INFO L273 TraceCheckUtils]: 44: Hoare triple {7902#false} ~i~0 := 0; {7902#false} is VALID [2018-11-23 12:31:37,882 INFO L273 TraceCheckUtils]: 45: Hoare triple {7902#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; {7902#false} is VALID [2018-11-23 12:31:37,882 INFO L273 TraceCheckUtils]: 46: Hoare triple {7902#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {7902#false} is VALID [2018-11-23 12:31:37,882 INFO L273 TraceCheckUtils]: 47: Hoare triple {7902#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; {7902#false} is VALID [2018-11-23 12:31:37,882 INFO L273 TraceCheckUtils]: 48: Hoare triple {7902#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {7902#false} is VALID [2018-11-23 12:31:37,882 INFO L273 TraceCheckUtils]: 49: Hoare triple {7902#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; {7902#false} is VALID [2018-11-23 12:31:37,883 INFO L273 TraceCheckUtils]: 50: Hoare triple {7902#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {7902#false} is VALID [2018-11-23 12:31:37,883 INFO L273 TraceCheckUtils]: 51: Hoare triple {7902#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; {7902#false} is VALID [2018-11-23 12:31:37,883 INFO L273 TraceCheckUtils]: 52: Hoare triple {7902#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {7902#false} is VALID [2018-11-23 12:31:37,883 INFO L273 TraceCheckUtils]: 53: Hoare triple {7902#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; {7902#false} is VALID [2018-11-23 12:31:37,883 INFO L273 TraceCheckUtils]: 54: Hoare triple {7902#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {7902#false} is VALID [2018-11-23 12:31:37,883 INFO L273 TraceCheckUtils]: 55: Hoare triple {7902#false} assume !(~i~0 < ~SIZE~0); {7902#false} is VALID [2018-11-23 12:31:37,884 INFO L256 TraceCheckUtils]: 56: Hoare triple {7902#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {7902#false} is VALID [2018-11-23 12:31:37,884 INFO L273 TraceCheckUtils]: 57: Hoare triple {7902#false} ~cond := #in~cond; {7902#false} is VALID [2018-11-23 12:31:37,884 INFO L273 TraceCheckUtils]: 58: Hoare triple {7902#false} assume 0 == ~cond; {7902#false} is VALID [2018-11-23 12:31:37,884 INFO L273 TraceCheckUtils]: 59: Hoare triple {7902#false} assume !false; {7902#false} is VALID [2018-11-23 12:31:37,887 INFO L134 CoverageAnalysis]: Checked inductivity of 111 backedges. 16 proven. 45 refuted. 0 times theorem prover too weak. 50 trivial. 0 not checked. [2018-11-23 12:31:37,887 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:31:37,887 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 14 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 14 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:31:37,897 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 12:31:37,927 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2018-11-23 12:31:37,927 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:31:37,940 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:31:37,941 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:31:38,644 INFO L256 TraceCheckUtils]: 0: Hoare triple {7901#true} call ULTIMATE.init(); {7901#true} is VALID [2018-11-23 12:31:38,644 INFO L273 TraceCheckUtils]: 1: Hoare triple {7901#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {7901#true} is VALID [2018-11-23 12:31:38,644 INFO L273 TraceCheckUtils]: 2: Hoare triple {7901#true} assume true; {7901#true} is VALID [2018-11-23 12:31:38,644 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {7901#true} {7901#true} #83#return; {7901#true} is VALID [2018-11-23 12:31:38,644 INFO L256 TraceCheckUtils]: 4: Hoare triple {7901#true} call #t~ret10 := main(); {7901#true} is VALID [2018-11-23 12:31:38,645 INFO L273 TraceCheckUtils]: 5: Hoare triple {7901#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {7901#true} is VALID [2018-11-23 12:31:38,645 INFO L273 TraceCheckUtils]: 6: Hoare triple {7901#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; {7937#(<= 0 main_~i~0)} is VALID [2018-11-23 12:31:38,646 INFO L273 TraceCheckUtils]: 7: Hoare triple {7937#(<= 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; {7937#(<= 0 main_~i~0)} is VALID [2018-11-23 12:31:38,646 INFO L273 TraceCheckUtils]: 8: Hoare triple {7937#(<= 0 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7904#(<= 1 main_~i~0)} is VALID [2018-11-23 12:31:38,649 INFO L273 TraceCheckUtils]: 9: Hoare triple {7904#(<= 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; {7904#(<= 1 main_~i~0)} is VALID [2018-11-23 12:31:38,649 INFO L273 TraceCheckUtils]: 10: Hoare triple {7904#(<= 1 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7905#(<= 2 main_~i~0)} is VALID [2018-11-23 12:31:38,651 INFO L273 TraceCheckUtils]: 11: Hoare triple {7905#(<= 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; {7905#(<= 2 main_~i~0)} is VALID [2018-11-23 12:31:38,651 INFO L273 TraceCheckUtils]: 12: Hoare triple {7905#(<= 2 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7906#(<= 3 main_~i~0)} is VALID [2018-11-23 12:31:38,653 INFO L273 TraceCheckUtils]: 13: Hoare triple {7906#(<= 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; {7906#(<= 3 main_~i~0)} is VALID [2018-11-23 12:31:38,653 INFO L273 TraceCheckUtils]: 14: Hoare triple {7906#(<= 3 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7907#(<= 4 main_~i~0)} is VALID [2018-11-23 12:31:38,655 INFO L273 TraceCheckUtils]: 15: Hoare triple {7907#(<= 4 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; {7907#(<= 4 main_~i~0)} is VALID [2018-11-23 12:31:38,655 INFO L273 TraceCheckUtils]: 16: Hoare triple {7907#(<= 4 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7908#(<= 5 main_~i~0)} is VALID [2018-11-23 12:31:38,657 INFO L273 TraceCheckUtils]: 17: Hoare triple {7908#(<= 5 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; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:38,657 INFO L273 TraceCheckUtils]: 18: Hoare triple {7909#(<= 6 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:38,659 INFO L273 TraceCheckUtils]: 19: Hoare triple {7909#(<= 6 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:38,659 INFO L273 TraceCheckUtils]: 20: Hoare triple {7909#(<= 6 ~SIZE~0)} ~i~0 := 0; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:38,661 INFO L273 TraceCheckUtils]: 21: Hoare triple {7909#(<= 6 ~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; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:38,661 INFO L273 TraceCheckUtils]: 22: Hoare triple {7909#(<= 6 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:38,663 INFO L273 TraceCheckUtils]: 23: Hoare triple {7909#(<= 6 ~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; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:38,663 INFO L273 TraceCheckUtils]: 24: Hoare triple {7909#(<= 6 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:38,665 INFO L273 TraceCheckUtils]: 25: Hoare triple {7909#(<= 6 ~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; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:38,667 INFO L273 TraceCheckUtils]: 26: Hoare triple {7909#(<= 6 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:38,667 INFO L273 TraceCheckUtils]: 27: Hoare triple {7909#(<= 6 ~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; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:38,669 INFO L273 TraceCheckUtils]: 28: Hoare triple {7909#(<= 6 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:38,669 INFO L273 TraceCheckUtils]: 29: Hoare triple {7909#(<= 6 ~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; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:38,671 INFO L273 TraceCheckUtils]: 30: Hoare triple {7909#(<= 6 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:38,671 INFO L273 TraceCheckUtils]: 31: Hoare triple {7909#(<= 6 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:38,671 INFO L273 TraceCheckUtils]: 32: Hoare triple {7909#(<= 6 ~SIZE~0)} ~i~0 := 0; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:38,672 INFO L273 TraceCheckUtils]: 33: Hoare triple {7909#(<= 6 ~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; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:38,673 INFO L273 TraceCheckUtils]: 34: Hoare triple {7909#(<= 6 ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:38,673 INFO L273 TraceCheckUtils]: 35: Hoare triple {7909#(<= 6 ~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; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:38,675 INFO L273 TraceCheckUtils]: 36: Hoare triple {7909#(<= 6 ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:38,675 INFO L273 TraceCheckUtils]: 37: Hoare triple {7909#(<= 6 ~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; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:38,677 INFO L273 TraceCheckUtils]: 38: Hoare triple {7909#(<= 6 ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:38,677 INFO L273 TraceCheckUtils]: 39: Hoare triple {7909#(<= 6 ~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; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:38,679 INFO L273 TraceCheckUtils]: 40: Hoare triple {7909#(<= 6 ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:38,679 INFO L273 TraceCheckUtils]: 41: Hoare triple {7909#(<= 6 ~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; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:38,681 INFO L273 TraceCheckUtils]: 42: Hoare triple {7909#(<= 6 ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:38,681 INFO L273 TraceCheckUtils]: 43: Hoare triple {7909#(<= 6 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {7909#(<= 6 ~SIZE~0)} is VALID [2018-11-23 12:31:38,683 INFO L273 TraceCheckUtils]: 44: Hoare triple {7909#(<= 6 ~SIZE~0)} ~i~0 := 0; {8052#(and (<= 6 ~SIZE~0) (<= main_~i~0 0))} is VALID [2018-11-23 12:31:38,683 INFO L273 TraceCheckUtils]: 45: Hoare triple {8052#(and (<= 6 ~SIZE~0) (<= main_~i~0 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; {8052#(and (<= 6 ~SIZE~0) (<= main_~i~0 0))} is VALID [2018-11-23 12:31:38,685 INFO L273 TraceCheckUtils]: 46: Hoare triple {8052#(and (<= 6 ~SIZE~0) (<= main_~i~0 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {8059#(and (<= 6 ~SIZE~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:31:38,685 INFO L273 TraceCheckUtils]: 47: Hoare triple {8059#(and (<= 6 ~SIZE~0) (<= main_~i~0 1))} 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; {8059#(and (<= 6 ~SIZE~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:31:38,687 INFO L273 TraceCheckUtils]: 48: Hoare triple {8059#(and (<= 6 ~SIZE~0) (<= main_~i~0 1))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {8066#(and (<= main_~i~0 2) (<= 6 ~SIZE~0))} is VALID [2018-11-23 12:31:38,687 INFO L273 TraceCheckUtils]: 49: Hoare triple {8066#(and (<= main_~i~0 2) (<= 6 ~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; {8066#(and (<= main_~i~0 2) (<= 6 ~SIZE~0))} is VALID [2018-11-23 12:31:38,691 INFO L273 TraceCheckUtils]: 50: Hoare triple {8066#(and (<= main_~i~0 2) (<= 6 ~SIZE~0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {8073#(and (<= main_~i~0 3) (<= 6 ~SIZE~0))} is VALID [2018-11-23 12:31:38,692 INFO L273 TraceCheckUtils]: 51: Hoare triple {8073#(and (<= main_~i~0 3) (<= 6 ~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; {8073#(and (<= main_~i~0 3) (<= 6 ~SIZE~0))} is VALID [2018-11-23 12:31:38,696 INFO L273 TraceCheckUtils]: 52: Hoare triple {8073#(and (<= main_~i~0 3) (<= 6 ~SIZE~0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {8080#(and (<= 6 ~SIZE~0) (<= main_~i~0 4))} is VALID [2018-11-23 12:31:38,696 INFO L273 TraceCheckUtils]: 53: Hoare triple {8080#(and (<= 6 ~SIZE~0) (<= main_~i~0 4))} 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; {8080#(and (<= 6 ~SIZE~0) (<= main_~i~0 4))} is VALID [2018-11-23 12:31:38,698 INFO L273 TraceCheckUtils]: 54: Hoare triple {8080#(and (<= 6 ~SIZE~0) (<= main_~i~0 4))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {8087#(and (<= 6 ~SIZE~0) (<= main_~i~0 5))} is VALID [2018-11-23 12:31:38,698 INFO L273 TraceCheckUtils]: 55: Hoare triple {8087#(and (<= 6 ~SIZE~0) (<= main_~i~0 5))} assume !(~i~0 < ~SIZE~0); {7902#false} is VALID [2018-11-23 12:31:38,698 INFO L256 TraceCheckUtils]: 56: Hoare triple {7902#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {7902#false} is VALID [2018-11-23 12:31:38,698 INFO L273 TraceCheckUtils]: 57: Hoare triple {7902#false} ~cond := #in~cond; {7902#false} is VALID [2018-11-23 12:31:38,698 INFO L273 TraceCheckUtils]: 58: Hoare triple {7902#false} assume 0 == ~cond; {7902#false} is VALID [2018-11-23 12:31:38,699 INFO L273 TraceCheckUtils]: 59: Hoare triple {7902#false} assume !false; {7902#false} is VALID [2018-11-23 12:31:38,701 INFO L134 CoverageAnalysis]: Checked inductivity of 111 backedges. 25 proven. 36 refuted. 0 times theorem prover too weak. 50 trivial. 0 not checked. [2018-11-23 12:31:38,720 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:31:38,720 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 15] total 22 [2018-11-23 12:31:38,720 INFO L78 Accepts]: Start accepts. Automaton has 22 states. Word has length 60 [2018-11-23 12:31:38,721 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:31:38,721 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 22 states. [2018-11-23 12:31:38,819 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:31:38,820 INFO L459 AbstractCegarLoop]: Interpolant automaton has 22 states [2018-11-23 12:31:38,820 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2018-11-23 12:31:38,820 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=122, Invalid=340, Unknown=0, NotChecked=0, Total=462 [2018-11-23 12:31:38,820 INFO L87 Difference]: Start difference. First operand 165 states and 188 transitions. Second operand 22 states. [2018-11-23 12:31:43,979 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:31:43,980 INFO L93 Difference]: Finished difference Result 290 states and 320 transitions. [2018-11-23 12:31:43,980 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2018-11-23 12:31:43,980 INFO L78 Accepts]: Start accepts. Automaton has 22 states. Word has length 60 [2018-11-23 12:31:43,980 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:31:43,980 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 22 states. [2018-11-23 12:31:43,982 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 133 transitions. [2018-11-23 12:31:43,982 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 22 states. [2018-11-23 12:31:43,983 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 133 transitions. [2018-11-23 12:31:43,984 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 23 states and 133 transitions. [2018-11-23 12:31:44,268 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 133 edges. 133 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:31:44,274 INFO L225 Difference]: With dead ends: 290 [2018-11-23 12:31:44,274 INFO L226 Difference]: Without dead ends: 249 [2018-11-23 12:31:44,275 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 87 GetRequests, 54 SyntacticMatches, 0 SemanticMatches, 33 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 282 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=273, Invalid=917, Unknown=0, NotChecked=0, Total=1190 [2018-11-23 12:31:44,275 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 249 states. [2018-11-23 12:31:47,825 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 249 to 181. [2018-11-23 12:31:47,826 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:31:47,826 INFO L82 GeneralOperation]: Start isEquivalent. First operand 249 states. Second operand 181 states. [2018-11-23 12:31:47,826 INFO L74 IsIncluded]: Start isIncluded. First operand 249 states. Second operand 181 states. [2018-11-23 12:31:47,826 INFO L87 Difference]: Start difference. First operand 249 states. Second operand 181 states. [2018-11-23 12:31:47,832 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:31:47,832 INFO L93 Difference]: Finished difference Result 249 states and 272 transitions. [2018-11-23 12:31:47,832 INFO L276 IsEmpty]: Start isEmpty. Operand 249 states and 272 transitions. [2018-11-23 12:31:47,833 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:31:47,833 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:31:47,833 INFO L74 IsIncluded]: Start isIncluded. First operand 181 states. Second operand 249 states. [2018-11-23 12:31:47,833 INFO L87 Difference]: Start difference. First operand 181 states. Second operand 249 states. [2018-11-23 12:31:47,838 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:31:47,839 INFO L93 Difference]: Finished difference Result 249 states and 272 transitions. [2018-11-23 12:31:47,839 INFO L276 IsEmpty]: Start isEmpty. Operand 249 states and 272 transitions. [2018-11-23 12:31:47,839 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:31:47,840 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:31:47,840 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:31:47,840 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:31:47,840 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 181 states. [2018-11-23 12:31:47,844 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 181 states to 181 states and 203 transitions. [2018-11-23 12:31:47,844 INFO L78 Accepts]: Start accepts. Automaton has 181 states and 203 transitions. Word has length 60 [2018-11-23 12:31:47,844 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:31:47,844 INFO L480 AbstractCegarLoop]: Abstraction has 181 states and 203 transitions. [2018-11-23 12:31:47,844 INFO L481 AbstractCegarLoop]: Interpolant automaton has 22 states. [2018-11-23 12:31:47,844 INFO L276 IsEmpty]: Start isEmpty. Operand 181 states and 203 transitions. [2018-11-23 12:31:47,845 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 61 [2018-11-23 12:31:47,845 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:31:47,845 INFO L402 BasicCegarLoop]: trace histogram [9, 9, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:31:47,846 INFO L423 AbstractCegarLoop]: === Iteration 17 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:31:47,846 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:31:47,846 INFO L82 PathProgramCache]: Analyzing trace with hash -478324493, now seen corresponding path program 13 times [2018-11-23 12:31:47,846 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:31:47,846 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:31:47,847 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:31:47,847 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:31:47,847 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:31:47,857 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:31:48,777 INFO L256 TraceCheckUtils]: 0: Hoare triple {9327#true} call ULTIMATE.init(); {9327#true} is VALID [2018-11-23 12:31:48,778 INFO L273 TraceCheckUtils]: 1: Hoare triple {9327#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {9327#true} is VALID [2018-11-23 12:31:48,778 INFO L273 TraceCheckUtils]: 2: Hoare triple {9327#true} assume true; {9327#true} is VALID [2018-11-23 12:31:48,778 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {9327#true} {9327#true} #83#return; {9327#true} is VALID [2018-11-23 12:31:48,778 INFO L256 TraceCheckUtils]: 4: Hoare triple {9327#true} call #t~ret10 := main(); {9327#true} is VALID [2018-11-23 12:31:48,779 INFO L273 TraceCheckUtils]: 5: Hoare triple {9327#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {9327#true} is VALID [2018-11-23 12:31:48,779 INFO L273 TraceCheckUtils]: 6: Hoare triple {9327#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; {9329#(= main_~i~0 0)} is VALID [2018-11-23 12:31:48,780 INFO L273 TraceCheckUtils]: 7: Hoare triple {9329#(= 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; {9329#(= main_~i~0 0)} is VALID [2018-11-23 12:31:48,780 INFO L273 TraceCheckUtils]: 8: Hoare triple {9329#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9330#(<= main_~i~0 1)} is VALID [2018-11-23 12:31:48,781 INFO L273 TraceCheckUtils]: 9: Hoare triple {9330#(<= 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; {9330#(<= main_~i~0 1)} is VALID [2018-11-23 12:31:48,781 INFO L273 TraceCheckUtils]: 10: Hoare triple {9330#(<= main_~i~0 1)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9331#(<= main_~i~0 2)} is VALID [2018-11-23 12:31:48,781 INFO L273 TraceCheckUtils]: 11: Hoare triple {9331#(<= 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; {9331#(<= main_~i~0 2)} is VALID [2018-11-23 12:31:48,782 INFO L273 TraceCheckUtils]: 12: Hoare triple {9331#(<= main_~i~0 2)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9332#(<= main_~i~0 3)} is VALID [2018-11-23 12:31:48,782 INFO L273 TraceCheckUtils]: 13: Hoare triple {9332#(<= main_~i~0 3)} 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; {9332#(<= main_~i~0 3)} is VALID [2018-11-23 12:31:48,783 INFO L273 TraceCheckUtils]: 14: Hoare triple {9332#(<= main_~i~0 3)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9333#(<= main_~i~0 4)} is VALID [2018-11-23 12:31:48,784 INFO L273 TraceCheckUtils]: 15: Hoare triple {9333#(<= main_~i~0 4)} assume !(~i~0 < ~SIZE~0); {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:48,784 INFO L273 TraceCheckUtils]: 16: Hoare triple {9334#(<= ~SIZE~0 4)} ~i~0 := 0; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:48,785 INFO L273 TraceCheckUtils]: 17: Hoare triple {9334#(<= ~SIZE~0 4)} 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; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:48,785 INFO L273 TraceCheckUtils]: 18: Hoare triple {9334#(<= ~SIZE~0 4)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:48,785 INFO L273 TraceCheckUtils]: 19: Hoare triple {9334#(<= ~SIZE~0 4)} 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; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:48,786 INFO L273 TraceCheckUtils]: 20: Hoare triple {9334#(<= ~SIZE~0 4)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:48,786 INFO L273 TraceCheckUtils]: 21: Hoare triple {9334#(<= ~SIZE~0 4)} 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; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:48,787 INFO L273 TraceCheckUtils]: 22: Hoare triple {9334#(<= ~SIZE~0 4)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:48,787 INFO L273 TraceCheckUtils]: 23: Hoare triple {9334#(<= ~SIZE~0 4)} 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; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:48,788 INFO L273 TraceCheckUtils]: 24: Hoare triple {9334#(<= ~SIZE~0 4)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:48,788 INFO L273 TraceCheckUtils]: 25: Hoare triple {9334#(<= ~SIZE~0 4)} assume !(~i~0 < ~SIZE~0); {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:48,789 INFO L273 TraceCheckUtils]: 26: Hoare triple {9334#(<= ~SIZE~0 4)} ~i~0 := 0; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:48,789 INFO L273 TraceCheckUtils]: 27: Hoare triple {9334#(<= ~SIZE~0 4)} 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; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:48,790 INFO L273 TraceCheckUtils]: 28: Hoare triple {9334#(<= ~SIZE~0 4)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:48,790 INFO L273 TraceCheckUtils]: 29: Hoare triple {9334#(<= ~SIZE~0 4)} 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; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:48,791 INFO L273 TraceCheckUtils]: 30: Hoare triple {9334#(<= ~SIZE~0 4)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:48,791 INFO L273 TraceCheckUtils]: 31: Hoare triple {9334#(<= ~SIZE~0 4)} 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; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:48,792 INFO L273 TraceCheckUtils]: 32: Hoare triple {9334#(<= ~SIZE~0 4)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:48,792 INFO L273 TraceCheckUtils]: 33: Hoare triple {9334#(<= ~SIZE~0 4)} 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; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:48,793 INFO L273 TraceCheckUtils]: 34: Hoare triple {9334#(<= ~SIZE~0 4)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:48,793 INFO L273 TraceCheckUtils]: 35: Hoare triple {9334#(<= ~SIZE~0 4)} assume !(~i~0 < ~SIZE~0); {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:48,794 INFO L273 TraceCheckUtils]: 36: Hoare triple {9334#(<= ~SIZE~0 4)} ~i~0 := 0; {9335#(and (<= ~SIZE~0 4) (= main_~i~0 0))} is VALID [2018-11-23 12:31:48,795 INFO L273 TraceCheckUtils]: 37: Hoare triple {9335#(and (<= ~SIZE~0 4) (= main_~i~0 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; {9335#(and (<= ~SIZE~0 4) (= main_~i~0 0))} is VALID [2018-11-23 12:31:48,795 INFO L273 TraceCheckUtils]: 38: Hoare triple {9335#(and (<= ~SIZE~0 4) (= main_~i~0 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {9336#(<= ~SIZE~0 (+ main_~i~0 3))} is VALID [2018-11-23 12:31:48,796 INFO L273 TraceCheckUtils]: 39: Hoare triple {9336#(<= ~SIZE~0 (+ main_~i~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; {9336#(<= ~SIZE~0 (+ main_~i~0 3))} is VALID [2018-11-23 12:31:48,797 INFO L273 TraceCheckUtils]: 40: Hoare triple {9336#(<= ~SIZE~0 (+ main_~i~0 3))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {9337#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:31:48,797 INFO L273 TraceCheckUtils]: 41: Hoare triple {9337#(<= ~SIZE~0 (+ main_~i~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; {9337#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:31:48,798 INFO L273 TraceCheckUtils]: 42: Hoare triple {9337#(<= ~SIZE~0 (+ main_~i~0 2))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {9338#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:31:48,798 INFO L273 TraceCheckUtils]: 43: Hoare triple {9338#(<= ~SIZE~0 (+ main_~i~0 1))} 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; {9338#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:31:48,799 INFO L273 TraceCheckUtils]: 44: Hoare triple {9338#(<= ~SIZE~0 (+ main_~i~0 1))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {9339#(<= ~SIZE~0 main_~i~0)} is VALID [2018-11-23 12:31:48,800 INFO L273 TraceCheckUtils]: 45: Hoare triple {9339#(<= ~SIZE~0 main_~i~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; {9339#(<= ~SIZE~0 main_~i~0)} is VALID [2018-11-23 12:31:48,800 INFO L273 TraceCheckUtils]: 46: Hoare triple {9339#(<= ~SIZE~0 main_~i~0)} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {9340#(<= (+ ~SIZE~0 1) main_~i~0)} is VALID [2018-11-23 12:31:48,801 INFO L273 TraceCheckUtils]: 47: Hoare triple {9340#(<= (+ ~SIZE~0 1) main_~i~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; {9328#false} is VALID [2018-11-23 12:31:48,802 INFO L273 TraceCheckUtils]: 48: Hoare triple {9328#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {9328#false} is VALID [2018-11-23 12:31:48,802 INFO L273 TraceCheckUtils]: 49: Hoare triple {9328#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; {9328#false} is VALID [2018-11-23 12:31:48,802 INFO L273 TraceCheckUtils]: 50: Hoare triple {9328#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {9328#false} is VALID [2018-11-23 12:31:48,802 INFO L273 TraceCheckUtils]: 51: Hoare triple {9328#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; {9328#false} is VALID [2018-11-23 12:31:48,802 INFO L273 TraceCheckUtils]: 52: Hoare triple {9328#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {9328#false} is VALID [2018-11-23 12:31:48,802 INFO L273 TraceCheckUtils]: 53: Hoare triple {9328#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; {9328#false} is VALID [2018-11-23 12:31:48,803 INFO L273 TraceCheckUtils]: 54: Hoare triple {9328#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {9328#false} is VALID [2018-11-23 12:31:48,803 INFO L273 TraceCheckUtils]: 55: Hoare triple {9328#false} assume !(~i~0 < ~SIZE~0); {9328#false} is VALID [2018-11-23 12:31:48,803 INFO L256 TraceCheckUtils]: 56: Hoare triple {9328#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {9328#false} is VALID [2018-11-23 12:31:48,803 INFO L273 TraceCheckUtils]: 57: Hoare triple {9328#false} ~cond := #in~cond; {9328#false} is VALID [2018-11-23 12:31:48,803 INFO L273 TraceCheckUtils]: 58: Hoare triple {9328#false} assume 0 == ~cond; {9328#false} is VALID [2018-11-23 12:31:48,804 INFO L273 TraceCheckUtils]: 59: Hoare triple {9328#false} assume !false; {9328#false} is VALID [2018-11-23 12:31:48,806 INFO L134 CoverageAnalysis]: Checked inductivity of 129 backedges. 60 proven. 25 refuted. 0 times theorem prover too weak. 44 trivial. 0 not checked. [2018-11-23 12:31:48,806 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:31:48,807 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 15 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 15 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:31:48,815 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:31:48,842 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:31:48,868 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:31:48,870 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:31:49,276 INFO L256 TraceCheckUtils]: 0: Hoare triple {9327#true} call ULTIMATE.init(); {9327#true} is VALID [2018-11-23 12:31:49,276 INFO L273 TraceCheckUtils]: 1: Hoare triple {9327#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {9327#true} is VALID [2018-11-23 12:31:49,276 INFO L273 TraceCheckUtils]: 2: Hoare triple {9327#true} assume true; {9327#true} is VALID [2018-11-23 12:31:49,276 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {9327#true} {9327#true} #83#return; {9327#true} is VALID [2018-11-23 12:31:49,277 INFO L256 TraceCheckUtils]: 4: Hoare triple {9327#true} call #t~ret10 := main(); {9327#true} is VALID [2018-11-23 12:31:49,277 INFO L273 TraceCheckUtils]: 5: Hoare triple {9327#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {9327#true} is VALID [2018-11-23 12:31:49,278 INFO L273 TraceCheckUtils]: 6: Hoare triple {9327#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; {9362#(<= main_~i~0 0)} is VALID [2018-11-23 12:31:49,278 INFO L273 TraceCheckUtils]: 7: Hoare triple {9362#(<= 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; {9362#(<= main_~i~0 0)} is VALID [2018-11-23 12:31:49,279 INFO L273 TraceCheckUtils]: 8: Hoare triple {9362#(<= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9330#(<= main_~i~0 1)} is VALID [2018-11-23 12:31:49,279 INFO L273 TraceCheckUtils]: 9: Hoare triple {9330#(<= 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; {9330#(<= main_~i~0 1)} is VALID [2018-11-23 12:31:49,279 INFO L273 TraceCheckUtils]: 10: Hoare triple {9330#(<= main_~i~0 1)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9331#(<= main_~i~0 2)} is VALID [2018-11-23 12:31:49,280 INFO L273 TraceCheckUtils]: 11: Hoare triple {9331#(<= 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; {9331#(<= main_~i~0 2)} is VALID [2018-11-23 12:31:49,280 INFO L273 TraceCheckUtils]: 12: Hoare triple {9331#(<= main_~i~0 2)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9332#(<= main_~i~0 3)} is VALID [2018-11-23 12:31:49,281 INFO L273 TraceCheckUtils]: 13: Hoare triple {9332#(<= main_~i~0 3)} 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; {9332#(<= main_~i~0 3)} is VALID [2018-11-23 12:31:49,281 INFO L273 TraceCheckUtils]: 14: Hoare triple {9332#(<= main_~i~0 3)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9333#(<= main_~i~0 4)} is VALID [2018-11-23 12:31:49,282 INFO L273 TraceCheckUtils]: 15: Hoare triple {9333#(<= main_~i~0 4)} assume !(~i~0 < ~SIZE~0); {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:49,283 INFO L273 TraceCheckUtils]: 16: Hoare triple {9334#(<= ~SIZE~0 4)} ~i~0 := 0; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:49,283 INFO L273 TraceCheckUtils]: 17: Hoare triple {9334#(<= ~SIZE~0 4)} 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; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:49,284 INFO L273 TraceCheckUtils]: 18: Hoare triple {9334#(<= ~SIZE~0 4)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:49,284 INFO L273 TraceCheckUtils]: 19: Hoare triple {9334#(<= ~SIZE~0 4)} 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; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:49,285 INFO L273 TraceCheckUtils]: 20: Hoare triple {9334#(<= ~SIZE~0 4)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:49,285 INFO L273 TraceCheckUtils]: 21: Hoare triple {9334#(<= ~SIZE~0 4)} 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; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:49,286 INFO L273 TraceCheckUtils]: 22: Hoare triple {9334#(<= ~SIZE~0 4)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:49,286 INFO L273 TraceCheckUtils]: 23: Hoare triple {9334#(<= ~SIZE~0 4)} 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; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:49,286 INFO L273 TraceCheckUtils]: 24: Hoare triple {9334#(<= ~SIZE~0 4)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:49,287 INFO L273 TraceCheckUtils]: 25: Hoare triple {9334#(<= ~SIZE~0 4)} assume !(~i~0 < ~SIZE~0); {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:49,287 INFO L273 TraceCheckUtils]: 26: Hoare triple {9334#(<= ~SIZE~0 4)} ~i~0 := 0; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:49,288 INFO L273 TraceCheckUtils]: 27: Hoare triple {9334#(<= ~SIZE~0 4)} 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; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:49,288 INFO L273 TraceCheckUtils]: 28: Hoare triple {9334#(<= ~SIZE~0 4)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:49,289 INFO L273 TraceCheckUtils]: 29: Hoare triple {9334#(<= ~SIZE~0 4)} 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; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:49,289 INFO L273 TraceCheckUtils]: 30: Hoare triple {9334#(<= ~SIZE~0 4)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:49,290 INFO L273 TraceCheckUtils]: 31: Hoare triple {9334#(<= ~SIZE~0 4)} 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; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:49,290 INFO L273 TraceCheckUtils]: 32: Hoare triple {9334#(<= ~SIZE~0 4)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:49,291 INFO L273 TraceCheckUtils]: 33: Hoare triple {9334#(<= ~SIZE~0 4)} 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; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:49,291 INFO L273 TraceCheckUtils]: 34: Hoare triple {9334#(<= ~SIZE~0 4)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:49,292 INFO L273 TraceCheckUtils]: 35: Hoare triple {9334#(<= ~SIZE~0 4)} assume !(~i~0 < ~SIZE~0); {9334#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:31:49,292 INFO L273 TraceCheckUtils]: 36: Hoare triple {9334#(<= ~SIZE~0 4)} ~i~0 := 0; {9453#(and (<= 0 main_~i~0) (<= ~SIZE~0 4))} is VALID [2018-11-23 12:31:49,293 INFO L273 TraceCheckUtils]: 37: Hoare triple {9453#(and (<= 0 main_~i~0) (<= ~SIZE~0 4))} 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; {9453#(and (<= 0 main_~i~0) (<= ~SIZE~0 4))} is VALID [2018-11-23 12:31:49,294 INFO L273 TraceCheckUtils]: 38: Hoare triple {9453#(and (<= 0 main_~i~0) (<= ~SIZE~0 4))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {9460#(and (<= 1 main_~i~0) (<= ~SIZE~0 4))} is VALID [2018-11-23 12:31:49,295 INFO L273 TraceCheckUtils]: 39: Hoare triple {9460#(and (<= 1 main_~i~0) (<= ~SIZE~0 4))} 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; {9460#(and (<= 1 main_~i~0) (<= ~SIZE~0 4))} is VALID [2018-11-23 12:31:49,295 INFO L273 TraceCheckUtils]: 40: Hoare triple {9460#(and (<= 1 main_~i~0) (<= ~SIZE~0 4))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {9467#(and (<= 2 main_~i~0) (<= ~SIZE~0 4))} is VALID [2018-11-23 12:31:49,296 INFO L273 TraceCheckUtils]: 41: Hoare triple {9467#(and (<= 2 main_~i~0) (<= ~SIZE~0 4))} 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; {9467#(and (<= 2 main_~i~0) (<= ~SIZE~0 4))} is VALID [2018-11-23 12:31:49,297 INFO L273 TraceCheckUtils]: 42: Hoare triple {9467#(and (<= 2 main_~i~0) (<= ~SIZE~0 4))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {9474#(and (<= ~SIZE~0 4) (<= 3 main_~i~0))} is VALID [2018-11-23 12:31:49,298 INFO L273 TraceCheckUtils]: 43: Hoare triple {9474#(and (<= ~SIZE~0 4) (<= 3 main_~i~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; {9474#(and (<= ~SIZE~0 4) (<= 3 main_~i~0))} is VALID [2018-11-23 12:31:49,299 INFO L273 TraceCheckUtils]: 44: Hoare triple {9474#(and (<= ~SIZE~0 4) (<= 3 main_~i~0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {9481#(and (<= 4 main_~i~0) (<= ~SIZE~0 4))} is VALID [2018-11-23 12:31:49,319 INFO L273 TraceCheckUtils]: 45: Hoare triple {9481#(and (<= 4 main_~i~0) (<= ~SIZE~0 4))} 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; {9328#false} is VALID [2018-11-23 12:31:49,319 INFO L273 TraceCheckUtils]: 46: Hoare triple {9328#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {9328#false} is VALID [2018-11-23 12:31:49,319 INFO L273 TraceCheckUtils]: 47: Hoare triple {9328#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; {9328#false} is VALID [2018-11-23 12:31:49,319 INFO L273 TraceCheckUtils]: 48: Hoare triple {9328#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {9328#false} is VALID [2018-11-23 12:31:49,319 INFO L273 TraceCheckUtils]: 49: Hoare triple {9328#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; {9328#false} is VALID [2018-11-23 12:31:49,320 INFO L273 TraceCheckUtils]: 50: Hoare triple {9328#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {9328#false} is VALID [2018-11-23 12:31:49,320 INFO L273 TraceCheckUtils]: 51: Hoare triple {9328#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; {9328#false} is VALID [2018-11-23 12:31:49,320 INFO L273 TraceCheckUtils]: 52: Hoare triple {9328#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {9328#false} is VALID [2018-11-23 12:31:49,320 INFO L273 TraceCheckUtils]: 53: Hoare triple {9328#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; {9328#false} is VALID [2018-11-23 12:31:49,320 INFO L273 TraceCheckUtils]: 54: Hoare triple {9328#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {9328#false} is VALID [2018-11-23 12:31:49,321 INFO L273 TraceCheckUtils]: 55: Hoare triple {9328#false} assume !(~i~0 < ~SIZE~0); {9328#false} is VALID [2018-11-23 12:31:49,321 INFO L256 TraceCheckUtils]: 56: Hoare triple {9328#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {9328#false} is VALID [2018-11-23 12:31:49,321 INFO L273 TraceCheckUtils]: 57: Hoare triple {9328#false} ~cond := #in~cond; {9328#false} is VALID [2018-11-23 12:31:49,321 INFO L273 TraceCheckUtils]: 58: Hoare triple {9328#false} assume 0 == ~cond; {9328#false} is VALID [2018-11-23 12:31:49,321 INFO L273 TraceCheckUtils]: 59: Hoare triple {9328#false} assume !false; {9328#false} is VALID [2018-11-23 12:31:49,325 INFO L134 CoverageAnalysis]: Checked inductivity of 129 backedges. 61 proven. 16 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2018-11-23 12:31:49,352 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:31:49,353 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 13] total 20 [2018-11-23 12:31:49,353 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 60 [2018-11-23 12:31:49,353 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:31:49,354 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states. [2018-11-23 12:31:49,489 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:31:49,489 INFO L459 AbstractCegarLoop]: Interpolant automaton has 20 states [2018-11-23 12:31:49,490 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2018-11-23 12:31:49,490 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=95, Invalid=285, Unknown=0, NotChecked=0, Total=380 [2018-11-23 12:31:49,490 INFO L87 Difference]: Start difference. First operand 181 states and 203 transitions. Second operand 20 states. [2018-11-23 12:31:52,141 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:31:52,141 INFO L93 Difference]: Finished difference Result 242 states and 266 transitions. [2018-11-23 12:31:52,141 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2018-11-23 12:31:52,141 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 60 [2018-11-23 12:31:52,141 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:31:52,141 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2018-11-23 12:31:52,143 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 114 transitions. [2018-11-23 12:31:52,143 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2018-11-23 12:31:52,145 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 114 transitions. [2018-11-23 12:31:52,145 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 114 transitions. [2018-11-23 12:31:52,265 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 114 edges. 114 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:31:52,268 INFO L225 Difference]: With dead ends: 242 [2018-11-23 12:31:52,268 INFO L226 Difference]: Without dead ends: 134 [2018-11-23 12:31:52,269 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 78 GetRequests, 55 SyntacticMatches, 0 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 132 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=150, Invalid=450, Unknown=0, NotChecked=0, Total=600 [2018-11-23 12:31:52,269 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 134 states. [2018-11-23 12:31:54,322 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 134 to 124. [2018-11-23 12:31:54,322 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:31:54,322 INFO L82 GeneralOperation]: Start isEquivalent. First operand 134 states. Second operand 124 states. [2018-11-23 12:31:54,322 INFO L74 IsIncluded]: Start isIncluded. First operand 134 states. Second operand 124 states. [2018-11-23 12:31:54,322 INFO L87 Difference]: Start difference. First operand 134 states. Second operand 124 states. [2018-11-23 12:31:54,325 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:31:54,325 INFO L93 Difference]: Finished difference Result 134 states and 146 transitions. [2018-11-23 12:31:54,325 INFO L276 IsEmpty]: Start isEmpty. Operand 134 states and 146 transitions. [2018-11-23 12:31:54,325 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:31:54,326 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:31:54,326 INFO L74 IsIncluded]: Start isIncluded. First operand 124 states. Second operand 134 states. [2018-11-23 12:31:54,326 INFO L87 Difference]: Start difference. First operand 124 states. Second operand 134 states. [2018-11-23 12:31:54,328 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:31:54,328 INFO L93 Difference]: Finished difference Result 134 states and 146 transitions. [2018-11-23 12:31:54,329 INFO L276 IsEmpty]: Start isEmpty. Operand 134 states and 146 transitions. [2018-11-23 12:31:54,329 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:31:54,329 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:31:54,329 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:31:54,329 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:31:54,330 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 124 states. [2018-11-23 12:31:54,332 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 124 states to 124 states and 136 transitions. [2018-11-23 12:31:54,332 INFO L78 Accepts]: Start accepts. Automaton has 124 states and 136 transitions. Word has length 60 [2018-11-23 12:31:54,332 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:31:54,332 INFO L480 AbstractCegarLoop]: Abstraction has 124 states and 136 transitions. [2018-11-23 12:31:54,332 INFO L481 AbstractCegarLoop]: Interpolant automaton has 20 states. [2018-11-23 12:31:54,333 INFO L276 IsEmpty]: Start isEmpty. Operand 124 states and 136 transitions. [2018-11-23 12:31:54,333 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2018-11-23 12:31:54,333 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:31:54,333 INFO L402 BasicCegarLoop]: trace histogram [6, 6, 6, 6, 6, 6, 6, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:31:54,334 INFO L423 AbstractCegarLoop]: === Iteration 18 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:31:54,334 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:31:54,334 INFO L82 PathProgramCache]: Analyzing trace with hash -848038547, now seen corresponding path program 14 times [2018-11-23 12:31:54,334 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:31:54,334 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:31:54,335 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:31:54,335 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:31:54,335 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:31:54,397 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:31:56,204 WARN L180 SmtUtils]: Spent 110.00 ms on a formula simplification. DAG size of input: 64 DAG size of output: 57 [2018-11-23 12:31:56,391 WARN L180 SmtUtils]: Spent 108.00 ms on a formula simplification. DAG size of input: 62 DAG size of output: 55 [2018-11-23 12:32:03,008 INFO L256 TraceCheckUtils]: 0: Hoare triple {10352#true} call ULTIMATE.init(); {10352#true} is VALID [2018-11-23 12:32:03,009 INFO L273 TraceCheckUtils]: 1: Hoare triple {10352#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {10352#true} is VALID [2018-11-23 12:32:03,009 INFO L273 TraceCheckUtils]: 2: Hoare triple {10352#true} assume true; {10352#true} is VALID [2018-11-23 12:32:03,009 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {10352#true} {10352#true} #83#return; {10352#true} is VALID [2018-11-23 12:32:03,009 INFO L256 TraceCheckUtils]: 4: Hoare triple {10352#true} call #t~ret10 := main(); {10352#true} is VALID [2018-11-23 12:32:03,009 INFO L273 TraceCheckUtils]: 5: Hoare triple {10352#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {10352#true} is VALID [2018-11-23 12:32:03,010 INFO L273 TraceCheckUtils]: 6: Hoare triple {10352#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; {10354#(and (= main_~sum~0 0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,011 INFO L273 TraceCheckUtils]: 7: Hoare triple {10354#(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; {10355#(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:32:03,012 INFO L273 TraceCheckUtils]: 8: Hoare triple {10355#(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; {10356#(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) (<= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,013 INFO L273 TraceCheckUtils]: 9: Hoare triple {10356#(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) (<= main_~i~0 1) (= |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; {10357#(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_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,014 INFO L273 TraceCheckUtils]: 10: Hoare triple {10357#(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_~i~0 1) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {10358#(and (<= 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)) main_~sum~0) (<= main_~i~0 2) (<= 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))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,015 INFO L273 TraceCheckUtils]: 11: Hoare triple {10358#(and (<= 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)) main_~sum~0) (<= main_~i~0 2) (<= 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))) (= |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; {10359#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= 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) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,016 INFO L273 TraceCheckUtils]: 12: Hoare triple {10359#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= 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) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {10360#(and (<= main_~i~0 3) (<= (+ (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 (- 2)))))) main_~sum~0) (<= 3 main_~i~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) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,018 INFO L273 TraceCheckUtils]: 13: Hoare triple {10360#(and (<= main_~i~0 3) (<= (+ (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 (- 2)))))) main_~sum~0) (<= 3 main_~i~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) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2))))))) (= |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; {10361#(and (<= main_~i~0 3) (<= 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 (- 2))))))) (<= (+ (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 (- 2)))))) main_~sum~0) (<= 3 main_~i~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,019 INFO L273 TraceCheckUtils]: 14: Hoare triple {10361#(and (<= main_~i~0 3) (<= 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 (- 2))))))) (<= (+ (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 (- 2)))))) main_~sum~0) (<= 3 main_~i~0) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {10362#(and (<= 4 main_~i~0) (<= 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 (- 3))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2))))))) (<= main_~i~0 4) (<= (+ (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 (- 3))))) (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:32:03,021 INFO L273 TraceCheckUtils]: 15: Hoare triple {10362#(and (<= 4 main_~i~0) (<= 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 (- 3))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2))))))) (<= main_~i~0 4) (<= (+ (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 (- 3))))) (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; {10363#(and (<= 4 main_~i~0) (<= main_~i~0 4) (<= 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))) (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|) (+ |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))) (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|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2)))))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,023 INFO L273 TraceCheckUtils]: 16: Hoare triple {10363#(and (<= 4 main_~i~0) (<= main_~i~0 4) (<= 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))) (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|) (+ |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))) (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|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2)))))) main_~sum~0) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {10364#(and (or (and (<= 5 main_~i~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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ main_~i~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|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 4))))))) (<= main_~i~0 5) (<= (+ (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|) (+ (* 2 (+ main_~i~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|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 4)))))) main_~sum~0)) (< (+ main_~i~0 1) ~SIZE~0)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,025 INFO L273 TraceCheckUtils]: 17: Hoare triple {10364#(and (or (and (<= 5 main_~i~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) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ main_~i~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|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 4))))))) (<= main_~i~0 5) (<= (+ (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|) (+ (* 2 (+ main_~i~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|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 4)))))) main_~sum~0)) (< (+ main_~i~0 1) ~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; {10365#(and (or (< (+ 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (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 (- 3))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 4))))))) (<= 6 ~SIZE~0) (<= main_~i~0 5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (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 (- 3))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 4)))))) main_~sum~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,028 INFO L273 TraceCheckUtils]: 18: Hoare triple {10365#(and (or (< (+ 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (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 (- 3))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 4))))))) (<= 6 ~SIZE~0) (<= main_~i~0 5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (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 (- 3))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 4)))))) main_~sum~0))) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {10366#(and (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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0) (<= 6 ~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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= ~SIZE~0 6))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,029 INFO L273 TraceCheckUtils]: 19: Hoare triple {10366#(and (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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0) (<= 6 ~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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= ~SIZE~0 6))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {10367#(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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0) (<= 6 ~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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= ~SIZE~0 6) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,031 INFO L273 TraceCheckUtils]: 20: Hoare triple {10367#(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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0) (<= 6 ~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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= ~SIZE~0 6) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {10368#(and (or (<= ~SIZE~0 6) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0)) (or (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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |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|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |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|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= 6 ~SIZE~0) (<= ~SIZE~0 6))) (or (<= 6 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,033 INFO L273 TraceCheckUtils]: 21: Hoare triple {10368#(and (or (<= ~SIZE~0 6) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0)) (or (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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |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|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |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|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= 6 ~SIZE~0) (<= ~SIZE~0 6))) (or (<= 6 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 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; {10369#(and (or (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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0) (<= 6 ~SIZE~0) (<= ~SIZE~0 6) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))))) (or (<= ~SIZE~0 6) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0)) (or (<= 6 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,034 INFO L273 TraceCheckUtils]: 22: Hoare triple {10369#(and (or (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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0) (<= 6 ~SIZE~0) (<= ~SIZE~0 6) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))))) (or (<= ~SIZE~0 6) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0)) (or (<= 6 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {10370#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 11) (* 2 ~SIZE~0)) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 9)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0) (<= 6 ~SIZE~0) (<= ~SIZE~0 6) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,036 INFO L273 TraceCheckUtils]: 23: Hoare triple {10370#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 11) (* 2 ~SIZE~0)) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 9)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0) (<= 6 ~SIZE~0) (<= ~SIZE~0 6) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~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; {10371#(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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (<= 6 ~SIZE~0) (<= ~SIZE~0 6)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 11) (* 2 ~SIZE~0)) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 9))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,038 INFO L273 TraceCheckUtils]: 24: Hoare triple {10371#(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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (<= 6 ~SIZE~0) (<= ~SIZE~0 6)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 11) (* 2 ~SIZE~0)) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 9))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {10372#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 7)) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= 6 ~SIZE~0) (<= ~SIZE~0 6) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 9) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,040 INFO L273 TraceCheckUtils]: 25: Hoare triple {10372#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 7)) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= 6 ~SIZE~0) (<= ~SIZE~0 6) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 9) (* 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; {10373#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 7)) (and (<= 6 ~SIZE~0) (<= ~SIZE~0 6) (<= (+ (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 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) (+ (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| 9) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,042 INFO L273 TraceCheckUtils]: 26: Hoare triple {10373#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 7)) (and (<= 6 ~SIZE~0) (<= ~SIZE~0 6) (<= (+ (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 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) (+ (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| 9) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {10374#(and (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 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |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 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))) (<= 6 ~SIZE~0) (<= ~SIZE~0 6))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,044 INFO L273 TraceCheckUtils]: 27: Hoare triple {10374#(and (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 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |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 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))) (<= 6 ~SIZE~0) (<= ~SIZE~0 6))) (= |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; {10375#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (<= 6 ~SIZE~0) (<= ~SIZE~0 6) (<= (+ (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 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))))) (<= (+ main_~i~0 4) ~SIZE~0) (<= ~SIZE~0 (+ main_~i~0 2))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,045 INFO L273 TraceCheckUtils]: 28: Hoare triple {10375#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (<= 6 ~SIZE~0) (<= ~SIZE~0 6) (<= (+ (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 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))))) (<= (+ main_~i~0 4) ~SIZE~0) (<= ~SIZE~0 (+ main_~i~0 2))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {10376#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |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 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)))) (<= 6 ~SIZE~0) (<= ~SIZE~0 6)) (<= ~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:32:03,047 INFO L273 TraceCheckUtils]: 29: Hoare triple {10376#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |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 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)))) (<= 6 ~SIZE~0) (<= ~SIZE~0 6)) (<= ~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~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem5;havoc #t~mem5; {10377#(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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (<= 6 ~SIZE~0) (<= ~SIZE~0 6)) (<= ~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:32:03,049 INFO L273 TraceCheckUtils]: 30: Hoare triple {10377#(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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (<= 6 ~SIZE~0) (<= ~SIZE~0 6)) (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {10378#(and (or (<= ~SIZE~0 main_~i~0) (<= (+ main_~i~0 2) ~SIZE~0) (and (<= 6 ~SIZE~0) (<= ~SIZE~0 6) (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) main_~sum~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,050 INFO L273 TraceCheckUtils]: 31: Hoare triple {10378#(and (or (<= ~SIZE~0 main_~i~0) (<= (+ main_~i~0 2) ~SIZE~0) (and (<= 6 ~SIZE~0) (<= ~SIZE~0 6) (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) main_~sum~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; {10379#(and (or (<= (+ main_~i~0 2) ~SIZE~0) (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= 6 ~SIZE~0) (<= ~SIZE~0 6) (<= (+ (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|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,052 INFO L273 TraceCheckUtils]: 32: Hoare triple {10379#(and (or (<= (+ main_~i~0 2) ~SIZE~0) (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= 6 ~SIZE~0) (<= ~SIZE~0 6) (<= (+ (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|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {10380#(and (or (<= (+ main_~i~0 1) ~SIZE~0) (and (<= 0 main_~sum~0) (<= 6 ~SIZE~0) (<= ~SIZE~0 6) (<= main_~sum~0 0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,053 INFO L273 TraceCheckUtils]: 33: Hoare triple {10380#(and (or (<= (+ main_~i~0 1) ~SIZE~0) (and (<= 0 main_~sum~0) (<= 6 ~SIZE~0) (<= ~SIZE~0 6) (<= main_~sum~0 0))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {10381#(and (<= 0 main_~sum~0) (<= 6 ~SIZE~0) (<= ~SIZE~0 6) (= |main_~#a~0.offset| 0) (<= main_~sum~0 0))} is VALID [2018-11-23 12:32:03,054 INFO L273 TraceCheckUtils]: 34: Hoare triple {10381#(and (<= 0 main_~sum~0) (<= 6 ~SIZE~0) (<= ~SIZE~0 6) (= |main_~#a~0.offset| 0) (<= main_~sum~0 0))} ~i~0 := 0; {10382#(and (or (and (or (<= ~SIZE~0 6) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (or (<= 6 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)))) (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)) (<= 6 ~SIZE~0) (<= ~SIZE~0 6) (<= (+ (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)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,055 INFO L273 TraceCheckUtils]: 35: Hoare triple {10382#(and (or (and (or (<= ~SIZE~0 6) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (or (<= 6 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)))) (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)) (<= 6 ~SIZE~0) (<= ~SIZE~0 6) (<= (+ (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)))) (= |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; {10383#(and (or (and (or (<= ~SIZE~0 6) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (or (<= 6 ~SIZE~0) (< 0 (+ (* 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) (<= 6 ~SIZE~0) (<= ~SIZE~0 6))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,056 INFO L273 TraceCheckUtils]: 36: Hoare triple {10383#(and (or (and (or (<= ~SIZE~0 6) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (or (<= 6 ~SIZE~0) (< 0 (+ (* 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) (<= 6 ~SIZE~0) (<= ~SIZE~0 6))) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {10384#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 11) (* 2 ~SIZE~0)) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 9)) (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) (<= 6 ~SIZE~0) (<= ~SIZE~0 6))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,058 INFO L273 TraceCheckUtils]: 37: Hoare triple {10384#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 11) (* 2 ~SIZE~0)) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 9)) (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) (<= 6 ~SIZE~0) (<= ~SIZE~0 6))) (= |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; {10385#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 11) (* 2 ~SIZE~0)) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 9)) (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))))) (<= 6 ~SIZE~0) (<= ~SIZE~0 6))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,059 INFO L273 TraceCheckUtils]: 38: Hoare triple {10385#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 11) (* 2 ~SIZE~0)) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 9)) (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))))) (<= 6 ~SIZE~0) (<= ~SIZE~0 6))) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {10386#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 7)) (and (<= 6 ~SIZE~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 (- 5)))))) main_~sum~0) (<= ~SIZE~0 6) (<= 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 (- 5)))))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 9) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,061 INFO L273 TraceCheckUtils]: 39: Hoare triple {10386#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 7)) (and (<= 6 ~SIZE~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 (- 5)))))) main_~sum~0) (<= ~SIZE~0 6) (<= 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 (- 5)))))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 9) (* 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; {10387#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 7)) (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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= 6 ~SIZE~0) (<= ~SIZE~0 6) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 5))))) (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| 9) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,063 INFO L273 TraceCheckUtils]: 40: Hoare triple {10387#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 7)) (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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= 6 ~SIZE~0) (<= ~SIZE~0 6) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 5))))) (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| 9) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {10388#(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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) 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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= 6 ~SIZE~0) (<= ~SIZE~0 6)) (<= (+ main_~i~0 4) ~SIZE~0) (<= ~SIZE~0 (+ main_~i~0 2))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,064 INFO L273 TraceCheckUtils]: 41: Hoare triple {10388#(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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) 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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= 6 ~SIZE~0) (<= ~SIZE~0 6)) (<= (+ main_~i~0 4) ~SIZE~0) (<= ~SIZE~0 (+ main_~i~0 2))) (= |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; {10389#(and (or (and (<= 6 ~SIZE~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 (- 5))))) (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 (- 4)))))) main_~sum~0) (<= ~SIZE~0 6) (<= 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 (- 5))))) (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 (- 4)))))))) (<= (+ main_~i~0 4) ~SIZE~0) (<= ~SIZE~0 (+ main_~i~0 2))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,066 INFO L273 TraceCheckUtils]: 42: Hoare triple {10389#(and (or (and (<= 6 ~SIZE~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 (- 5))))) (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 (- 4)))))) main_~sum~0) (<= ~SIZE~0 6) (<= 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 (- 5))))) (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 (- 4)))))))) (<= (+ main_~i~0 4) ~SIZE~0) (<= ~SIZE~0 (+ main_~i~0 2))) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {10390#(and (or (<= ~SIZE~0 (+ main_~i~0 1)) (and (<= 6 ~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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= ~SIZE~0 6) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,067 INFO L273 TraceCheckUtils]: 43: Hoare triple {10390#(and (or (<= ~SIZE~0 (+ main_~i~0 1)) (and (<= 6 ~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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= ~SIZE~0 6) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0)) (<= (+ (* 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; {10391#(and (or (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0)) (and (<= 6 ~SIZE~0) (<= ~SIZE~0 6) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 5))))) (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 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) 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 (- 5))))) (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 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,069 INFO L273 TraceCheckUtils]: 44: Hoare triple {10391#(and (or (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0)) (and (<= 6 ~SIZE~0) (<= ~SIZE~0 6) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 5))))) (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 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) 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 (- 5))))) (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 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))))) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {10392#(and (or (<= ~SIZE~0 main_~i~0) (<= (+ main_~i~0 2) ~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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0) (<= 6 ~SIZE~0) (<= ~SIZE~0 6) (<= 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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,071 INFO L273 TraceCheckUtils]: 45: Hoare triple {10392#(and (or (<= ~SIZE~0 main_~i~0) (<= (+ main_~i~0 2) ~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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0) (<= 6 ~SIZE~0) (<= ~SIZE~0 6) (<= 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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))))) (= |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; {10365#(and (or (< (+ 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (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 (- 3))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 4))))))) (<= 6 ~SIZE~0) (<= main_~i~0 5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (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 (- 3))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 4)))))) main_~sum~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,074 INFO L273 TraceCheckUtils]: 46: Hoare triple {10365#(and (or (< (+ 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|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (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 (- 3))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 4))))))) (<= 6 ~SIZE~0) (<= main_~i~0 5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (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 (- 3))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 4)))))) main_~sum~0))) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {10366#(and (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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0) (<= 6 ~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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= ~SIZE~0 6))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,075 INFO L273 TraceCheckUtils]: 47: Hoare triple {10366#(and (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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0) (<= 6 ~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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= ~SIZE~0 6))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {10367#(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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0) (<= 6 ~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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= ~SIZE~0 6) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,077 INFO L273 TraceCheckUtils]: 48: Hoare triple {10367#(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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0) (<= 6 ~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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= ~SIZE~0 6) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {10393#(and (or (and (or (<= ~SIZE~0 6) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (or (<= 6 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)))) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))) (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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 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:32:03,078 INFO L273 TraceCheckUtils]: 49: Hoare triple {10393#(and (or (and (or (<= ~SIZE~0 6) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (or (<= 6 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)))) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))) (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 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 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))} 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; {10394#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))))) (and (or (<= ~SIZE~0 6) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (or (<= 6 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,080 INFO L273 TraceCheckUtils]: 50: Hoare triple {10394#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 5))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))))) (and (or (<= ~SIZE~0 6) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (or (<= 6 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1))))) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {10395#(and (or (<= (+ main_~i~0 6) ~SIZE~0) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 9)) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))) (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 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 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:32:03,082 INFO L273 TraceCheckUtils]: 51: Hoare triple {10395#(and (or (<= (+ main_~i~0 6) ~SIZE~0) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 9)) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))) (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 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 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))} 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; {10396#(and (or (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0)) (<= (+ main_~i~0 6) ~SIZE~0) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 9))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,084 INFO L273 TraceCheckUtils]: 52: Hoare triple {10396#(and (or (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))) main_~sum~0)) (<= (+ main_~i~0 6) ~SIZE~0) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 9))) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {10397#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |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|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))))) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 7)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 9) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,085 INFO L273 TraceCheckUtils]: 53: Hoare triple {10397#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |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|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))))) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 7)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 9) (* 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; {10398#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 7)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 9) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,087 INFO L273 TraceCheckUtils]: 54: Hoare triple {10398#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 7)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 9) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {10399#(and (or (<= (+ main_~i~0 4) ~SIZE~0) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |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|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))))) (<= ~SIZE~0 (+ main_~i~0 2))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,089 INFO L273 TraceCheckUtils]: 55: Hoare triple {10399#(and (or (<= (+ main_~i~0 4) ~SIZE~0) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |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|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))))) (<= ~SIZE~0 (+ main_~i~0 2))) (= |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; {10400#(and (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 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:03,090 INFO L273 TraceCheckUtils]: 56: Hoare triple {10400#(and (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 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))))))) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {10401#(and (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|) (+ (* 2 (+ ~SIZE~0 (- 1))) |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|) (+ (* 2 (+ ~SIZE~0 (- 1))) |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:32:03,091 INFO L273 TraceCheckUtils]: 57: Hoare triple {10401#(and (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|) (+ (* 2 (+ ~SIZE~0 (- 1))) |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|) (+ (* 2 (+ ~SIZE~0 (- 1))) |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~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem9;havoc #t~mem9; {10402#(and (or (and (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) main_~sum~0)) (<= ~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:32:03,093 INFO L273 TraceCheckUtils]: 58: Hoare triple {10402#(and (or (and (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 1))) |main_~#a~0.offset|)) main_~sum~0)) (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ (* 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; {10403#(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:32:03,094 INFO L273 TraceCheckUtils]: 59: Hoare triple {10403#(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~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem9;havoc #t~mem9; {10404#(or (<= (+ main_~i~0 2) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} is VALID [2018-11-23 12:32:03,095 INFO L273 TraceCheckUtils]: 60: Hoare triple {10404#(or (<= (+ main_~i~0 2) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {10405#(or (<= (+ main_~i~0 1) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} is VALID [2018-11-23 12:32:03,096 INFO L273 TraceCheckUtils]: 61: Hoare triple {10405#(or (<= (+ main_~i~0 1) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} assume !(~i~0 < ~SIZE~0); {10406#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:32:03,097 INFO L256 TraceCheckUtils]: 62: Hoare triple {10406#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {10407#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:32:03,097 INFO L273 TraceCheckUtils]: 63: Hoare triple {10407#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {10408#(= __VERIFIER_assert_~cond 1)} is VALID [2018-11-23 12:32:03,098 INFO L273 TraceCheckUtils]: 64: Hoare triple {10408#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {10353#false} is VALID [2018-11-23 12:32:03,098 INFO L273 TraceCheckUtils]: 65: Hoare triple {10353#false} assume !false; {10353#false} is VALID [2018-11-23 12:32:03,138 INFO L134 CoverageAnalysis]: Checked inductivity of 144 backedges. 0 proven. 144 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:32:03,138 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:32:03,138 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 16 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 16 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:32:03,147 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:32:03,179 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:32:03,179 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:32:03,198 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:03,199 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:32:06,826 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 145 treesize of output 105 [2018-11-23 12:32:06,854 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:32:06,855 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:32:06,857 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:32:06,861 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:32:06,863 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:32:06,865 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:32:06,869 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:32:06,871 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:32:06,873 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:32:06,875 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:32:06,877 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:32:06,877 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:32:06,883 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:32:06,885 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:32:06,886 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:32:06,887 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:32:06,887 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:32:06,889 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:32:06,890 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:32:06,891 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:32:06,953 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 10 select indices, 10 select index equivalence classes, 15 disjoint index pairs (out of 45 index pairs), introduced 5 new quantified variables, introduced 0 case distinctions, treesize of input 105 treesize of output 188 [2018-11-23 12:32:06,956 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:32:06,992 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:32:07,002 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:32:07,002 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 3 variables, input treesize:151, output treesize:7 [2018-11-23 12:32:07,139 INFO L256 TraceCheckUtils]: 0: Hoare triple {10352#true} call ULTIMATE.init(); {10352#true} is VALID [2018-11-23 12:32:07,139 INFO L273 TraceCheckUtils]: 1: Hoare triple {10352#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {10352#true} is VALID [2018-11-23 12:32:07,139 INFO L273 TraceCheckUtils]: 2: Hoare triple {10352#true} assume true; {10352#true} is VALID [2018-11-23 12:32:07,140 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {10352#true} {10352#true} #83#return; {10352#true} is VALID [2018-11-23 12:32:07,140 INFO L256 TraceCheckUtils]: 4: Hoare triple {10352#true} call #t~ret10 := main(); {10352#true} is VALID [2018-11-23 12:32:07,140 INFO L273 TraceCheckUtils]: 5: Hoare triple {10352#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {10352#true} is VALID [2018-11-23 12:32:07,158 INFO L273 TraceCheckUtils]: 6: Hoare triple {10352#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; {10354#(and (= main_~sum~0 0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,158 INFO L273 TraceCheckUtils]: 7: Hoare triple {10354#(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; {10355#(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:32:07,159 INFO L273 TraceCheckUtils]: 8: Hoare triple {10355#(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; {10356#(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) (<= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,160 INFO L273 TraceCheckUtils]: 9: Hoare triple {10356#(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) (<= main_~i~0 1) (= |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; {10357#(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_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,161 INFO L273 TraceCheckUtils]: 10: Hoare triple {10357#(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_~i~0 1) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {10358#(and (<= 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)) main_~sum~0) (<= main_~i~0 2) (<= 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))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,162 INFO L273 TraceCheckUtils]: 11: Hoare triple {10358#(and (<= 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)) main_~sum~0) (<= main_~i~0 2) (<= 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))) (= |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; {10359#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= 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) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,163 INFO L273 TraceCheckUtils]: 12: Hoare triple {10359#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= 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) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {10360#(and (<= main_~i~0 3) (<= (+ (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 (- 2)))))) main_~sum~0) (<= 3 main_~i~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) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,164 INFO L273 TraceCheckUtils]: 13: Hoare triple {10360#(and (<= main_~i~0 3) (<= (+ (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 (- 2)))))) main_~sum~0) (<= 3 main_~i~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) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2))))))) (= |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; {10361#(and (<= main_~i~0 3) (<= 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 (- 2))))))) (<= (+ (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 (- 2)))))) main_~sum~0) (<= 3 main_~i~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,165 INFO L273 TraceCheckUtils]: 14: Hoare triple {10361#(and (<= main_~i~0 3) (<= 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 (- 2))))))) (<= (+ (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 (- 2)))))) main_~sum~0) (<= 3 main_~i~0) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {10362#(and (<= 4 main_~i~0) (<= 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 (- 3))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2))))))) (<= main_~i~0 4) (<= (+ (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 (- 3))))) (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:32:07,166 INFO L273 TraceCheckUtils]: 15: Hoare triple {10362#(and (<= 4 main_~i~0) (<= 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 (- 3))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2))))))) (<= main_~i~0 4) (<= (+ (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 (- 3))))) (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; {10363#(and (<= 4 main_~i~0) (<= main_~i~0 4) (<= 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))) (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|) (+ |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))) (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|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2)))))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,168 INFO L273 TraceCheckUtils]: 16: Hoare triple {10363#(and (<= 4 main_~i~0) (<= main_~i~0 4) (<= 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))) (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|) (+ |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))) (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|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2)))))) main_~sum~0) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {10460#(and (<= 5 main_~i~0) (<= 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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8))))) (<= main_~i~0 5) (<= (+ (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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8)))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,170 INFO L273 TraceCheckUtils]: 17: Hoare triple {10460#(and (<= 5 main_~i~0) (<= 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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8))))) (<= main_~i~0 5) (<= (+ (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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8)))) 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; {10464#(and (exists ((main_~i~0 Int)) (and (<= (+ (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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8))) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 5 main_~i~0) (<= main_~i~0 5))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,172 INFO L273 TraceCheckUtils]: 18: Hoare triple {10464#(and (exists ((main_~i~0 Int)) (and (<= (+ (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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8))) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 5 main_~i~0) (<= main_~i~0 5))) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {10464#(and (exists ((main_~i~0 Int)) (and (<= (+ (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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8))) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 5 main_~i~0) (<= main_~i~0 5))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,173 INFO L273 TraceCheckUtils]: 19: Hoare triple {10464#(and (exists ((main_~i~0 Int)) (and (<= (+ (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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8))) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 5 main_~i~0) (<= main_~i~0 5))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {10464#(and (exists ((main_~i~0 Int)) (and (<= (+ (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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8))) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 5 main_~i~0) (<= main_~i~0 5))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,175 INFO L273 TraceCheckUtils]: 20: Hoare triple {10464#(and (exists ((main_~i~0 Int)) (and (<= (+ (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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8))) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 5 main_~i~0) (<= main_~i~0 5))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {10474#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= v_prenex_7 5) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) main_~sum~0))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,177 INFO L273 TraceCheckUtils]: 21: Hoare triple {10474#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= v_prenex_7 5) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) main_~sum~0))) (= 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; {10478#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= v_prenex_7 5) (<= (+ 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|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,179 INFO L273 TraceCheckUtils]: 22: Hoare triple {10478#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= v_prenex_7 5) (<= (+ 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|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |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; {10482#(and (exists ((v_prenex_7 Int)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0)) (<= 5 v_prenex_7) (<= v_prenex_7 5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,182 INFO L273 TraceCheckUtils]: 23: Hoare triple {10482#(and (exists ((v_prenex_7 Int)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0)) (<= 5 v_prenex_7) (<= v_prenex_7 5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |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; {10486#(and (= main_~i~0 1) (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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|)))) (<= v_prenex_7 5) (<= (+ (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|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,184 INFO L273 TraceCheckUtils]: 24: Hoare triple {10486#(and (= main_~i~0 1) (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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|)))) (<= v_prenex_7 5) (<= (+ (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|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {10490#(and (= main_~i~0 2) (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= v_prenex_7 5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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)) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,186 INFO L273 TraceCheckUtils]: 25: Hoare triple {10490#(and (= main_~i~0 2) (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= v_prenex_7 5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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)) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |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; {10494#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= (+ (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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))) (<= v_prenex_7 5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))))) (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,189 INFO L273 TraceCheckUtils]: 26: Hoare triple {10494#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= (+ (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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))) (<= v_prenex_7 5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))))) (= main_~i~0 2) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {10498#(and (= main_~i~0 3) (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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)) (<= v_prenex_7 5) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,191 INFO L273 TraceCheckUtils]: 27: Hoare triple {10498#(and (= main_~i~0 3) (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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)) (<= v_prenex_7 5) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |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; {10502#(and (= main_~i~0 3) (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= v_prenex_7 5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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 (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)) (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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,194 INFO L273 TraceCheckUtils]: 28: Hoare triple {10502#(and (= main_~i~0 3) (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= v_prenex_7 5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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 (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)) (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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {10506#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= v_prenex_7 5) (<= (+ (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|) (+ |main_~#a~0.offset| 6)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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|) (+ |main_~#a~0.offset| 6)) main_~sum~0)))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,197 INFO L273 TraceCheckUtils]: 29: Hoare triple {10506#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= v_prenex_7 5) (<= (+ (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|) (+ |main_~#a~0.offset| 6)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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|) (+ |main_~#a~0.offset| 6)) main_~sum~0)))) (= 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; {10510#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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|) (+ |main_~#a~0.offset| 6)) main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= v_prenex_7 5) (<= (+ (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|) (+ |main_~#a~0.offset| 6)) 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|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,199 INFO L273 TraceCheckUtils]: 30: Hoare triple {10510#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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|) (+ |main_~#a~0.offset| 6)) main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= v_prenex_7 5) (<= (+ (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|) (+ |main_~#a~0.offset| 6)) 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|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {10514#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= v_prenex_7 5) (<= (+ (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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) main_~sum~0)))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,202 INFO L273 TraceCheckUtils]: 31: Hoare triple {10514#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= v_prenex_7 5) (<= (+ (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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) main_~sum~0)))) (= main_~i~0 5) (= |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; {10518#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) 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| 10)))) (<= v_prenex_7 5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) 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| 10))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,203 INFO L273 TraceCheckUtils]: 32: Hoare triple {10518#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) 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| 10)))) (<= v_prenex_7 5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) 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| 10))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {10518#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) 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| 10)))) (<= v_prenex_7 5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) 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| 10))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,205 INFO L273 TraceCheckUtils]: 33: Hoare triple {10518#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) 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| 10)))) (<= v_prenex_7 5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) 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| 10))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {10518#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) 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| 10)))) (<= v_prenex_7 5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) 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| 10))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,206 INFO L273 TraceCheckUtils]: 34: Hoare triple {10518#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) 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| 10)))) (<= v_prenex_7 5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) 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| 10))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {10354#(and (= main_~sum~0 0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,207 INFO L273 TraceCheckUtils]: 35: Hoare triple {10354#(and (= main_~sum~0 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; {10355#(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:32:07,208 INFO L273 TraceCheckUtils]: 36: Hoare triple {10355#(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~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {10356#(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) (<= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,209 INFO L273 TraceCheckUtils]: 37: Hoare triple {10356#(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) (<= main_~i~0 1) (= |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; {10357#(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_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,211 INFO L273 TraceCheckUtils]: 38: Hoare triple {10357#(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_~i~0 1) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {10358#(and (<= 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)) main_~sum~0) (<= main_~i~0 2) (<= 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))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,212 INFO L273 TraceCheckUtils]: 39: Hoare triple {10358#(and (<= 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)) main_~sum~0) (<= main_~i~0 2) (<= 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))) (= |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; {10359#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= 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) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,214 INFO L273 TraceCheckUtils]: 40: Hoare triple {10359#(and (<= 2 main_~i~0) (<= main_~i~0 2) (<= 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) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {10360#(and (<= main_~i~0 3) (<= (+ (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 (- 2)))))) main_~sum~0) (<= 3 main_~i~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) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,215 INFO L273 TraceCheckUtils]: 41: Hoare triple {10360#(and (<= main_~i~0 3) (<= (+ (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 (- 2)))))) main_~sum~0) (<= 3 main_~i~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) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2))))))) (= |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; {10361#(and (<= main_~i~0 3) (<= 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 (- 2))))))) (<= (+ (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 (- 2)))))) main_~sum~0) (<= 3 main_~i~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,217 INFO L273 TraceCheckUtils]: 42: Hoare triple {10361#(and (<= main_~i~0 3) (<= 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 (- 2))))))) (<= (+ (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 (- 2)))))) main_~sum~0) (<= 3 main_~i~0) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {10362#(and (<= 4 main_~i~0) (<= 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 (- 3))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2))))))) (<= main_~i~0 4) (<= (+ (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 (- 3))))) (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:32:07,218 INFO L273 TraceCheckUtils]: 43: Hoare triple {10362#(and (<= 4 main_~i~0) (<= 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 (- 3))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2))))))) (<= main_~i~0 4) (<= (+ (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 (- 3))))) (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~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem7;havoc #t~mem7; {10363#(and (<= 4 main_~i~0) (<= main_~i~0 4) (<= 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))) (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|) (+ |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))) (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|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2)))))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,220 INFO L273 TraceCheckUtils]: 44: Hoare triple {10363#(and (<= 4 main_~i~0) (<= main_~i~0 4) (<= 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))) (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|) (+ |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))) (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|) (+ |main_~#a~0.offset| (* 2 (+ main_~i~0 (- 2)))))) main_~sum~0) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {10460#(and (<= 5 main_~i~0) (<= 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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8))))) (<= main_~i~0 5) (<= (+ (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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8)))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,222 INFO L273 TraceCheckUtils]: 45: Hoare triple {10460#(and (<= 5 main_~i~0) (<= 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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8))))) (<= main_~i~0 5) (<= (+ (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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8)))) 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; {10464#(and (exists ((main_~i~0 Int)) (and (<= (+ (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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8))) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 5 main_~i~0) (<= main_~i~0 5))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,223 INFO L273 TraceCheckUtils]: 46: Hoare triple {10464#(and (exists ((main_~i~0 Int)) (and (<= (+ (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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8))) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 5 main_~i~0) (<= main_~i~0 5))) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {10464#(and (exists ((main_~i~0 Int)) (and (<= (+ (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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8))) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 5 main_~i~0) (<= main_~i~0 5))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,224 INFO L273 TraceCheckUtils]: 47: Hoare triple {10464#(and (exists ((main_~i~0 Int)) (and (<= (+ (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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8))) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 5 main_~i~0) (<= main_~i~0 5))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {10464#(and (exists ((main_~i~0 Int)) (and (<= (+ (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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8))) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 5 main_~i~0) (<= main_~i~0 5))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,226 INFO L273 TraceCheckUtils]: 48: Hoare triple {10464#(and (exists ((main_~i~0 Int)) (and (<= (+ (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) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8))) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 5 main_~i~0) (<= main_~i~0 5))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {10474#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= v_prenex_7 5) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) main_~sum~0))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,229 INFO L273 TraceCheckUtils]: 49: Hoare triple {10474#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= v_prenex_7 5) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) main_~sum~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; {10478#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= v_prenex_7 5) (<= (+ 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|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,231 INFO L273 TraceCheckUtils]: 50: Hoare triple {10478#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= v_prenex_7 5) (<= (+ 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|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |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; {10482#(and (exists ((v_prenex_7 Int)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0)) (<= 5 v_prenex_7) (<= v_prenex_7 5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,233 INFO L273 TraceCheckUtils]: 51: Hoare triple {10482#(and (exists ((v_prenex_7 Int)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0)) (<= 5 v_prenex_7) (<= v_prenex_7 5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |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; {10486#(and (= main_~i~0 1) (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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|)))) (<= v_prenex_7 5) (<= (+ (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|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,236 INFO L273 TraceCheckUtils]: 52: Hoare triple {10486#(and (= main_~i~0 1) (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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|)))) (<= v_prenex_7 5) (<= (+ (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|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {10490#(and (= main_~i~0 2) (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= v_prenex_7 5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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)) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,238 INFO L273 TraceCheckUtils]: 53: Hoare triple {10490#(and (= main_~i~0 2) (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= v_prenex_7 5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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)) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |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; {10494#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= (+ (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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))) (<= v_prenex_7 5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))))) (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,241 INFO L273 TraceCheckUtils]: 54: Hoare triple {10494#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= (+ (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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))) (<= v_prenex_7 5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))))) (= main_~i~0 2) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {10498#(and (= main_~i~0 3) (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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)) (<= v_prenex_7 5) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,244 INFO L273 TraceCheckUtils]: 55: Hoare triple {10498#(and (= main_~i~0 3) (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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)) (<= v_prenex_7 5) (<= (+ (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) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |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; {10502#(and (= main_~i~0 3) (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= v_prenex_7 5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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 (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)) (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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,246 INFO L273 TraceCheckUtils]: 56: Hoare triple {10502#(and (= main_~i~0 3) (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= v_prenex_7 5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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 (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)) (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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))))) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {10506#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= v_prenex_7 5) (<= (+ (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|) (+ |main_~#a~0.offset| 6)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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|) (+ |main_~#a~0.offset| 6)) main_~sum~0)))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,249 INFO L273 TraceCheckUtils]: 57: Hoare triple {10506#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= v_prenex_7 5) (<= (+ (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|) (+ |main_~#a~0.offset| 6)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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|) (+ |main_~#a~0.offset| 6)) main_~sum~0)))) (= main_~i~0 4) (= |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; {10510#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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|) (+ |main_~#a~0.offset| 6)) main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= v_prenex_7 5) (<= (+ (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|) (+ |main_~#a~0.offset| 6)) 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|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,251 INFO L273 TraceCheckUtils]: 58: Hoare triple {10510#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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|) (+ |main_~#a~0.offset| 6)) main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= v_prenex_7 5) (<= (+ (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|) (+ |main_~#a~0.offset| 6)) 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|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {10514#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= v_prenex_7 5) (<= (+ (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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) main_~sum~0)))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:07,253 INFO L273 TraceCheckUtils]: 59: Hoare triple {10514#(and (exists ((v_prenex_7 Int)) (and (<= 5 v_prenex_7) (<= v_prenex_7 5) (<= (+ (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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 6))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 8))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset| (- 4))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_7) |main_~#a~0.offset|))) (+ (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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) main_~sum~0)))) (= main_~i~0 5) (= |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; {10406#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:32:07,254 INFO L273 TraceCheckUtils]: 60: Hoare triple {10406#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {10406#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:32:07,255 INFO L273 TraceCheckUtils]: 61: Hoare triple {10406#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} assume !(~i~0 < ~SIZE~0); {10406#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:32:07,256 INFO L256 TraceCheckUtils]: 62: Hoare triple {10406#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {10407#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:32:07,256 INFO L273 TraceCheckUtils]: 63: Hoare triple {10407#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {10408#(= __VERIFIER_assert_~cond 1)} is VALID [2018-11-23 12:32:07,257 INFO L273 TraceCheckUtils]: 64: Hoare triple {10408#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {10353#false} is VALID [2018-11-23 12:32:07,257 INFO L273 TraceCheckUtils]: 65: Hoare triple {10353#false} assume !false; {10353#false} is VALID [2018-11-23 12:32:07,296 INFO L134 CoverageAnalysis]: Checked inductivity of 144 backedges. 0 proven. 144 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:32:07,315 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:32:07,315 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [57, 29] total 71 [2018-11-23 12:32:07,315 INFO L78 Accepts]: Start accepts. Automaton has 71 states. Word has length 66 [2018-11-23 12:32:07,316 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:32:07,316 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 71 states. [2018-11-23 12:32:07,548 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 112 edges. 112 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:32:07,548 INFO L459 AbstractCegarLoop]: Interpolant automaton has 71 states [2018-11-23 12:32:07,549 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 71 interpolants. [2018-11-23 12:32:07,550 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=209, Invalid=4761, Unknown=0, NotChecked=0, Total=4970 [2018-11-23 12:32:07,550 INFO L87 Difference]: Start difference. First operand 124 states and 136 transitions. Second operand 71 states. [2018-11-23 12:32:12,078 WARN L180 SmtUtils]: Spent 239.00 ms on a formula simplification. DAG size of input: 182 DAG size of output: 43 [2018-11-23 12:32:14,603 WARN L180 SmtUtils]: Spent 1.18 s on a formula simplification. DAG size of input: 170 DAG size of output: 148 [2018-11-23 12:32:15,109 WARN L180 SmtUtils]: Spent 108.00 ms on a formula simplification. DAG size of input: 65 DAG size of output: 65 [2018-11-23 12:32:15,887 WARN L180 SmtUtils]: Spent 166.00 ms on a formula simplification. DAG size of input: 207 DAG size of output: 48 [2018-11-23 12:32:16,804 WARN L180 SmtUtils]: Spent 169.00 ms on a formula simplification. DAG size of input: 215 DAG size of output: 47 [2018-11-23 12:32:17,777 WARN L180 SmtUtils]: Spent 171.00 ms on a formula simplification. DAG size of input: 211 DAG size of output: 47 [2018-11-23 12:32:18,618 WARN L180 SmtUtils]: Spent 172.00 ms on a formula simplification. DAG size of input: 212 DAG size of output: 49 [2018-11-23 12:32:19,599 WARN L180 SmtUtils]: Spent 228.00 ms on a formula simplification. DAG size of input: 205 DAG size of output: 46 [2018-11-23 12:32:20,465 WARN L180 SmtUtils]: Spent 221.00 ms on a formula simplification. DAG size of input: 206 DAG size of output: 47 [2018-11-23 12:32:21,423 WARN L180 SmtUtils]: Spent 205.00 ms on a formula simplification. DAG size of input: 209 DAG size of output: 51 [2018-11-23 12:32:22,196 WARN L180 SmtUtils]: Spent 201.00 ms on a formula simplification. DAG size of input: 210 DAG size of output: 53 [2018-11-23 12:32:23,050 WARN L180 SmtUtils]: Spent 204.00 ms on a formula simplification. DAG size of input: 210 DAG size of output: 51 [2018-11-23 12:32:23,793 WARN L180 SmtUtils]: Spent 207.00 ms on a formula simplification. DAG size of input: 211 DAG size of output: 54 [2018-11-23 12:32:24,646 WARN L180 SmtUtils]: Spent 207.00 ms on a formula simplification. DAG size of input: 204 DAG size of output: 54 [2018-11-23 12:32:26,623 WARN L180 SmtUtils]: Spent 1.31 s on a formula simplification. DAG size of input: 166 DAG size of output: 141 [2018-11-23 12:32:27,743 WARN L180 SmtUtils]: Spent 411.00 ms on a formula simplification. DAG size of input: 115 DAG size of output: 115 [2018-11-23 12:32:29,601 WARN L180 SmtUtils]: Spent 1.12 s on a formula simplification. DAG size of input: 170 DAG size of output: 148 [2018-11-23 12:32:30,477 WARN L180 SmtUtils]: Spent 302.00 ms on a formula simplification. DAG size of input: 127 DAG size of output: 119 [2018-11-23 12:32:31,227 WARN L180 SmtUtils]: Spent 132.00 ms on a formula simplification. DAG size of input: 186 DAG size of output: 17 [2018-11-23 12:32:31,661 WARN L180 SmtUtils]: Spent 207.00 ms on a formula simplification. DAG size of input: 90 DAG size of output: 90 [2018-11-23 12:32:32,226 WARN L180 SmtUtils]: Spent 127.00 ms on a formula simplification. DAG size of input: 195 DAG size of output: 18 [2018-11-23 12:32:33,474 WARN L180 SmtUtils]: Spent 764.00 ms on a formula simplification. DAG size of input: 168 DAG size of output: 123 [2018-11-23 12:32:34,298 WARN L180 SmtUtils]: Spent 168.00 ms on a formula simplification. DAG size of input: 189 DAG size of output: 23 [2018-11-23 12:32:34,917 WARN L180 SmtUtils]: Spent 194.00 ms on a formula simplification. DAG size of input: 210 DAG size of output: 49 [2018-11-23 12:32:35,809 WARN L180 SmtUtils]: Spent 170.00 ms on a formula simplification. DAG size of input: 192 DAG size of output: 26 [2018-11-23 12:32:36,795 WARN L180 SmtUtils]: Spent 216.00 ms on a formula simplification. DAG size of input: 184 DAG size of output: 26 [2018-11-23 12:32:37,594 WARN L180 SmtUtils]: Spent 213.00 ms on a formula simplification. DAG size of input: 184 DAG size of output: 29 [2018-11-23 12:32:38,441 WARN L180 SmtUtils]: Spent 207.00 ms on a formula simplification. DAG size of input: 187 DAG size of output: 34 [2018-11-23 12:32:39,247 WARN L180 SmtUtils]: Spent 213.00 ms on a formula simplification. DAG size of input: 187 DAG size of output: 36 [2018-11-23 12:32:40,040 WARN L180 SmtUtils]: Spent 209.00 ms on a formula simplification. DAG size of input: 189 DAG size of output: 37 [2018-11-23 12:32:41,048 WARN L180 SmtUtils]: Spent 240.00 ms on a formula simplification. DAG size of input: 189 DAG size of output: 40 [2018-11-23 12:32:41,851 WARN L180 SmtUtils]: Spent 213.00 ms on a formula simplification. DAG size of input: 186 DAG size of output: 35 [2018-11-23 12:32:43,736 WARN L180 SmtUtils]: Spent 1.32 s on a formula simplification. DAG size of input: 174 DAG size of output: 139 [2018-11-23 12:32:44,713 WARN L180 SmtUtils]: Spent 417.00 ms on a formula simplification. DAG size of input: 116 DAG size of output: 116 [2018-11-23 12:32:45,806 WARN L180 SmtUtils]: Spent 272.00 ms on a formula simplification. DAG size of input: 127 DAG size of output: 119 [2018-11-23 12:32:46,737 WARN L180 SmtUtils]: Spent 210.00 ms on a formula simplification. DAG size of input: 91 DAG size of output: 91