java -ea -Xmx8000000000 -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc ../../../trunk/examples/toolchains/AutomizerCInline_WitnessPrinter.xml -s ../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf -i ../../../trunk/examples/svcomp/array-crafted/zero_sum_m2_true-unreach-call.c -------------------------------------------------------------------------------- This is Ultimate 0.1.23-61f4311 [2018-11-23 12:32:20,924 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 12:32:20,926 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 12:32:20,939 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 12:32:20,939 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 12:32:20,940 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 12:32:20,942 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 12:32:20,944 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 12:32:20,946 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 12:32:20,947 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 12:32:20,948 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 12:32:20,948 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 12:32:20,949 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 12:32:20,950 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 12:32:20,951 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 12:32:20,952 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 12:32:20,953 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 12:32:20,955 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 12:32:20,957 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 12:32:20,959 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 12:32:20,960 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 12:32:20,961 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 12:32:20,964 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 12:32:20,964 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 12:32:20,965 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 12:32:20,966 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 12:32:20,967 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 12:32:20,967 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 12:32:20,968 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 12:32:20,970 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 12:32:20,970 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 12:32:20,971 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 12:32:20,971 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 12:32:20,971 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 12:32:20,972 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 12:32:20,973 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 12:32:20,973 INFO L98 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf [2018-11-23 12:32:21,000 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 12:32:21,001 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 12:32:21,002 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 12:32:21,002 INFO L133 SettingsManager]: * ... calls to implemented procedures=ONLY_FOR_CONCURRENT_PROGRAMS [2018-11-23 12:32:21,002 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 12:32:21,003 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 12:32:21,004 INFO L133 SettingsManager]: * Use SBE=true [2018-11-23 12:32:21,004 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 12:32:21,004 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 12:32:21,004 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-23 12:32:21,004 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 12:32:21,005 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 12:32:21,005 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 12:32:21,005 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 12:32:21,005 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 12:32:21,005 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 12:32:21,006 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 12:32:21,006 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 12:32:21,007 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 12:32:21,007 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 12:32:21,007 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-23 12:32:21,007 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 12:32:21,007 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-23 12:32:21,007 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 12:32:21,008 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 12:32:21,008 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 12:32:21,008 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 12:32:21,009 INFO L133 SettingsManager]: * Trace refinement strategy=CAMEL [2018-11-23 12:32:21,009 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 12:32:21,009 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-11-23 12:32:21,009 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2018-11-23 12:32:21,066 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 12:32:21,080 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 12:32:21,084 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 12:32:21,086 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 12:32:21,086 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 12:32:21,087 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/array-crafted/zero_sum_m2_true-unreach-call.c [2018-11-23 12:32:21,159 INFO L221 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9d0da850d/7af0b2c534cc4573be932b00facfdbb4/FLAG2aa1ee86e [2018-11-23 12:32:21,659 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 12:32:21,660 INFO L161 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/array-crafted/zero_sum_m2_true-unreach-call.c [2018-11-23 12:32:21,666 INFO L355 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9d0da850d/7af0b2c534cc4573be932b00facfdbb4/FLAG2aa1ee86e [2018-11-23 12:32:22,019 INFO L363 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9d0da850d/7af0b2c534cc4573be932b00facfdbb4 [2018-11-23 12:32:22,028 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 12:32:22,029 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 12:32:22,030 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 12:32:22,031 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 12:32:22,034 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 12:32:22,036 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 12:32:22" (1/1) ... [2018-11-23 12:32:22,039 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7b1a504e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:32:22, skipping insertion in model container [2018-11-23 12:32:22,039 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 12:32:22" (1/1) ... [2018-11-23 12:32:22,050 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 12:32:22,075 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 12:32:22,298 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 12:32:22,302 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 12:32:22,335 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 12:32:22,366 INFO L195 MainTranslator]: Completed translation [2018-11-23 12:32:22,366 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:32:22 WrapperNode [2018-11-23 12:32:22,367 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 12:32:22,370 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 12:32:22,370 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 12:32:22,371 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 12:32:22,380 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:32:22" (1/1) ... [2018-11-23 12:32:22,389 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:32:22" (1/1) ... [2018-11-23 12:32:22,396 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 12:32:22,396 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 12:32:22,396 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 12:32:22,396 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 12:32:22,405 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:32:22" (1/1) ... [2018-11-23 12:32:22,405 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:32:22" (1/1) ... [2018-11-23 12:32:22,407 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:32:22" (1/1) ... [2018-11-23 12:32:22,407 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:32:22" (1/1) ... [2018-11-23 12:32:22,416 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:32:22" (1/1) ... [2018-11-23 12:32:22,423 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:32:22" (1/1) ... [2018-11-23 12:32:22,425 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:32:22" (1/1) ... [2018-11-23 12:32:22,427 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 12:32:22,427 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 12:32:22,428 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 12:32:22,428 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 12:32:22,429 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:32:22" (1/1) ... No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 12:32:22,555 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-23 12:32:22,555 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-23 12:32:22,555 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 12:32:22,555 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 12:32:22,556 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 12:32:22,556 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-23 12:32:22,556 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-23 12:32:22,556 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-23 12:32:22,556 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2018-11-23 12:32:22,556 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2018-11-23 12:32:22,557 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 12:32:23,218 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 12:32:23,219 INFO L280 CfgBuilder]: Removed 4 assue(true) statements. [2018-11-23 12:32:23,219 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 12:32:23 BoogieIcfgContainer [2018-11-23 12:32:23,219 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 12:32:23,220 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-23 12:32:23,221 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-23 12:32:23,224 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-23 12:32:23,224 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 12:32:22" (1/3) ... [2018-11-23 12:32:23,225 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@70f2eabd and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 12:32:23, skipping insertion in model container [2018-11-23 12:32:23,225 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:32:22" (2/3) ... [2018-11-23 12:32:23,226 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@70f2eabd and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 12:32:23, skipping insertion in model container [2018-11-23 12:32:23,226 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 12:32:23" (3/3) ... [2018-11-23 12:32:23,228 INFO L112 eAbstractionObserver]: Analyzing ICFG zero_sum_m2_true-unreach-call.c [2018-11-23 12:32:23,238 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-23 12:32:23,247 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-23 12:32:23,265 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-23 12:32:23,299 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-23 12:32:23,300 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-23 12:32:23,300 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-23 12:32:23,300 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-23 12:32:23,302 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-23 12:32:23,302 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-23 12:32:23,302 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-23 12:32:23,302 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-23 12:32:23,303 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-23 12:32:23,320 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states. [2018-11-23 12:32:23,327 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2018-11-23 12:32:23,327 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:32:23,328 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:32:23,331 INFO L423 AbstractCegarLoop]: === Iteration 1 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:32:23,337 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:32:23,338 INFO L82 PathProgramCache]: Analyzing trace with hash -73003857, now seen corresponding path program 1 times [2018-11-23 12:32:23,340 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:32:23,340 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:32:23,388 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:23,388 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:32:23,388 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:23,435 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:23,488 INFO L256 TraceCheckUtils]: 0: Hoare triple {34#true} call ULTIMATE.init(); {34#true} is VALID [2018-11-23 12:32:23,492 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:32:23,493 INFO L273 TraceCheckUtils]: 2: Hoare triple {34#true} assume true; {34#true} is VALID [2018-11-23 12:32:23,493 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {34#true} {34#true} #83#return; {34#true} is VALID [2018-11-23 12:32:23,493 INFO L256 TraceCheckUtils]: 4: Hoare triple {34#true} call #t~ret10 := main(); {34#true} is VALID [2018-11-23 12:32:23,494 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:32:23,494 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:32:23,496 INFO L273 TraceCheckUtils]: 7: Hoare triple {34#true} assume !true; {35#false} is VALID [2018-11-23 12:32:23,496 INFO L273 TraceCheckUtils]: 8: Hoare triple {35#false} ~i~0 := 0; {35#false} is VALID [2018-11-23 12:32:23,497 INFO L273 TraceCheckUtils]: 9: Hoare triple {35#false} assume !true; {35#false} is VALID [2018-11-23 12:32:23,497 INFO L273 TraceCheckUtils]: 10: Hoare triple {35#false} ~i~0 := 0; {35#false} is VALID [2018-11-23 12:32:23,497 INFO L273 TraceCheckUtils]: 11: Hoare triple {35#false} assume !true; {35#false} is VALID [2018-11-23 12:32:23,498 INFO L273 TraceCheckUtils]: 12: Hoare triple {35#false} ~i~0 := 0; {35#false} is VALID [2018-11-23 12:32:23,498 INFO L273 TraceCheckUtils]: 13: Hoare triple {35#false} assume !(~i~0 < ~SIZE~0); {35#false} is VALID [2018-11-23 12:32:23,499 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:32:23,499 INFO L273 TraceCheckUtils]: 15: Hoare triple {35#false} ~cond := #in~cond; {35#false} is VALID [2018-11-23 12:32:23,499 INFO L273 TraceCheckUtils]: 16: Hoare triple {35#false} assume 0 == ~cond; {35#false} is VALID [2018-11-23 12:32:23,500 INFO L273 TraceCheckUtils]: 17: Hoare triple {35#false} assume !false; {35#false} is VALID [2018-11-23 12:32:23,503 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:32:23,506 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 12:32:23,506 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-23 12:32:23,510 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 18 [2018-11-23 12:32:23,513 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:32:23,516 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states. [2018-11-23 12:32:23,734 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:32:23,734 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-23 12:32:23,745 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-23 12:32:23,746 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 12:32:23,750 INFO L87 Difference]: Start difference. First operand 31 states. Second operand 2 states. [2018-11-23 12:32:24,052 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:24,052 INFO L93 Difference]: Finished difference Result 53 states and 69 transitions. [2018-11-23 12:32:24,052 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-23 12:32:24,052 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 18 [2018-11-23 12:32:24,052 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:32:24,055 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-23 12:32:24,066 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 69 transitions. [2018-11-23 12:32:24,066 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-23 12:32:24,072 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 69 transitions. [2018-11-23 12:32:24,072 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 69 transitions. [2018-11-23 12:32:24,319 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:32:24,329 INFO L225 Difference]: With dead ends: 53 [2018-11-23 12:32:24,329 INFO L226 Difference]: Without dead ends: 23 [2018-11-23 12:32:24,332 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 12:32:24,347 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 23 states. [2018-11-23 12:32:24,373 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 23 to 23. [2018-11-23 12:32:24,373 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:32:24,374 INFO L82 GeneralOperation]: Start isEquivalent. First operand 23 states. Second operand 23 states. [2018-11-23 12:32:24,374 INFO L74 IsIncluded]: Start isIncluded. First operand 23 states. Second operand 23 states. [2018-11-23 12:32:24,374 INFO L87 Difference]: Start difference. First operand 23 states. Second operand 23 states. [2018-11-23 12:32:24,379 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:24,379 INFO L93 Difference]: Finished difference Result 23 states and 26 transitions. [2018-11-23 12:32:24,380 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 26 transitions. [2018-11-23 12:32:24,380 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:32:24,380 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:32:24,381 INFO L74 IsIncluded]: Start isIncluded. First operand 23 states. Second operand 23 states. [2018-11-23 12:32:24,381 INFO L87 Difference]: Start difference. First operand 23 states. Second operand 23 states. [2018-11-23 12:32:24,385 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:24,385 INFO L93 Difference]: Finished difference Result 23 states and 26 transitions. [2018-11-23 12:32:24,385 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 26 transitions. [2018-11-23 12:32:24,386 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:32:24,386 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:32:24,386 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:32:24,386 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:32:24,386 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 23 states. [2018-11-23 12:32:24,389 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 26 transitions. [2018-11-23 12:32:24,391 INFO L78 Accepts]: Start accepts. Automaton has 23 states and 26 transitions. Word has length 18 [2018-11-23 12:32:24,391 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:32:24,392 INFO L480 AbstractCegarLoop]: Abstraction has 23 states and 26 transitions. [2018-11-23 12:32:24,392 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-23 12:32:24,392 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 26 transitions. [2018-11-23 12:32:24,393 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2018-11-23 12:32:24,393 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:32:24,393 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:32:24,393 INFO L423 AbstractCegarLoop]: === Iteration 2 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:32:24,394 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:32:24,394 INFO L82 PathProgramCache]: Analyzing trace with hash -951460195, now seen corresponding path program 1 times [2018-11-23 12:32:24,394 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:32:24,394 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:32:24,395 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:24,395 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:32:24,396 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:24,417 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:24,572 INFO L256 TraceCheckUtils]: 0: Hoare triple {185#true} call ULTIMATE.init(); {185#true} is VALID [2018-11-23 12:32:24,572 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:32:24,573 INFO L273 TraceCheckUtils]: 2: Hoare triple {185#true} assume true; {185#true} is VALID [2018-11-23 12:32:24,573 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {185#true} {185#true} #83#return; {185#true} is VALID [2018-11-23 12:32:24,573 INFO L256 TraceCheckUtils]: 4: Hoare triple {185#true} call #t~ret10 := main(); {185#true} is VALID [2018-11-23 12:32:24,574 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:32:24,587 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:32:24,588 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:32:24,589 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:32:24,594 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:32:24,601 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:32:24,602 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:32:24,606 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:32:24,615 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:32:24,616 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:32:24,617 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:32:24,618 INFO L273 TraceCheckUtils]: 16: Hoare triple {189#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {186#false} is VALID [2018-11-23 12:32:24,618 INFO L273 TraceCheckUtils]: 17: Hoare triple {186#false} assume !false; {186#false} is VALID [2018-11-23 12:32:24,621 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:32:24,622 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 12:32:24,622 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2018-11-23 12:32:24,623 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 18 [2018-11-23 12:32:24,624 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:32:24,624 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2018-11-23 12:32:24,712 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:32:24,712 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2018-11-23 12:32:24,712 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-23 12:32:24,712 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2018-11-23 12:32:24,713 INFO L87 Difference]: Start difference. First operand 23 states and 26 transitions. Second operand 5 states. [2018-11-23 12:32:25,386 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:25,386 INFO L93 Difference]: Finished difference Result 35 states and 41 transitions. [2018-11-23 12:32:25,387 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-23 12:32:25,387 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 18 [2018-11-23 12:32:25,387 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:32:25,387 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 12:32:25,392 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 41 transitions. [2018-11-23 12:32:25,392 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 12:32:25,397 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 41 transitions. [2018-11-23 12:32:25,398 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 41 transitions. [2018-11-23 12:32:25,480 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:32:25,482 INFO L225 Difference]: With dead ends: 35 [2018-11-23 12:32:25,482 INFO L226 Difference]: Without dead ends: 30 [2018-11-23 12:32:25,483 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2018-11-23 12:32:25,484 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 30 states. [2018-11-23 12:32:25,539 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 30 to 30. [2018-11-23 12:32:25,539 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:32:25,539 INFO L82 GeneralOperation]: Start isEquivalent. First operand 30 states. Second operand 30 states. [2018-11-23 12:32:25,540 INFO L74 IsIncluded]: Start isIncluded. First operand 30 states. Second operand 30 states. [2018-11-23 12:32:25,540 INFO L87 Difference]: Start difference. First operand 30 states. Second operand 30 states. [2018-11-23 12:32:25,543 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:25,543 INFO L93 Difference]: Finished difference Result 30 states and 36 transitions. [2018-11-23 12:32:25,543 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 36 transitions. [2018-11-23 12:32:25,545 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:32:25,545 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:32:25,545 INFO L74 IsIncluded]: Start isIncluded. First operand 30 states. Second operand 30 states. [2018-11-23 12:32:25,545 INFO L87 Difference]: Start difference. First operand 30 states. Second operand 30 states. [2018-11-23 12:32:25,548 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:25,548 INFO L93 Difference]: Finished difference Result 30 states and 36 transitions. [2018-11-23 12:32:25,548 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 36 transitions. [2018-11-23 12:32:25,549 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:32:25,549 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:32:25,549 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:32:25,549 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:32:25,550 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 30 states. [2018-11-23 12:32:25,552 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 36 transitions. [2018-11-23 12:32:25,552 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 36 transitions. Word has length 18 [2018-11-23 12:32:25,552 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:32:25,552 INFO L480 AbstractCegarLoop]: Abstraction has 30 states and 36 transitions. [2018-11-23 12:32:25,553 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2018-11-23 12:32:25,553 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 36 transitions. [2018-11-23 12:32:25,554 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2018-11-23 12:32:25,554 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:32:25,554 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:32:25,554 INFO L423 AbstractCegarLoop]: === Iteration 3 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:32:25,555 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:32:25,555 INFO L82 PathProgramCache]: Analyzing trace with hash 1831075035, now seen corresponding path program 1 times [2018-11-23 12:32:25,555 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:32:25,555 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:32:25,556 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:25,556 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:32:25,557 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:25,575 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:25,689 INFO L256 TraceCheckUtils]: 0: Hoare triple {349#true} call ULTIMATE.init(); {349#true} is VALID [2018-11-23 12:32:25,689 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:32:25,689 INFO L273 TraceCheckUtils]: 2: Hoare triple {349#true} assume true; {349#true} is VALID [2018-11-23 12:32:25,690 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {349#true} {349#true} #83#return; {349#true} is VALID [2018-11-23 12:32:25,690 INFO L256 TraceCheckUtils]: 4: Hoare triple {349#true} call #t~ret10 := main(); {349#true} is VALID [2018-11-23 12:32:25,690 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:32:25,692 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:32:25,694 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:32:25,695 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:32:25,696 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:32:25,696 INFO L273 TraceCheckUtils]: 10: Hoare triple {350#false} ~i~0 := 0; {350#false} is VALID [2018-11-23 12:32:25,697 INFO L273 TraceCheckUtils]: 11: Hoare triple {350#false} assume !(~i~0 < ~SIZE~0); {350#false} is VALID [2018-11-23 12:32:25,697 INFO L273 TraceCheckUtils]: 12: Hoare triple {350#false} ~i~0 := 0; {350#false} is VALID [2018-11-23 12:32:25,697 INFO L273 TraceCheckUtils]: 13: Hoare triple {350#false} assume !(~i~0 < ~SIZE~0); {350#false} is VALID [2018-11-23 12:32:25,698 INFO L273 TraceCheckUtils]: 14: Hoare triple {350#false} ~i~0 := 0; {350#false} is VALID [2018-11-23 12:32:25,699 INFO L273 TraceCheckUtils]: 15: Hoare triple {350#false} assume !(~i~0 < ~SIZE~0); {350#false} is VALID [2018-11-23 12:32:25,699 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:32:25,699 INFO L273 TraceCheckUtils]: 17: Hoare triple {350#false} ~cond := #in~cond; {350#false} is VALID [2018-11-23 12:32:25,700 INFO L273 TraceCheckUtils]: 18: Hoare triple {350#false} assume 0 == ~cond; {350#false} is VALID [2018-11-23 12:32:25,700 INFO L273 TraceCheckUtils]: 19: Hoare triple {350#false} assume !false; {350#false} is VALID [2018-11-23 12:32:25,701 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:32:25,702 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:32:25,702 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:32:25,714 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:32:25,734 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:25,747 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:25,751 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:32:25,974 INFO L256 TraceCheckUtils]: 0: Hoare triple {349#true} call ULTIMATE.init(); {349#true} is VALID [2018-11-23 12:32:25,974 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:32:25,975 INFO L273 TraceCheckUtils]: 2: Hoare triple {349#true} assume true; {349#true} is VALID [2018-11-23 12:32:25,975 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {349#true} {349#true} #83#return; {349#true} is VALID [2018-11-23 12:32:25,976 INFO L256 TraceCheckUtils]: 4: Hoare triple {349#true} call #t~ret10 := main(); {349#true} is VALID [2018-11-23 12:32:25,976 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:32:25,981 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:32:25,983 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:32:25,984 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:32:25,985 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:32:25,985 INFO L273 TraceCheckUtils]: 10: Hoare triple {350#false} ~i~0 := 0; {350#false} is VALID [2018-11-23 12:32:25,986 INFO L273 TraceCheckUtils]: 11: Hoare triple {350#false} assume !(~i~0 < ~SIZE~0); {350#false} is VALID [2018-11-23 12:32:25,986 INFO L273 TraceCheckUtils]: 12: Hoare triple {350#false} ~i~0 := 0; {350#false} is VALID [2018-11-23 12:32:25,986 INFO L273 TraceCheckUtils]: 13: Hoare triple {350#false} assume !(~i~0 < ~SIZE~0); {350#false} is VALID [2018-11-23 12:32:25,987 INFO L273 TraceCheckUtils]: 14: Hoare triple {350#false} ~i~0 := 0; {350#false} is VALID [2018-11-23 12:32:25,987 INFO L273 TraceCheckUtils]: 15: Hoare triple {350#false} assume !(~i~0 < ~SIZE~0); {350#false} is VALID [2018-11-23 12:32:25,988 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:32:25,988 INFO L273 TraceCheckUtils]: 17: Hoare triple {350#false} ~cond := #in~cond; {350#false} is VALID [2018-11-23 12:32:25,988 INFO L273 TraceCheckUtils]: 18: Hoare triple {350#false} assume 0 == ~cond; {350#false} is VALID [2018-11-23 12:32:25,989 INFO L273 TraceCheckUtils]: 19: Hoare triple {350#false} assume !false; {350#false} is VALID [2018-11-23 12:32:25,990 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:32:26,009 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:32:26,010 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4] total 6 [2018-11-23 12:32:26,010 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 20 [2018-11-23 12:32:26,010 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:32:26,010 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2018-11-23 12:32:26,073 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:32:26,074 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2018-11-23 12:32:26,074 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2018-11-23 12:32:26,074 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2018-11-23 12:32:26,074 INFO L87 Difference]: Start difference. First operand 30 states and 36 transitions. Second operand 6 states. [2018-11-23 12:32:26,443 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:26,443 INFO L93 Difference]: Finished difference Result 47 states and 56 transitions. [2018-11-23 12:32:26,443 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-23 12:32:26,443 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 20 [2018-11-23 12:32:26,444 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:32:26,444 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 12:32:26,446 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 48 transitions. [2018-11-23 12:32:26,447 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 12:32:26,448 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 48 transitions. [2018-11-23 12:32:26,449 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 48 transitions. [2018-11-23 12:32:26,542 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:32:26,545 INFO L225 Difference]: With dead ends: 47 [2018-11-23 12:32:26,545 INFO L226 Difference]: Without dead ends: 27 [2018-11-23 12:32:26,546 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:32:26,546 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2018-11-23 12:32:26,562 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 26. [2018-11-23 12:32:26,562 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:32:26,562 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand 26 states. [2018-11-23 12:32:26,562 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand 26 states. [2018-11-23 12:32:26,563 INFO L87 Difference]: Start difference. First operand 27 states. Second operand 26 states. [2018-11-23 12:32:26,565 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:26,566 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2018-11-23 12:32:26,566 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2018-11-23 12:32:26,566 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:32:26,567 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:32:26,567 INFO L74 IsIncluded]: Start isIncluded. First operand 26 states. Second operand 27 states. [2018-11-23 12:32:26,567 INFO L87 Difference]: Start difference. First operand 26 states. Second operand 27 states. [2018-11-23 12:32:26,569 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:26,569 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2018-11-23 12:32:26,570 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2018-11-23 12:32:26,570 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:32:26,570 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:32:26,570 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:32:26,571 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:32:26,571 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 26 states. [2018-11-23 12:32:26,572 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 29 transitions. [2018-11-23 12:32:26,573 INFO L78 Accepts]: Start accepts. Automaton has 26 states and 29 transitions. Word has length 20 [2018-11-23 12:32:26,573 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:32:26,573 INFO L480 AbstractCegarLoop]: Abstraction has 26 states and 29 transitions. [2018-11-23 12:32:26,573 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2018-11-23 12:32:26,573 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 29 transitions. [2018-11-23 12:32:26,574 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2018-11-23 12:32:26,574 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:32:26,574 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:32:26,575 INFO L423 AbstractCegarLoop]: === Iteration 4 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:32:26,575 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:32:26,575 INFO L82 PathProgramCache]: Analyzing trace with hash 82805657, now seen corresponding path program 2 times [2018-11-23 12:32:26,575 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:32:26,576 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:32:26,577 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:26,577 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:32:26,577 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:26,596 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:26,687 INFO L256 TraceCheckUtils]: 0: Hoare triple {573#true} call ULTIMATE.init(); {573#true} is VALID [2018-11-23 12:32:26,688 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:32:26,688 INFO L273 TraceCheckUtils]: 2: Hoare triple {573#true} assume true; {573#true} is VALID [2018-11-23 12:32:26,688 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {573#true} {573#true} #83#return; {573#true} is VALID [2018-11-23 12:32:26,689 INFO L256 TraceCheckUtils]: 4: Hoare triple {573#true} call #t~ret10 := main(); {573#true} is VALID [2018-11-23 12:32:26,689 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:32:26,693 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:32:26,696 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:32:26,696 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:32:26,699 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:32:26,699 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:32:26,701 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:32:26,701 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:32:26,702 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:32:26,702 INFO L273 TraceCheckUtils]: 14: Hoare triple {574#false} ~i~0 := 0; {574#false} is VALID [2018-11-23 12:32:26,703 INFO L273 TraceCheckUtils]: 15: Hoare triple {574#false} assume !(~i~0 < ~SIZE~0); {574#false} is VALID [2018-11-23 12:32:26,703 INFO L273 TraceCheckUtils]: 16: Hoare triple {574#false} ~i~0 := 0; {574#false} is VALID [2018-11-23 12:32:26,703 INFO L273 TraceCheckUtils]: 17: Hoare triple {574#false} assume !(~i~0 < ~SIZE~0); {574#false} is VALID [2018-11-23 12:32:26,704 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:32:26,704 INFO L273 TraceCheckUtils]: 19: Hoare triple {574#false} ~cond := #in~cond; {574#false} is VALID [2018-11-23 12:32:26,704 INFO L273 TraceCheckUtils]: 20: Hoare triple {574#false} assume 0 == ~cond; {574#false} is VALID [2018-11-23 12:32:26,705 INFO L273 TraceCheckUtils]: 21: Hoare triple {574#false} assume !false; {574#false} is VALID [2018-11-23 12:32:26,706 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2018-11-23 12:32:26,706 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 12:32:26,706 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2018-11-23 12:32:26,707 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 22 [2018-11-23 12:32:26,707 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:32:26,707 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2018-11-23 12:32:26,749 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:32:26,749 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2018-11-23 12:32:26,749 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2018-11-23 12:32:26,750 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2018-11-23 12:32:26,750 INFO L87 Difference]: Start difference. First operand 26 states and 29 transitions. Second operand 4 states. [2018-11-23 12:32:26,943 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:26,943 INFO L93 Difference]: Finished difference Result 43 states and 50 transitions. [2018-11-23 12:32:26,943 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-11-23 12:32:26,944 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 22 [2018-11-23 12:32:26,944 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:32:26,944 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-23 12:32:26,947 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 49 transitions. [2018-11-23 12:32:26,947 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-23 12:32:26,949 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 49 transitions. [2018-11-23 12:32:26,949 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 49 transitions. [2018-11-23 12:32:27,057 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:32:27,058 INFO L225 Difference]: With dead ends: 43 [2018-11-23 12:32:27,059 INFO L226 Difference]: Without dead ends: 32 [2018-11-23 12:32:27,059 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2018-11-23 12:32:27,059 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2018-11-23 12:32:27,088 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 29. [2018-11-23 12:32:27,088 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:32:27,088 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand 29 states. [2018-11-23 12:32:27,088 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand 29 states. [2018-11-23 12:32:27,088 INFO L87 Difference]: Start difference. First operand 32 states. Second operand 29 states. [2018-11-23 12:32:27,090 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:27,090 INFO L93 Difference]: Finished difference Result 32 states and 35 transitions. [2018-11-23 12:32:27,090 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 35 transitions. [2018-11-23 12:32:27,091 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:32:27,091 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:32:27,091 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand 32 states. [2018-11-23 12:32:27,092 INFO L87 Difference]: Start difference. First operand 29 states. Second operand 32 states. [2018-11-23 12:32:27,093 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:27,094 INFO L93 Difference]: Finished difference Result 32 states and 35 transitions. [2018-11-23 12:32:27,094 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 35 transitions. [2018-11-23 12:32:27,094 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:32:27,095 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:32:27,095 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:32:27,095 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:32:27,095 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 29 states. [2018-11-23 12:32:27,097 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 32 transitions. [2018-11-23 12:32:27,097 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 32 transitions. Word has length 22 [2018-11-23 12:32:27,097 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:32:27,097 INFO L480 AbstractCegarLoop]: Abstraction has 29 states and 32 transitions. [2018-11-23 12:32:27,097 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2018-11-23 12:32:27,098 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 32 transitions. [2018-11-23 12:32:27,098 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2018-11-23 12:32:27,099 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:32:27,099 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:32:27,099 INFO L423 AbstractCegarLoop]: === Iteration 5 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:32:27,099 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:32:27,100 INFO L82 PathProgramCache]: Analyzing trace with hash 2069498195, now seen corresponding path program 1 times [2018-11-23 12:32:27,100 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:32:27,100 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:32:27,101 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:27,101 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:32:27,101 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:27,119 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:27,213 INFO L256 TraceCheckUtils]: 0: Hoare triple {749#true} call ULTIMATE.init(); {749#true} is VALID [2018-11-23 12:32:27,214 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:32:27,214 INFO L273 TraceCheckUtils]: 2: Hoare triple {749#true} assume true; {749#true} is VALID [2018-11-23 12:32:27,215 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {749#true} {749#true} #83#return; {749#true} is VALID [2018-11-23 12:32:27,215 INFO L256 TraceCheckUtils]: 4: Hoare triple {749#true} call #t~ret10 := main(); {749#true} is VALID [2018-11-23 12:32:27,215 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:32:27,217 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:32:27,219 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:32:27,224 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:32:27,225 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:32:27,225 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:32:27,230 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:32:27,232 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:32:27,232 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:32:27,234 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:32:27,236 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:32:27,236 INFO L273 TraceCheckUtils]: 16: Hoare triple {750#false} ~i~0 := 0; {750#false} is VALID [2018-11-23 12:32:27,237 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:32:27,237 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:32:27,237 INFO L273 TraceCheckUtils]: 19: Hoare triple {750#false} assume !(~i~0 < ~SIZE~0); {750#false} is VALID [2018-11-23 12:32:27,238 INFO L273 TraceCheckUtils]: 20: Hoare triple {750#false} ~i~0 := 0; {750#false} is VALID [2018-11-23 12:32:27,238 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:32:27,239 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:32:27,239 INFO L273 TraceCheckUtils]: 23: Hoare triple {750#false} assume !(~i~0 < ~SIZE~0); {750#false} is VALID [2018-11-23 12:32:27,239 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:32:27,240 INFO L273 TraceCheckUtils]: 25: Hoare triple {750#false} ~cond := #in~cond; {750#false} is VALID [2018-11-23 12:32:27,240 INFO L273 TraceCheckUtils]: 26: Hoare triple {750#false} assume 0 == ~cond; {750#false} is VALID [2018-11-23 12:32:27,241 INFO L273 TraceCheckUtils]: 27: Hoare triple {750#false} assume !false; {750#false} is VALID [2018-11-23 12:32:27,243 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:32:27,243 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:32:27,243 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:32:27,259 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:32:27,285 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:27,297 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:27,299 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:32:27,547 INFO L256 TraceCheckUtils]: 0: Hoare triple {749#true} call ULTIMATE.init(); {749#true} is VALID [2018-11-23 12:32:27,547 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:32:27,548 INFO L273 TraceCheckUtils]: 2: Hoare triple {749#true} assume true; {749#true} is VALID [2018-11-23 12:32:27,548 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {749#true} {749#true} #83#return; {749#true} is VALID [2018-11-23 12:32:27,549 INFO L256 TraceCheckUtils]: 4: Hoare triple {749#true} call #t~ret10 := main(); {749#true} is VALID [2018-11-23 12:32:27,549 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:32:27,552 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:32:27,552 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:32:27,557 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:32:27,557 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:32:27,562 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:32:27,562 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:32:27,563 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:32:27,563 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:32:27,564 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:32:27,565 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:32:27,565 INFO L273 TraceCheckUtils]: 16: Hoare triple {750#false} ~i~0 := 0; {750#false} is VALID [2018-11-23 12:32:27,566 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:32:27,566 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:32:27,566 INFO L273 TraceCheckUtils]: 19: Hoare triple {750#false} assume !(~i~0 < ~SIZE~0); {750#false} is VALID [2018-11-23 12:32:27,567 INFO L273 TraceCheckUtils]: 20: Hoare triple {750#false} ~i~0 := 0; {750#false} is VALID [2018-11-23 12:32:27,567 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:32:27,567 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:32:27,568 INFO L273 TraceCheckUtils]: 23: Hoare triple {750#false} assume !(~i~0 < ~SIZE~0); {750#false} is VALID [2018-11-23 12:32:27,568 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:32:27,568 INFO L273 TraceCheckUtils]: 25: Hoare triple {750#false} ~cond := #in~cond; {750#false} is VALID [2018-11-23 12:32:27,568 INFO L273 TraceCheckUtils]: 26: Hoare triple {750#false} assume 0 == ~cond; {750#false} is VALID [2018-11-23 12:32:27,568 INFO L273 TraceCheckUtils]: 27: Hoare triple {750#false} assume !false; {750#false} is VALID [2018-11-23 12:32:27,570 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:32:27,594 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:32:27,594 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 7 [2018-11-23 12:32:27,594 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 28 [2018-11-23 12:32:27,595 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:32:27,595 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states. [2018-11-23 12:32:27,642 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:32:27,642 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2018-11-23 12:32:27,642 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2018-11-23 12:32:27,642 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=22, Unknown=0, NotChecked=0, Total=42 [2018-11-23 12:32:27,643 INFO L87 Difference]: Start difference. First operand 29 states and 32 transitions. Second operand 7 states. [2018-11-23 12:32:28,074 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:28,074 INFO L93 Difference]: Finished difference Result 52 states and 59 transitions. [2018-11-23 12:32:28,074 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2018-11-23 12:32:28,074 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 28 [2018-11-23 12:32:28,075 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:32:28,075 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2018-11-23 12:32:28,077 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 57 transitions. [2018-11-23 12:32:28,077 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2018-11-23 12:32:28,079 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 57 transitions. [2018-11-23 12:32:28,079 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 57 transitions. [2018-11-23 12:32:28,156 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:32:28,158 INFO L225 Difference]: With dead ends: 52 [2018-11-23 12:32:28,158 INFO L226 Difference]: Without dead ends: 39 [2018-11-23 12:32:28,159 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:32:28,159 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39 states. [2018-11-23 12:32:28,207 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39 to 35. [2018-11-23 12:32:28,208 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:32:28,208 INFO L82 GeneralOperation]: Start isEquivalent. First operand 39 states. Second operand 35 states. [2018-11-23 12:32:28,208 INFO L74 IsIncluded]: Start isIncluded. First operand 39 states. Second operand 35 states. [2018-11-23 12:32:28,208 INFO L87 Difference]: Start difference. First operand 39 states. Second operand 35 states. [2018-11-23 12:32:28,210 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:28,211 INFO L93 Difference]: Finished difference Result 39 states and 42 transitions. [2018-11-23 12:32:28,211 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 42 transitions. [2018-11-23 12:32:28,211 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:32:28,212 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:32:28,212 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand 39 states. [2018-11-23 12:32:28,212 INFO L87 Difference]: Start difference. First operand 35 states. Second operand 39 states. [2018-11-23 12:32:28,214 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:28,214 INFO L93 Difference]: Finished difference Result 39 states and 42 transitions. [2018-11-23 12:32:28,214 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 42 transitions. [2018-11-23 12:32:28,215 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:32:28,215 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:32:28,215 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:32:28,216 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:32:28,216 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 35 states. [2018-11-23 12:32:28,217 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 38 transitions. [2018-11-23 12:32:28,218 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 38 transitions. Word has length 28 [2018-11-23 12:32:28,218 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:32:28,218 INFO L480 AbstractCegarLoop]: Abstraction has 35 states and 38 transitions. [2018-11-23 12:32:28,218 INFO L481 AbstractCegarLoop]: Interpolant automaton has 7 states. [2018-11-23 12:32:28,218 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 38 transitions. [2018-11-23 12:32:28,219 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2018-11-23 12:32:28,219 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:32:28,220 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:32:28,220 INFO L423 AbstractCegarLoop]: === Iteration 6 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:32:28,220 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:32:28,220 INFO L82 PathProgramCache]: Analyzing trace with hash -1350591603, now seen corresponding path program 2 times [2018-11-23 12:32:28,221 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:32:28,221 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:32:28,222 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:28,222 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:32:28,222 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:28,333 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:29,408 WARN L180 SmtUtils]: Spent 201.00 ms on a formula simplification. DAG size of input: 33 DAG size of output: 30 [2018-11-23 12:32:30,718 WARN L180 SmtUtils]: Spent 118.00 ms on a formula simplification. DAG size of input: 48 DAG size of output: 40 [2018-11-23 12:32:30,951 WARN L180 SmtUtils]: Spent 104.00 ms on a formula simplification. DAG size of input: 47 DAG size of output: 39 [2018-11-23 12:32:31,984 WARN L180 SmtUtils]: Spent 313.00 ms on a formula simplification. DAG size of input: 44 DAG size of output: 29 [2018-11-23 12:32:32,470 INFO L256 TraceCheckUtils]: 0: Hoare triple {1048#true} call ULTIMATE.init(); {1048#true} is VALID [2018-11-23 12:32:32,471 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:32:32,471 INFO L273 TraceCheckUtils]: 2: Hoare triple {1048#true} assume true; {1048#true} is VALID [2018-11-23 12:32:32,471 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1048#true} {1048#true} #83#return; {1048#true} is VALID [2018-11-23 12:32:32,471 INFO L256 TraceCheckUtils]: 4: Hoare triple {1048#true} call #t~ret10 := main(); {1048#true} is VALID [2018-11-23 12:32:32,471 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:32:32,472 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:32:32,473 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:32:32,474 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:32:32,475 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:32:32,477 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:32:32,478 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:32:32,479 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:32:32,480 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 (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0))) (<= 2 ~SIZE~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:32,482 INFO L273 TraceCheckUtils]: 14: Hoare triple {1057#(and (or (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|)) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0))) (<= 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)) (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:32,484 INFO L273 TraceCheckUtils]: 15: Hoare triple {1058#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {1059#(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)) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:32,486 INFO L273 TraceCheckUtils]: 16: Hoare triple {1059#(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)) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {1060#(and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))))) (<= (+ main_~i~0 1) ~SIZE~0) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:32,487 INFO L273 TraceCheckUtils]: 17: Hoare triple {1060#(and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))))) (<= (+ main_~i~0 1) ~SIZE~0) (<= 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 (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))))) (<= 5 (+ (* 2 ~SIZE~0) |main_~#a~0.offset|))) (<= 2 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:32,488 INFO L273 TraceCheckUtils]: 18: Hoare triple {1061#(and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))))) (<= 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 (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) main_~sum~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:32:32,490 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 (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) main_~sum~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 (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0))) (<= 2 ~SIZE~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:32,492 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 (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) main_~sum~0))) (<= 2 ~SIZE~0)) (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 (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= 2 ~SIZE~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:32,493 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 (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) main_~sum~0) (<= 2 ~SIZE~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))))) (= |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 (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= 2 ~SIZE~0)) (<= (+ (* 2 main_~i~0) |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:32:32,495 INFO L273 TraceCheckUtils]: 22: Hoare triple {1065#(and (or (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))))) (<= 2 ~SIZE~0)) (<= (+ (* 2 main_~i~0) |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:32:32,497 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:32:32,498 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:32:32,499 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:32:32,501 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:32:32,502 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:32:32,503 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:32:32,504 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:32:32,505 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:32:32,506 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:32:32,506 INFO L273 TraceCheckUtils]: 32: Hoare triple {1074#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {1049#false} is VALID [2018-11-23 12:32:32,507 INFO L273 TraceCheckUtils]: 33: Hoare triple {1049#false} assume !false; {1049#false} is VALID [2018-11-23 12:32:32,520 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:32:32,520 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:32:32,521 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:32:32,540 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:32:32,567 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:32:32,567 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:32:32,580 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:32,581 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:32:33,276 INFO L256 TraceCheckUtils]: 0: Hoare triple {1048#true} call ULTIMATE.init(); {1048#true} is VALID [2018-11-23 12:32:33,276 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:32:33,277 INFO L273 TraceCheckUtils]: 2: Hoare triple {1048#true} assume true; {1048#true} is VALID [2018-11-23 12:32:33,277 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1048#true} {1048#true} #83#return; {1048#true} is VALID [2018-11-23 12:32:33,277 INFO L256 TraceCheckUtils]: 4: Hoare triple {1048#true} call #t~ret10 := main(); {1048#true} is VALID [2018-11-23 12:32:33,278 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:32:33,279 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:32:33,280 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:32:33,280 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:32:33,281 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:32:33,299 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:32:33,314 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:32:33,329 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:32:33,339 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 (= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:33,341 INFO L273 TraceCheckUtils]: 14: Hoare triple {1122#(and (= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {1126#(and (= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:33,350 INFO L273 TraceCheckUtils]: 15: Hoare triple {1126#(and (= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {1130#(and (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:33,351 INFO L273 TraceCheckUtils]: 16: Hoare triple {1130#(and (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {1130#(and (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:33,351 INFO L273 TraceCheckUtils]: 17: Hoare triple {1130#(and (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {1130#(and (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:33,352 INFO L273 TraceCheckUtils]: 18: Hoare triple {1130#(and (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {1140#(and (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:33,353 INFO L273 TraceCheckUtils]: 19: Hoare triple {1140#(and (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) main_~sum~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem7;havoc #t~mem7; {1144#(and (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:33,354 INFO L273 TraceCheckUtils]: 20: Hoare triple {1144#(and (= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {1148#(and (= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:33,355 INFO L273 TraceCheckUtils]: 21: Hoare triple {1148#(and (= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2))) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~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:32:33,356 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:32:33,357 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:32:33,358 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:32:33,359 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; {1164#(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:32:33,360 INFO L273 TraceCheckUtils]: 26: Hoare triple {1164#(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; {1168#(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:32:33,362 INFO L273 TraceCheckUtils]: 27: Hoare triple {1168#(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:32:33,363 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:32:33,367 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:32:33,368 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:32:33,370 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:32:33,370 INFO L273 TraceCheckUtils]: 32: Hoare triple {1074#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {1049#false} is VALID [2018-11-23 12:32:33,370 INFO L273 TraceCheckUtils]: 33: Hoare triple {1049#false} assume !false; {1049#false} is VALID [2018-11-23 12:32:33,374 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:32:33,394 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:32:33,394 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [27, 18] total 40 [2018-11-23 12:32:33,395 INFO L78 Accepts]: Start accepts. Automaton has 40 states. Word has length 34 [2018-11-23 12:32:33,395 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:32:33,395 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 40 states. [2018-11-23 12:32:33,510 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:32:33,510 INFO L459 AbstractCegarLoop]: Interpolant automaton has 40 states [2018-11-23 12:32:33,510 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 40 interpolants. [2018-11-23 12:32:33,511 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=141, Invalid=1419, Unknown=0, NotChecked=0, Total=1560 [2018-11-23 12:32:33,512 INFO L87 Difference]: Start difference. First operand 35 states and 38 transitions. Second operand 40 states. [2018-11-23 12:32:34,743 WARN L180 SmtUtils]: Spent 155.00 ms on a formula simplification. DAG size of input: 85 DAG size of output: 49 [2018-11-23 12:32:35,723 WARN L180 SmtUtils]: Spent 153.00 ms on a formula simplification. DAG size of input: 83 DAG size of output: 65 [2018-11-23 12:32:36,407 WARN L180 SmtUtils]: Spent 163.00 ms on a formula simplification. DAG size of input: 78 DAG size of output: 65 [2018-11-23 12:32:37,652 WARN L180 SmtUtils]: Spent 146.00 ms on a formula simplification. DAG size of input: 66 DAG size of output: 61 [2018-11-23 12:32:37,938 WARN L180 SmtUtils]: Spent 101.00 ms on a formula simplification. DAG size of input: 47 DAG size of output: 38 [2018-11-23 12:32:38,199 WARN L180 SmtUtils]: Spent 125.00 ms on a formula simplification. DAG size of input: 66 DAG size of output: 61 [2018-11-23 12:32:38,464 WARN L180 SmtUtils]: Spent 113.00 ms on a formula simplification. DAG size of input: 78 DAG size of output: 60 [2018-11-23 12:32:39,532 WARN L180 SmtUtils]: Spent 182.00 ms on a formula simplification. DAG size of input: 71 DAG size of output: 59 [2018-11-23 12:32:40,030 WARN L180 SmtUtils]: Spent 152.00 ms on a formula simplification. DAG size of input: 89 DAG size of output: 46 [2018-11-23 12:32:40,693 WARN L180 SmtUtils]: Spent 206.00 ms on a formula simplification. DAG size of input: 96 DAG size of output: 58 [2018-11-23 12:32:42,419 WARN L180 SmtUtils]: Spent 112.00 ms on a formula simplification. DAG size of input: 62 DAG size of output: 51 [2018-11-23 12:32:42,696 WARN L180 SmtUtils]: Spent 156.00 ms on a formula simplification. DAG size of input: 74 DAG size of output: 63 [2018-11-23 12:32:43,169 WARN L180 SmtUtils]: Spent 127.00 ms on a formula simplification. DAG size of input: 68 DAG size of output: 57 [2018-11-23 12:32:43,601 WARN L180 SmtUtils]: Spent 154.00 ms on a formula simplification. DAG size of input: 74 DAG size of output: 61 [2018-11-23 12:32:44,045 WARN L180 SmtUtils]: Spent 176.00 ms on a formula simplification. DAG size of input: 71 DAG size of output: 52 [2018-11-23 12:32:44,764 WARN L180 SmtUtils]: Spent 176.00 ms on a formula simplification. DAG size of input: 68 DAG size of output: 66 [2018-11-23 12:32:45,421 WARN L180 SmtUtils]: Spent 177.00 ms on a formula simplification. DAG size of input: 76 DAG size of output: 54 [2018-11-23 12:32:45,754 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:45,755 INFO L93 Difference]: Finished difference Result 93 states and 105 transitions. [2018-11-23 12:32:45,755 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 50 states. [2018-11-23 12:32:45,755 INFO L78 Accepts]: Start accepts. Automaton has 40 states. Word has length 34 [2018-11-23 12:32:45,755 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:32:45,755 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 40 states. [2018-11-23 12:32:45,759 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 96 transitions. [2018-11-23 12:32:45,759 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 40 states. [2018-11-23 12:32:45,763 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 96 transitions. [2018-11-23 12:32:45,763 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 50 states and 96 transitions. [2018-11-23 12:32:45,996 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 96 edges. 96 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:32:46,002 INFO L225 Difference]: With dead ends: 93 [2018-11-23 12:32:46,002 INFO L226 Difference]: Without dead ends: 87 [2018-11-23 12:32:46,004 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 104 GetRequests, 19 SyntacticMatches, 4 SemanticMatches, 81 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1953 ImplicationChecksByTransitivity, 11.0s TimeCoverageRelationStatistics Valid=833, Invalid=5973, Unknown=0, NotChecked=0, Total=6806 [2018-11-23 12:32:46,005 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 87 states. [2018-11-23 12:32:46,244 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 87 to 66. [2018-11-23 12:32:46,244 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:32:46,244 INFO L82 GeneralOperation]: Start isEquivalent. First operand 87 states. Second operand 66 states. [2018-11-23 12:32:46,245 INFO L74 IsIncluded]: Start isIncluded. First operand 87 states. Second operand 66 states. [2018-11-23 12:32:46,245 INFO L87 Difference]: Start difference. First operand 87 states. Second operand 66 states. [2018-11-23 12:32:46,249 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:46,249 INFO L93 Difference]: Finished difference Result 87 states and 98 transitions. [2018-11-23 12:32:46,249 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 98 transitions. [2018-11-23 12:32:46,250 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:32:46,250 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:32:46,250 INFO L74 IsIncluded]: Start isIncluded. First operand 66 states. Second operand 87 states. [2018-11-23 12:32:46,250 INFO L87 Difference]: Start difference. First operand 66 states. Second operand 87 states. [2018-11-23 12:32:46,254 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:46,254 INFO L93 Difference]: Finished difference Result 87 states and 98 transitions. [2018-11-23 12:32:46,254 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 98 transitions. [2018-11-23 12:32:46,255 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:32:46,255 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:32:46,255 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:32:46,255 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:32:46,255 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 66 states. [2018-11-23 12:32:46,258 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 66 states to 66 states and 75 transitions. [2018-11-23 12:32:46,258 INFO L78 Accepts]: Start accepts. Automaton has 66 states and 75 transitions. Word has length 34 [2018-11-23 12:32:46,258 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:32:46,258 INFO L480 AbstractCegarLoop]: Abstraction has 66 states and 75 transitions. [2018-11-23 12:32:46,258 INFO L481 AbstractCegarLoop]: Interpolant automaton has 40 states. [2018-11-23 12:32:46,258 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 75 transitions. [2018-11-23 12:32:46,259 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2018-11-23 12:32:46,259 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:32:46,260 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:32:46,260 INFO L423 AbstractCegarLoop]: === Iteration 7 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:32:46,260 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:32:46,260 INFO L82 PathProgramCache]: Analyzing trace with hash 178744587, now seen corresponding path program 3 times [2018-11-23 12:32:46,260 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:32:46,261 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:32:46,261 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:46,261 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:32:46,262 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:46,273 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:46,390 INFO L256 TraceCheckUtils]: 0: Hoare triple {1686#true} call ULTIMATE.init(); {1686#true} is VALID [2018-11-23 12:32:46,390 INFO L273 TraceCheckUtils]: 1: Hoare triple {1686#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {1686#true} is VALID [2018-11-23 12:32:46,391 INFO L273 TraceCheckUtils]: 2: Hoare triple {1686#true} assume true; {1686#true} is VALID [2018-11-23 12:32:46,391 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1686#true} {1686#true} #83#return; {1686#true} is VALID [2018-11-23 12:32:46,391 INFO L256 TraceCheckUtils]: 4: Hoare triple {1686#true} call #t~ret10 := main(); {1686#true} is VALID [2018-11-23 12:32:46,392 INFO L273 TraceCheckUtils]: 5: Hoare triple {1686#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {1686#true} is VALID [2018-11-23 12:32:46,392 INFO L273 TraceCheckUtils]: 6: Hoare triple {1686#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; {1688#(= main_~i~0 0)} is VALID [2018-11-23 12:32:46,393 INFO L273 TraceCheckUtils]: 7: Hoare triple {1688#(= 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; {1688#(= main_~i~0 0)} is VALID [2018-11-23 12:32:46,393 INFO L273 TraceCheckUtils]: 8: Hoare triple {1688#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1689#(<= main_~i~0 1)} is VALID [2018-11-23 12:32:46,394 INFO L273 TraceCheckUtils]: 9: Hoare triple {1689#(<= 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; {1689#(<= main_~i~0 1)} is VALID [2018-11-23 12:32:46,394 INFO L273 TraceCheckUtils]: 10: Hoare triple {1689#(<= main_~i~0 1)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1690#(<= main_~i~0 2)} is VALID [2018-11-23 12:32:46,395 INFO L273 TraceCheckUtils]: 11: Hoare triple {1690#(<= main_~i~0 2)} assume !(~i~0 < ~SIZE~0); {1691#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:32:46,395 INFO L273 TraceCheckUtils]: 12: Hoare triple {1691#(<= ~SIZE~0 2)} ~i~0 := 0; {1691#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:32:46,396 INFO L273 TraceCheckUtils]: 13: Hoare triple {1691#(<= ~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; {1691#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:32:46,396 INFO L273 TraceCheckUtils]: 14: Hoare triple {1691#(<= ~SIZE~0 2)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {1691#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:32:46,397 INFO L273 TraceCheckUtils]: 15: Hoare triple {1691#(<= ~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; {1691#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:32:46,398 INFO L273 TraceCheckUtils]: 16: Hoare triple {1691#(<= ~SIZE~0 2)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {1691#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:32:46,398 INFO L273 TraceCheckUtils]: 17: Hoare triple {1691#(<= ~SIZE~0 2)} assume !(~i~0 < ~SIZE~0); {1691#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:32:46,399 INFO L273 TraceCheckUtils]: 18: Hoare triple {1691#(<= ~SIZE~0 2)} ~i~0 := 0; {1691#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:32:46,399 INFO L273 TraceCheckUtils]: 19: Hoare triple {1691#(<= ~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; {1691#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:32:46,400 INFO L273 TraceCheckUtils]: 20: Hoare triple {1691#(<= ~SIZE~0 2)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {1691#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:32:46,400 INFO L273 TraceCheckUtils]: 21: Hoare triple {1691#(<= ~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; {1691#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:32:46,401 INFO L273 TraceCheckUtils]: 22: Hoare triple {1691#(<= ~SIZE~0 2)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {1691#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:32:46,402 INFO L273 TraceCheckUtils]: 23: Hoare triple {1691#(<= ~SIZE~0 2)} assume !(~i~0 < ~SIZE~0); {1691#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:32:46,402 INFO L273 TraceCheckUtils]: 24: Hoare triple {1691#(<= ~SIZE~0 2)} ~i~0 := 0; {1692#(and (<= ~SIZE~0 2) (= main_~i~0 0))} is VALID [2018-11-23 12:32:46,403 INFO L273 TraceCheckUtils]: 25: Hoare triple {1692#(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; {1692#(and (<= ~SIZE~0 2) (= main_~i~0 0))} is VALID [2018-11-23 12:32:46,404 INFO L273 TraceCheckUtils]: 26: Hoare triple {1692#(and (<= ~SIZE~0 2) (= main_~i~0 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {1693#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:32:46,405 INFO L273 TraceCheckUtils]: 27: Hoare triple {1693#(<= ~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; {1693#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:32:46,406 INFO L273 TraceCheckUtils]: 28: Hoare triple {1693#(<= ~SIZE~0 (+ main_~i~0 1))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {1694#(<= ~SIZE~0 main_~i~0)} is VALID [2018-11-23 12:32:46,406 INFO L273 TraceCheckUtils]: 29: Hoare triple {1694#(<= ~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; {1687#false} is VALID [2018-11-23 12:32:46,407 INFO L273 TraceCheckUtils]: 30: Hoare triple {1687#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {1687#false} is VALID [2018-11-23 12:32:46,407 INFO L273 TraceCheckUtils]: 31: Hoare triple {1687#false} assume !(~i~0 < ~SIZE~0); {1687#false} is VALID [2018-11-23 12:32:46,407 INFO L256 TraceCheckUtils]: 32: Hoare triple {1687#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {1687#false} is VALID [2018-11-23 12:32:46,408 INFO L273 TraceCheckUtils]: 33: Hoare triple {1687#false} ~cond := #in~cond; {1687#false} is VALID [2018-11-23 12:32:46,408 INFO L273 TraceCheckUtils]: 34: Hoare triple {1687#false} assume 0 == ~cond; {1687#false} is VALID [2018-11-23 12:32:46,409 INFO L273 TraceCheckUtils]: 35: Hoare triple {1687#false} assume !false; {1687#false} is VALID [2018-11-23 12:32:46,411 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:32:46,411 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:32:46,411 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:32:46,429 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:32:46,453 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2018-11-23 12:32:46,453 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:32:46,480 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:46,481 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:32:46,749 INFO L256 TraceCheckUtils]: 0: Hoare triple {1686#true} call ULTIMATE.init(); {1686#true} is VALID [2018-11-23 12:32:46,749 INFO L273 TraceCheckUtils]: 1: Hoare triple {1686#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {1686#true} is VALID [2018-11-23 12:32:46,749 INFO L273 TraceCheckUtils]: 2: Hoare triple {1686#true} assume true; {1686#true} is VALID [2018-11-23 12:32:46,749 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1686#true} {1686#true} #83#return; {1686#true} is VALID [2018-11-23 12:32:46,750 INFO L256 TraceCheckUtils]: 4: Hoare triple {1686#true} call #t~ret10 := main(); {1686#true} is VALID [2018-11-23 12:32:46,750 INFO L273 TraceCheckUtils]: 5: Hoare triple {1686#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {1686#true} is VALID [2018-11-23 12:32:46,750 INFO L273 TraceCheckUtils]: 6: Hoare triple {1686#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; {1686#true} is VALID [2018-11-23 12:32:46,750 INFO L273 TraceCheckUtils]: 7: Hoare triple {1686#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; {1686#true} is VALID [2018-11-23 12:32:46,750 INFO L273 TraceCheckUtils]: 8: Hoare triple {1686#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1686#true} is VALID [2018-11-23 12:32:46,750 INFO L273 TraceCheckUtils]: 9: Hoare triple {1686#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; {1686#true} is VALID [2018-11-23 12:32:46,750 INFO L273 TraceCheckUtils]: 10: Hoare triple {1686#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1686#true} is VALID [2018-11-23 12:32:46,751 INFO L273 TraceCheckUtils]: 11: Hoare triple {1686#true} assume !(~i~0 < ~SIZE~0); {1686#true} is VALID [2018-11-23 12:32:46,751 INFO L273 TraceCheckUtils]: 12: Hoare triple {1686#true} ~i~0 := 0; {1686#true} is VALID [2018-11-23 12:32:46,751 INFO L273 TraceCheckUtils]: 13: Hoare triple {1686#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; {1686#true} is VALID [2018-11-23 12:32:46,751 INFO L273 TraceCheckUtils]: 14: Hoare triple {1686#true} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {1686#true} is VALID [2018-11-23 12:32:46,751 INFO L273 TraceCheckUtils]: 15: Hoare triple {1686#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; {1686#true} is VALID [2018-11-23 12:32:46,752 INFO L273 TraceCheckUtils]: 16: Hoare triple {1686#true} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {1686#true} is VALID [2018-11-23 12:32:46,752 INFO L273 TraceCheckUtils]: 17: Hoare triple {1686#true} assume !(~i~0 < ~SIZE~0); {1686#true} is VALID [2018-11-23 12:32:46,752 INFO L273 TraceCheckUtils]: 18: Hoare triple {1686#true} ~i~0 := 0; {1752#(<= main_~i~0 0)} is VALID [2018-11-23 12:32:46,753 INFO L273 TraceCheckUtils]: 19: Hoare triple {1752#(<= 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; {1752#(<= main_~i~0 0)} is VALID [2018-11-23 12:32:46,753 INFO L273 TraceCheckUtils]: 20: Hoare triple {1752#(<= main_~i~0 0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {1689#(<= main_~i~0 1)} is VALID [2018-11-23 12:32:46,754 INFO L273 TraceCheckUtils]: 21: Hoare triple {1689#(<= 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; {1689#(<= main_~i~0 1)} is VALID [2018-11-23 12:32:46,754 INFO L273 TraceCheckUtils]: 22: Hoare triple {1689#(<= main_~i~0 1)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {1690#(<= main_~i~0 2)} is VALID [2018-11-23 12:32:46,755 INFO L273 TraceCheckUtils]: 23: Hoare triple {1690#(<= main_~i~0 2)} assume !(~i~0 < ~SIZE~0); {1691#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:32:46,755 INFO L273 TraceCheckUtils]: 24: Hoare triple {1691#(<= ~SIZE~0 2)} ~i~0 := 0; {1771#(and (<= 0 main_~i~0) (<= ~SIZE~0 2))} is VALID [2018-11-23 12:32:46,756 INFO L273 TraceCheckUtils]: 25: Hoare triple {1771#(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; {1771#(and (<= 0 main_~i~0) (<= ~SIZE~0 2))} is VALID [2018-11-23 12:32:46,756 INFO L273 TraceCheckUtils]: 26: Hoare triple {1771#(and (<= 0 main_~i~0) (<= ~SIZE~0 2))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {1778#(and (<= 1 main_~i~0) (<= ~SIZE~0 2))} is VALID [2018-11-23 12:32:46,757 INFO L273 TraceCheckUtils]: 27: Hoare triple {1778#(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; {1778#(and (<= 1 main_~i~0) (<= ~SIZE~0 2))} is VALID [2018-11-23 12:32:46,757 INFO L273 TraceCheckUtils]: 28: Hoare triple {1778#(and (<= 1 main_~i~0) (<= ~SIZE~0 2))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {1785#(and (<= 2 main_~i~0) (<= ~SIZE~0 2))} is VALID [2018-11-23 12:32:46,758 INFO L273 TraceCheckUtils]: 29: Hoare triple {1785#(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; {1687#false} is VALID [2018-11-23 12:32:46,759 INFO L273 TraceCheckUtils]: 30: Hoare triple {1687#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {1687#false} is VALID [2018-11-23 12:32:46,759 INFO L273 TraceCheckUtils]: 31: Hoare triple {1687#false} assume !(~i~0 < ~SIZE~0); {1687#false} is VALID [2018-11-23 12:32:46,759 INFO L256 TraceCheckUtils]: 32: Hoare triple {1687#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {1687#false} is VALID [2018-11-23 12:32:46,759 INFO L273 TraceCheckUtils]: 33: Hoare triple {1687#false} ~cond := #in~cond; {1687#false} is VALID [2018-11-23 12:32:46,760 INFO L273 TraceCheckUtils]: 34: Hoare triple {1687#false} assume 0 == ~cond; {1687#false} is VALID [2018-11-23 12:32:46,760 INFO L273 TraceCheckUtils]: 35: Hoare triple {1687#false} assume !false; {1687#false} is VALID [2018-11-23 12:32:46,762 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:32:46,781 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:32:46,781 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 13 [2018-11-23 12:32:46,782 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 36 [2018-11-23 12:32:46,782 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:32:46,782 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states. [2018-11-23 12:32:46,830 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:32:46,831 INFO L459 AbstractCegarLoop]: Interpolant automaton has 13 states [2018-11-23 12:32:46,831 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2018-11-23 12:32:46,831 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=111, Unknown=0, NotChecked=0, Total=156 [2018-11-23 12:32:46,832 INFO L87 Difference]: Start difference. First operand 66 states and 75 transitions. Second operand 13 states. [2018-11-23 12:32:47,747 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:47,747 INFO L93 Difference]: Finished difference Result 121 states and 137 transitions. [2018-11-23 12:32:47,747 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-23 12:32:47,747 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 36 [2018-11-23 12:32:47,748 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:32:47,748 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-23 12:32:47,750 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 97 transitions. [2018-11-23 12:32:47,750 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-23 12:32:47,753 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 97 transitions. [2018-11-23 12:32:47,753 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 97 transitions. [2018-11-23 12:32:47,857 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:32:47,859 INFO L225 Difference]: With dead ends: 121 [2018-11-23 12:32:47,860 INFO L226 Difference]: Without dead ends: 73 [2018-11-23 12:32:47,860 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 50 GetRequests, 36 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 45 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=69, Invalid=171, Unknown=0, NotChecked=0, Total=240 [2018-11-23 12:32:47,861 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 73 states. [2018-11-23 12:32:48,197 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 73 to 61. [2018-11-23 12:32:48,198 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:32:48,198 INFO L82 GeneralOperation]: Start isEquivalent. First operand 73 states. Second operand 61 states. [2018-11-23 12:32:48,198 INFO L74 IsIncluded]: Start isIncluded. First operand 73 states. Second operand 61 states. [2018-11-23 12:32:48,198 INFO L87 Difference]: Start difference. First operand 73 states. Second operand 61 states. [2018-11-23 12:32:48,202 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:48,202 INFO L93 Difference]: Finished difference Result 73 states and 79 transitions. [2018-11-23 12:32:48,202 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 79 transitions. [2018-11-23 12:32:48,202 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:32:48,203 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:32:48,203 INFO L74 IsIncluded]: Start isIncluded. First operand 61 states. Second operand 73 states. [2018-11-23 12:32:48,203 INFO L87 Difference]: Start difference. First operand 61 states. Second operand 73 states. [2018-11-23 12:32:48,206 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:48,206 INFO L93 Difference]: Finished difference Result 73 states and 79 transitions. [2018-11-23 12:32:48,206 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 79 transitions. [2018-11-23 12:32:48,206 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:32:48,206 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:32:48,206 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:32:48,207 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:32:48,207 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 61 states. [2018-11-23 12:32:48,208 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 61 states to 61 states and 67 transitions. [2018-11-23 12:32:48,209 INFO L78 Accepts]: Start accepts. Automaton has 61 states and 67 transitions. Word has length 36 [2018-11-23 12:32:48,209 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:32:48,209 INFO L480 AbstractCegarLoop]: Abstraction has 61 states and 67 transitions. [2018-11-23 12:32:48,209 INFO L481 AbstractCegarLoop]: Interpolant automaton has 13 states. [2018-11-23 12:32:48,209 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 67 transitions. [2018-11-23 12:32:48,210 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2018-11-23 12:32:48,210 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:32:48,210 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:32:48,210 INFO L423 AbstractCegarLoop]: === Iteration 8 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:32:48,211 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:32:48,211 INFO L82 PathProgramCache]: Analyzing trace with hash 1016318089, now seen corresponding path program 4 times [2018-11-23 12:32:48,211 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:32:48,211 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:32:48,212 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:48,212 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:32:48,212 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:48,224 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:48,390 INFO L256 TraceCheckUtils]: 0: Hoare triple {2232#true} call ULTIMATE.init(); {2232#true} is VALID [2018-11-23 12:32:48,390 INFO L273 TraceCheckUtils]: 1: Hoare triple {2232#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {2232#true} is VALID [2018-11-23 12:32:48,390 INFO L273 TraceCheckUtils]: 2: Hoare triple {2232#true} assume true; {2232#true} is VALID [2018-11-23 12:32:48,391 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2232#true} {2232#true} #83#return; {2232#true} is VALID [2018-11-23 12:32:48,391 INFO L256 TraceCheckUtils]: 4: Hoare triple {2232#true} call #t~ret10 := main(); {2232#true} is VALID [2018-11-23 12:32:48,391 INFO L273 TraceCheckUtils]: 5: Hoare triple {2232#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {2232#true} is VALID [2018-11-23 12:32:48,392 INFO L273 TraceCheckUtils]: 6: Hoare triple {2232#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; {2234#(= main_~i~0 0)} is VALID [2018-11-23 12:32:48,392 INFO L273 TraceCheckUtils]: 7: Hoare triple {2234#(= 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; {2234#(= main_~i~0 0)} is VALID [2018-11-23 12:32:48,393 INFO L273 TraceCheckUtils]: 8: Hoare triple {2234#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2235#(<= 1 main_~i~0)} is VALID [2018-11-23 12:32:48,395 INFO L273 TraceCheckUtils]: 9: Hoare triple {2235#(<= 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; {2235#(<= 1 main_~i~0)} is VALID [2018-11-23 12:32:48,396 INFO L273 TraceCheckUtils]: 10: Hoare triple {2235#(<= 1 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2236#(<= 2 main_~i~0)} is VALID [2018-11-23 12:32:48,396 INFO L273 TraceCheckUtils]: 11: Hoare triple {2236#(<= 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; {2236#(<= 2 main_~i~0)} is VALID [2018-11-23 12:32:48,397 INFO L273 TraceCheckUtils]: 12: Hoare triple {2236#(<= 2 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2237#(<= 3 main_~i~0)} is VALID [2018-11-23 12:32:48,397 INFO L273 TraceCheckUtils]: 13: Hoare triple {2237#(<= 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; {2238#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:32:48,398 INFO L273 TraceCheckUtils]: 14: Hoare triple {2238#(<= 4 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2238#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:32:48,398 INFO L273 TraceCheckUtils]: 15: Hoare triple {2238#(<= 4 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {2238#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:32:48,399 INFO L273 TraceCheckUtils]: 16: Hoare triple {2238#(<= 4 ~SIZE~0)} ~i~0 := 0; {2238#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:32:48,408 INFO L273 TraceCheckUtils]: 17: Hoare triple {2238#(<= 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; {2238#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:32:48,409 INFO L273 TraceCheckUtils]: 18: Hoare triple {2238#(<= 4 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {2238#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:32:48,409 INFO L273 TraceCheckUtils]: 19: Hoare triple {2238#(<= 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; {2238#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:32:48,409 INFO L273 TraceCheckUtils]: 20: Hoare triple {2238#(<= 4 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {2238#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:32:48,410 INFO L273 TraceCheckUtils]: 21: Hoare triple {2238#(<= 4 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {2238#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:32:48,410 INFO L273 TraceCheckUtils]: 22: Hoare triple {2238#(<= 4 ~SIZE~0)} ~i~0 := 0; {2238#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:32:48,410 INFO L273 TraceCheckUtils]: 23: Hoare triple {2238#(<= 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; {2238#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:32:48,411 INFO L273 TraceCheckUtils]: 24: Hoare triple {2238#(<= 4 ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {2238#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:32:48,411 INFO L273 TraceCheckUtils]: 25: Hoare triple {2238#(<= 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; {2238#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:32:48,412 INFO L273 TraceCheckUtils]: 26: Hoare triple {2238#(<= 4 ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {2238#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:32:48,412 INFO L273 TraceCheckUtils]: 27: Hoare triple {2238#(<= 4 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {2238#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:32:48,413 INFO L273 TraceCheckUtils]: 28: Hoare triple {2238#(<= 4 ~SIZE~0)} ~i~0 := 0; {2239#(and (<= 4 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:32:48,414 INFO L273 TraceCheckUtils]: 29: Hoare triple {2239#(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; {2239#(and (<= 4 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:32:48,415 INFO L273 TraceCheckUtils]: 30: Hoare triple {2239#(and (<= 4 ~SIZE~0) (= main_~i~0 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {2240#(<= (+ main_~i~0 3) ~SIZE~0)} is VALID [2018-11-23 12:32:48,415 INFO L273 TraceCheckUtils]: 31: Hoare triple {2240#(<= (+ 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; {2240#(<= (+ main_~i~0 3) ~SIZE~0)} is VALID [2018-11-23 12:32:48,416 INFO L273 TraceCheckUtils]: 32: Hoare triple {2240#(<= (+ main_~i~0 3) ~SIZE~0)} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {2241#(<= (+ main_~i~0 2) ~SIZE~0)} is VALID [2018-11-23 12:32:48,417 INFO L273 TraceCheckUtils]: 33: Hoare triple {2241#(<= (+ main_~i~0 2) ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {2233#false} is VALID [2018-11-23 12:32:48,417 INFO L256 TraceCheckUtils]: 34: Hoare triple {2233#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {2233#false} is VALID [2018-11-23 12:32:48,417 INFO L273 TraceCheckUtils]: 35: Hoare triple {2233#false} ~cond := #in~cond; {2233#false} is VALID [2018-11-23 12:32:48,418 INFO L273 TraceCheckUtils]: 36: Hoare triple {2233#false} assume 0 == ~cond; {2233#false} is VALID [2018-11-23 12:32:48,418 INFO L273 TraceCheckUtils]: 37: Hoare triple {2233#false} assume !false; {2233#false} is VALID [2018-11-23 12:32:48,420 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:32:48,420 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:32:48,420 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:32:48,430 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 12:32:48,463 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 12:32:48,463 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:32:48,485 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:48,486 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:32:48,635 INFO L256 TraceCheckUtils]: 0: Hoare triple {2232#true} call ULTIMATE.init(); {2232#true} is VALID [2018-11-23 12:32:48,636 INFO L273 TraceCheckUtils]: 1: Hoare triple {2232#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {2232#true} is VALID [2018-11-23 12:32:48,636 INFO L273 TraceCheckUtils]: 2: Hoare triple {2232#true} assume true; {2232#true} is VALID [2018-11-23 12:32:48,636 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2232#true} {2232#true} #83#return; {2232#true} is VALID [2018-11-23 12:32:48,636 INFO L256 TraceCheckUtils]: 4: Hoare triple {2232#true} call #t~ret10 := main(); {2232#true} is VALID [2018-11-23 12:32:48,637 INFO L273 TraceCheckUtils]: 5: Hoare triple {2232#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {2232#true} is VALID [2018-11-23 12:32:48,637 INFO L273 TraceCheckUtils]: 6: Hoare triple {2232#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; {2263#(<= 0 main_~i~0)} is VALID [2018-11-23 12:32:48,638 INFO L273 TraceCheckUtils]: 7: Hoare triple {2263#(<= 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; {2263#(<= 0 main_~i~0)} is VALID [2018-11-23 12:32:48,638 INFO L273 TraceCheckUtils]: 8: Hoare triple {2263#(<= 0 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2235#(<= 1 main_~i~0)} is VALID [2018-11-23 12:32:48,638 INFO L273 TraceCheckUtils]: 9: Hoare triple {2235#(<= 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; {2235#(<= 1 main_~i~0)} is VALID [2018-11-23 12:32:48,639 INFO L273 TraceCheckUtils]: 10: Hoare triple {2235#(<= 1 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2236#(<= 2 main_~i~0)} is VALID [2018-11-23 12:32:48,639 INFO L273 TraceCheckUtils]: 11: Hoare triple {2236#(<= 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; {2236#(<= 2 main_~i~0)} is VALID [2018-11-23 12:32:48,640 INFO L273 TraceCheckUtils]: 12: Hoare triple {2236#(<= 2 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2237#(<= 3 main_~i~0)} is VALID [2018-11-23 12:32:48,641 INFO L273 TraceCheckUtils]: 13: Hoare triple {2237#(<= 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; {2238#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:32:48,642 INFO L273 TraceCheckUtils]: 14: Hoare triple {2238#(<= 4 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2238#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:32:48,642 INFO L273 TraceCheckUtils]: 15: Hoare triple {2238#(<= 4 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {2238#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:32:48,643 INFO L273 TraceCheckUtils]: 16: Hoare triple {2238#(<= 4 ~SIZE~0)} ~i~0 := 0; {2294#(and (<= main_~i~0 0) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:32:48,644 INFO L273 TraceCheckUtils]: 17: Hoare triple {2294#(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; {2294#(and (<= main_~i~0 0) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:32:48,646 INFO L273 TraceCheckUtils]: 18: Hoare triple {2294#(and (<= main_~i~0 0) (<= 4 ~SIZE~0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {2301#(and (<= main_~i~0 1) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:32:48,646 INFO L273 TraceCheckUtils]: 19: Hoare triple {2301#(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; {2301#(and (<= main_~i~0 1) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:32:48,647 INFO L273 TraceCheckUtils]: 20: Hoare triple {2301#(and (<= main_~i~0 1) (<= 4 ~SIZE~0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {2308#(and (<= main_~i~0 2) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:32:48,647 INFO L273 TraceCheckUtils]: 21: Hoare triple {2308#(and (<= main_~i~0 2) (<= 4 ~SIZE~0))} assume !(~i~0 < ~SIZE~0); {2233#false} is VALID [2018-11-23 12:32:48,648 INFO L273 TraceCheckUtils]: 22: Hoare triple {2233#false} ~i~0 := 0; {2233#false} is VALID [2018-11-23 12:32:48,648 INFO L273 TraceCheckUtils]: 23: Hoare triple {2233#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; {2233#false} is VALID [2018-11-23 12:32:48,648 INFO L273 TraceCheckUtils]: 24: Hoare triple {2233#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {2233#false} is VALID [2018-11-23 12:32:48,648 INFO L273 TraceCheckUtils]: 25: Hoare triple {2233#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; {2233#false} is VALID [2018-11-23 12:32:48,648 INFO L273 TraceCheckUtils]: 26: Hoare triple {2233#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {2233#false} is VALID [2018-11-23 12:32:48,648 INFO L273 TraceCheckUtils]: 27: Hoare triple {2233#false} assume !(~i~0 < ~SIZE~0); {2233#false} is VALID [2018-11-23 12:32:48,649 INFO L273 TraceCheckUtils]: 28: Hoare triple {2233#false} ~i~0 := 0; {2233#false} is VALID [2018-11-23 12:32:48,649 INFO L273 TraceCheckUtils]: 29: Hoare triple {2233#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; {2233#false} is VALID [2018-11-23 12:32:48,649 INFO L273 TraceCheckUtils]: 30: Hoare triple {2233#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {2233#false} is VALID [2018-11-23 12:32:48,649 INFO L273 TraceCheckUtils]: 31: Hoare triple {2233#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; {2233#false} is VALID [2018-11-23 12:32:48,649 INFO L273 TraceCheckUtils]: 32: Hoare triple {2233#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {2233#false} is VALID [2018-11-23 12:32:48,649 INFO L273 TraceCheckUtils]: 33: Hoare triple {2233#false} assume !(~i~0 < ~SIZE~0); {2233#false} is VALID [2018-11-23 12:32:48,649 INFO L256 TraceCheckUtils]: 34: Hoare triple {2233#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {2233#false} is VALID [2018-11-23 12:32:48,650 INFO L273 TraceCheckUtils]: 35: Hoare triple {2233#false} ~cond := #in~cond; {2233#false} is VALID [2018-11-23 12:32:48,650 INFO L273 TraceCheckUtils]: 36: Hoare triple {2233#false} assume 0 == ~cond; {2233#false} is VALID [2018-11-23 12:32:48,650 INFO L273 TraceCheckUtils]: 37: Hoare triple {2233#false} assume !false; {2233#false} is VALID [2018-11-23 12:32:48,652 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:32:48,672 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:32:48,672 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 14 [2018-11-23 12:32:48,672 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 38 [2018-11-23 12:32:48,673 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:32:48,673 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states. [2018-11-23 12:32:48,719 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:32:48,719 INFO L459 AbstractCegarLoop]: Interpolant automaton has 14 states [2018-11-23 12:32:48,719 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2018-11-23 12:32:48,719 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=52, Invalid=130, Unknown=0, NotChecked=0, Total=182 [2018-11-23 12:32:48,720 INFO L87 Difference]: Start difference. First operand 61 states and 67 transitions. Second operand 14 states. [2018-11-23 12:32:50,741 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:50,741 INFO L93 Difference]: Finished difference Result 101 states and 111 transitions. [2018-11-23 12:32:50,741 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2018-11-23 12:32:50,741 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 38 [2018-11-23 12:32:50,742 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:32:50,742 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-23 12:32:50,744 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 102 transitions. [2018-11-23 12:32:50,744 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-23 12:32:50,746 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 102 transitions. [2018-11-23 12:32:50,747 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 102 transitions. [2018-11-23 12:32:50,854 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:32:50,856 INFO L225 Difference]: With dead ends: 101 [2018-11-23 12:32:50,857 INFO L226 Difference]: Without dead ends: 84 [2018-11-23 12:32:50,857 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:32:50,858 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 84 states. [2018-11-23 12:32:51,116 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 84 to 68. [2018-11-23 12:32:51,117 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:32:51,117 INFO L82 GeneralOperation]: Start isEquivalent. First operand 84 states. Second operand 68 states. [2018-11-23 12:32:51,117 INFO L74 IsIncluded]: Start isIncluded. First operand 84 states. Second operand 68 states. [2018-11-23 12:32:51,117 INFO L87 Difference]: Start difference. First operand 84 states. Second operand 68 states. [2018-11-23 12:32:51,120 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:51,120 INFO L93 Difference]: Finished difference Result 84 states and 92 transitions. [2018-11-23 12:32:51,120 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 92 transitions. [2018-11-23 12:32:51,121 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:32:51,121 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:32:51,121 INFO L74 IsIncluded]: Start isIncluded. First operand 68 states. Second operand 84 states. [2018-11-23 12:32:51,121 INFO L87 Difference]: Start difference. First operand 68 states. Second operand 84 states. [2018-11-23 12:32:51,123 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:51,123 INFO L93 Difference]: Finished difference Result 84 states and 92 transitions. [2018-11-23 12:32:51,123 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 92 transitions. [2018-11-23 12:32:51,123 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:32:51,124 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:32:51,124 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:32:51,124 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:32:51,124 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 68 states. [2018-11-23 12:32:51,125 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 75 transitions. [2018-11-23 12:32:51,126 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 75 transitions. Word has length 38 [2018-11-23 12:32:51,126 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:32:51,126 INFO L480 AbstractCegarLoop]: Abstraction has 68 states and 75 transitions. [2018-11-23 12:32:51,126 INFO L481 AbstractCegarLoop]: Interpolant automaton has 14 states. [2018-11-23 12:32:51,126 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 75 transitions. [2018-11-23 12:32:51,127 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2018-11-23 12:32:51,127 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:32:51,127 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:32:51,127 INFO L423 AbstractCegarLoop]: === Iteration 9 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:32:51,127 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:32:51,128 INFO L82 PathProgramCache]: Analyzing trace with hash 143411273, now seen corresponding path program 5 times [2018-11-23 12:32:51,128 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:32:51,128 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:32:51,129 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:51,129 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:32:51,129 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:51,138 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:51,249 INFO L256 TraceCheckUtils]: 0: Hoare triple {2787#true} call ULTIMATE.init(); {2787#true} is VALID [2018-11-23 12:32:51,250 INFO L273 TraceCheckUtils]: 1: Hoare triple {2787#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {2787#true} is VALID [2018-11-23 12:32:51,250 INFO L273 TraceCheckUtils]: 2: Hoare triple {2787#true} assume true; {2787#true} is VALID [2018-11-23 12:32:51,250 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2787#true} {2787#true} #83#return; {2787#true} is VALID [2018-11-23 12:32:51,250 INFO L256 TraceCheckUtils]: 4: Hoare triple {2787#true} call #t~ret10 := main(); {2787#true} is VALID [2018-11-23 12:32:51,251 INFO L273 TraceCheckUtils]: 5: Hoare triple {2787#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {2787#true} is VALID [2018-11-23 12:32:51,251 INFO L273 TraceCheckUtils]: 6: Hoare triple {2787#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; {2789#(= main_~i~0 0)} is VALID [2018-11-23 12:32:51,252 INFO L273 TraceCheckUtils]: 7: Hoare triple {2789#(= 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; {2789#(= main_~i~0 0)} is VALID [2018-11-23 12:32:51,252 INFO L273 TraceCheckUtils]: 8: Hoare triple {2789#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2790#(<= 1 main_~i~0)} is VALID [2018-11-23 12:32:51,253 INFO L273 TraceCheckUtils]: 9: Hoare triple {2790#(<= 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; {2790#(<= 1 main_~i~0)} is VALID [2018-11-23 12:32:51,253 INFO L273 TraceCheckUtils]: 10: Hoare triple {2790#(<= 1 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2791#(<= 2 main_~i~0)} is VALID [2018-11-23 12:32:51,254 INFO L273 TraceCheckUtils]: 11: Hoare triple {2791#(<= 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; {2792#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:32:51,257 INFO L273 TraceCheckUtils]: 12: Hoare triple {2792#(<= 3 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2792#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:32:51,260 INFO L273 TraceCheckUtils]: 13: Hoare triple {2792#(<= 3 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {2792#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:32:51,263 INFO L273 TraceCheckUtils]: 14: Hoare triple {2792#(<= 3 ~SIZE~0)} ~i~0 := 0; {2792#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:32:51,266 INFO L273 TraceCheckUtils]: 15: Hoare triple {2792#(<= 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; {2792#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:32:51,266 INFO L273 TraceCheckUtils]: 16: Hoare triple {2792#(<= 3 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {2792#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:32:51,269 INFO L273 TraceCheckUtils]: 17: Hoare triple {2792#(<= 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; {2792#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:32:51,269 INFO L273 TraceCheckUtils]: 18: Hoare triple {2792#(<= 3 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {2792#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:32:51,272 INFO L273 TraceCheckUtils]: 19: Hoare triple {2792#(<= 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; {2792#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:32:51,272 INFO L273 TraceCheckUtils]: 20: Hoare triple {2792#(<= 3 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {2792#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:32:51,272 INFO L273 TraceCheckUtils]: 21: Hoare triple {2792#(<= 3 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {2792#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:32:51,278 INFO L273 TraceCheckUtils]: 22: Hoare triple {2792#(<= 3 ~SIZE~0)} ~i~0 := 0; {2792#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:32:51,279 INFO L273 TraceCheckUtils]: 23: Hoare triple {2792#(<= 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; {2792#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:32:51,279 INFO L273 TraceCheckUtils]: 24: Hoare triple {2792#(<= 3 ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {2792#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:32:51,282 INFO L273 TraceCheckUtils]: 25: Hoare triple {2792#(<= 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; {2792#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:32:51,282 INFO L273 TraceCheckUtils]: 26: Hoare triple {2792#(<= 3 ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {2792#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:32:51,282 INFO L273 TraceCheckUtils]: 27: Hoare triple {2792#(<= 3 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {2792#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:32:51,283 INFO L273 TraceCheckUtils]: 28: Hoare triple {2792#(<= 3 ~SIZE~0)} ~i~0 := 0; {2793#(and (<= 3 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:32:51,283 INFO L273 TraceCheckUtils]: 29: Hoare triple {2793#(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; {2793#(and (<= 3 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:32:51,284 INFO L273 TraceCheckUtils]: 30: Hoare triple {2793#(and (<= 3 ~SIZE~0) (= main_~i~0 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {2794#(<= (+ main_~i~0 2) ~SIZE~0)} is VALID [2018-11-23 12:32:51,284 INFO L273 TraceCheckUtils]: 31: Hoare triple {2794#(<= (+ 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; {2794#(<= (+ main_~i~0 2) ~SIZE~0)} is VALID [2018-11-23 12:32:51,285 INFO L273 TraceCheckUtils]: 32: Hoare triple {2794#(<= (+ main_~i~0 2) ~SIZE~0)} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {2795#(<= (+ main_~i~0 1) ~SIZE~0)} is VALID [2018-11-23 12:32:51,295 INFO L273 TraceCheckUtils]: 33: Hoare triple {2795#(<= (+ main_~i~0 1) ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {2788#false} is VALID [2018-11-23 12:32:51,296 INFO L256 TraceCheckUtils]: 34: Hoare triple {2788#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {2788#false} is VALID [2018-11-23 12:32:51,296 INFO L273 TraceCheckUtils]: 35: Hoare triple {2788#false} ~cond := #in~cond; {2788#false} is VALID [2018-11-23 12:32:51,296 INFO L273 TraceCheckUtils]: 36: Hoare triple {2788#false} assume 0 == ~cond; {2788#false} is VALID [2018-11-23 12:32:51,296 INFO L273 TraceCheckUtils]: 37: Hoare triple {2788#false} assume !false; {2788#false} is VALID [2018-11-23 12:32:51,297 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:32:51,297 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:32:51,297 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:32:51,306 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 12:32:51,377 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 4 check-sat command(s) [2018-11-23 12:32:51,377 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:32:51,403 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:51,404 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:32:51,641 INFO L256 TraceCheckUtils]: 0: Hoare triple {2787#true} call ULTIMATE.init(); {2787#true} is VALID [2018-11-23 12:32:51,642 INFO L273 TraceCheckUtils]: 1: Hoare triple {2787#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {2787#true} is VALID [2018-11-23 12:32:51,642 INFO L273 TraceCheckUtils]: 2: Hoare triple {2787#true} assume true; {2787#true} is VALID [2018-11-23 12:32:51,642 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2787#true} {2787#true} #83#return; {2787#true} is VALID [2018-11-23 12:32:51,642 INFO L256 TraceCheckUtils]: 4: Hoare triple {2787#true} call #t~ret10 := main(); {2787#true} is VALID [2018-11-23 12:32:51,643 INFO L273 TraceCheckUtils]: 5: Hoare triple {2787#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {2787#true} is VALID [2018-11-23 12:32:51,643 INFO L273 TraceCheckUtils]: 6: Hoare triple {2787#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; {2787#true} is VALID [2018-11-23 12:32:51,643 INFO L273 TraceCheckUtils]: 7: Hoare triple {2787#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; {2787#true} is VALID [2018-11-23 12:32:51,643 INFO L273 TraceCheckUtils]: 8: Hoare triple {2787#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2787#true} is VALID [2018-11-23 12:32:51,644 INFO L273 TraceCheckUtils]: 9: Hoare triple {2787#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; {2787#true} is VALID [2018-11-23 12:32:51,644 INFO L273 TraceCheckUtils]: 10: Hoare triple {2787#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2787#true} is VALID [2018-11-23 12:32:51,644 INFO L273 TraceCheckUtils]: 11: Hoare triple {2787#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; {2787#true} is VALID [2018-11-23 12:32:51,644 INFO L273 TraceCheckUtils]: 12: Hoare triple {2787#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2787#true} is VALID [2018-11-23 12:32:51,644 INFO L273 TraceCheckUtils]: 13: Hoare triple {2787#true} assume !(~i~0 < ~SIZE~0); {2787#true} is VALID [2018-11-23 12:32:51,645 INFO L273 TraceCheckUtils]: 14: Hoare triple {2787#true} ~i~0 := 0; {2841#(<= 0 main_~i~0)} is VALID [2018-11-23 12:32:51,645 INFO L273 TraceCheckUtils]: 15: Hoare triple {2841#(<= 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; {2841#(<= 0 main_~i~0)} is VALID [2018-11-23 12:32:51,645 INFO L273 TraceCheckUtils]: 16: Hoare triple {2841#(<= 0 main_~i~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {2790#(<= 1 main_~i~0)} is VALID [2018-11-23 12:32:51,646 INFO L273 TraceCheckUtils]: 17: Hoare triple {2790#(<= 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; {2790#(<= 1 main_~i~0)} is VALID [2018-11-23 12:32:51,646 INFO L273 TraceCheckUtils]: 18: Hoare triple {2790#(<= 1 main_~i~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {2791#(<= 2 main_~i~0)} is VALID [2018-11-23 12:32:51,647 INFO L273 TraceCheckUtils]: 19: Hoare triple {2791#(<= 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; {2792#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:32:51,647 INFO L273 TraceCheckUtils]: 20: Hoare triple {2792#(<= 3 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {2792#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:32:51,648 INFO L273 TraceCheckUtils]: 21: Hoare triple {2792#(<= 3 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {2792#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:32:51,648 INFO L273 TraceCheckUtils]: 22: Hoare triple {2792#(<= 3 ~SIZE~0)} ~i~0 := 0; {2792#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:32:51,649 INFO L273 TraceCheckUtils]: 23: Hoare triple {2792#(<= 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; {2792#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:32:51,649 INFO L273 TraceCheckUtils]: 24: Hoare triple {2792#(<= 3 ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {2792#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:32:51,650 INFO L273 TraceCheckUtils]: 25: Hoare triple {2792#(<= 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; {2792#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:32:51,650 INFO L273 TraceCheckUtils]: 26: Hoare triple {2792#(<= 3 ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {2792#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:32:51,651 INFO L273 TraceCheckUtils]: 27: Hoare triple {2792#(<= 3 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {2792#(<= 3 ~SIZE~0)} is VALID [2018-11-23 12:32:51,652 INFO L273 TraceCheckUtils]: 28: Hoare triple {2792#(<= 3 ~SIZE~0)} ~i~0 := 0; {2884#(and (<= main_~i~0 0) (<= 3 ~SIZE~0))} is VALID [2018-11-23 12:32:51,652 INFO L273 TraceCheckUtils]: 29: Hoare triple {2884#(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; {2884#(and (<= main_~i~0 0) (<= 3 ~SIZE~0))} is VALID [2018-11-23 12:32:51,653 INFO L273 TraceCheckUtils]: 30: Hoare triple {2884#(and (<= main_~i~0 0) (<= 3 ~SIZE~0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {2891#(and (<= main_~i~0 1) (<= 3 ~SIZE~0))} is VALID [2018-11-23 12:32:51,655 INFO L273 TraceCheckUtils]: 31: Hoare triple {2891#(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; {2891#(and (<= main_~i~0 1) (<= 3 ~SIZE~0))} is VALID [2018-11-23 12:32:51,656 INFO L273 TraceCheckUtils]: 32: Hoare triple {2891#(and (<= main_~i~0 1) (<= 3 ~SIZE~0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {2898#(and (<= main_~i~0 2) (<= 3 ~SIZE~0))} is VALID [2018-11-23 12:32:51,657 INFO L273 TraceCheckUtils]: 33: Hoare triple {2898#(and (<= main_~i~0 2) (<= 3 ~SIZE~0))} assume !(~i~0 < ~SIZE~0); {2788#false} is VALID [2018-11-23 12:32:51,657 INFO L256 TraceCheckUtils]: 34: Hoare triple {2788#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {2788#false} is VALID [2018-11-23 12:32:51,657 INFO L273 TraceCheckUtils]: 35: Hoare triple {2788#false} ~cond := #in~cond; {2788#false} is VALID [2018-11-23 12:32:51,657 INFO L273 TraceCheckUtils]: 36: Hoare triple {2788#false} assume 0 == ~cond; {2788#false} is VALID [2018-11-23 12:32:51,658 INFO L273 TraceCheckUtils]: 37: Hoare triple {2788#false} assume !false; {2788#false} is VALID [2018-11-23 12:32:51,659 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:32:51,679 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:32:51,680 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 13 [2018-11-23 12:32:51,680 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 38 [2018-11-23 12:32:51,680 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:32:51,681 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states. [2018-11-23 12:32:51,732 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:32:51,732 INFO L459 AbstractCegarLoop]: Interpolant automaton has 13 states [2018-11-23 12:32:51,732 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2018-11-23 12:32:51,732 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=47, Invalid=109, Unknown=0, NotChecked=0, Total=156 [2018-11-23 12:32:51,733 INFO L87 Difference]: Start difference. First operand 68 states and 75 transitions. Second operand 13 states. [2018-11-23 12:32:52,477 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:52,477 INFO L93 Difference]: Finished difference Result 81 states and 88 transitions. [2018-11-23 12:32:52,477 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-23 12:32:52,477 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 38 [2018-11-23 12:32:52,477 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:32:52,478 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-23 12:32:52,479 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 59 transitions. [2018-11-23 12:32:52,479 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-23 12:32:52,481 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 59 transitions. [2018-11-23 12:32:52,481 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 59 transitions. [2018-11-23 12:32:52,574 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:32:52,576 INFO L225 Difference]: With dead ends: 81 [2018-11-23 12:32:52,576 INFO L226 Difference]: Without dead ends: 70 [2018-11-23 12:32:52,577 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:32:52,577 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states. [2018-11-23 12:32:53,005 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 43. [2018-11-23 12:32:53,005 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:32:53,005 INFO L82 GeneralOperation]: Start isEquivalent. First operand 70 states. Second operand 43 states. [2018-11-23 12:32:53,006 INFO L74 IsIncluded]: Start isIncluded. First operand 70 states. Second operand 43 states. [2018-11-23 12:32:53,006 INFO L87 Difference]: Start difference. First operand 70 states. Second operand 43 states. [2018-11-23 12:32:53,008 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:53,009 INFO L93 Difference]: Finished difference Result 70 states and 76 transitions. [2018-11-23 12:32:53,009 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 76 transitions. [2018-11-23 12:32:53,009 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:32:53,009 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:32:53,009 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand 70 states. [2018-11-23 12:32:53,011 INFO L87 Difference]: Start difference. First operand 43 states. Second operand 70 states. [2018-11-23 12:32:53,014 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:32:53,014 INFO L93 Difference]: Finished difference Result 70 states and 76 transitions. [2018-11-23 12:32:53,014 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 76 transitions. [2018-11-23 12:32:53,015 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:32:53,015 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:32:53,015 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:32:53,015 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:32:53,015 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 43 states. [2018-11-23 12:32:53,016 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 46 transitions. [2018-11-23 12:32:53,016 INFO L78 Accepts]: Start accepts. Automaton has 43 states and 46 transitions. Word has length 38 [2018-11-23 12:32:53,017 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:32:53,017 INFO L480 AbstractCegarLoop]: Abstraction has 43 states and 46 transitions. [2018-11-23 12:32:53,017 INFO L481 AbstractCegarLoop]: Interpolant automaton has 13 states. [2018-11-23 12:32:53,017 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 46 transitions. [2018-11-23 12:32:53,017 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2018-11-23 12:32:53,017 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:32:53,018 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:32:53,018 INFO L423 AbstractCegarLoop]: === Iteration 10 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:32:53,018 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:32:53,018 INFO L82 PathProgramCache]: Analyzing trace with hash -1485859323, now seen corresponding path program 6 times [2018-11-23 12:32:53,018 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:32:53,018 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:32:53,019 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:53,019 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:32:53,019 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:32:53,071 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:53,924 WARN L180 SmtUtils]: Spent 109.00 ms on a formula simplification. DAG size of input: 51 DAG size of output: 43 [2018-11-23 12:32:54,160 WARN L180 SmtUtils]: Spent 156.00 ms on a formula simplification. DAG size of input: 52 DAG size of output: 44 [2018-11-23 12:32:56,917 INFO L256 TraceCheckUtils]: 0: Hoare triple {3252#true} call ULTIMATE.init(); {3252#true} is VALID [2018-11-23 12:32:56,917 INFO L273 TraceCheckUtils]: 1: Hoare triple {3252#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {3252#true} is VALID [2018-11-23 12:32:56,917 INFO L273 TraceCheckUtils]: 2: Hoare triple {3252#true} assume true; {3252#true} is VALID [2018-11-23 12:32:56,918 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3252#true} {3252#true} #83#return; {3252#true} is VALID [2018-11-23 12:32:56,918 INFO L256 TraceCheckUtils]: 4: Hoare triple {3252#true} call #t~ret10 := main(); {3252#true} is VALID [2018-11-23 12:32:56,918 INFO L273 TraceCheckUtils]: 5: Hoare triple {3252#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {3252#true} is VALID [2018-11-23 12:32:56,919 INFO L273 TraceCheckUtils]: 6: Hoare triple {3252#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; {3254#(and (= main_~sum~0 0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:56,920 INFO L273 TraceCheckUtils]: 7: Hoare triple {3254#(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; {3255#(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:56,921 INFO L273 TraceCheckUtils]: 8: Hoare triple {3255#(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; {3256#(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:56,921 INFO L273 TraceCheckUtils]: 9: Hoare triple {3256#(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; {3257#(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:56,922 INFO L273 TraceCheckUtils]: 10: Hoare triple {3257#(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; {3258#(or (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)) (< (+ main_~i~0 1) ~SIZE~0))} is VALID [2018-11-23 12:32:56,924 INFO L273 TraceCheckUtils]: 11: Hoare triple {3258#(or (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)) (< (+ main_~i~0 1) ~SIZE~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem3;havoc #t~mem3; {3259#(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_~#a~0.offset| 0)) (< (+ main_~i~0 1) ~SIZE~0))} is VALID [2018-11-23 12:32:56,926 INFO L273 TraceCheckUtils]: 12: Hoare triple {3259#(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_~#a~0.offset| 0)) (< (+ main_~i~0 1) ~SIZE~0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3260#(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:32:56,927 INFO L273 TraceCheckUtils]: 13: Hoare triple {3260#(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); {3261#(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:32:56,929 INFO L273 TraceCheckUtils]: 14: Hoare triple {3261#(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; {3262#(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:32:56,930 INFO L273 TraceCheckUtils]: 15: Hoare triple {3262#(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; {3263#(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))))) (* 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))))) (* 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:32:56,932 INFO L273 TraceCheckUtils]: 16: Hoare triple {3263#(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))))) (* 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))))) (* 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))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {3264#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 3)) (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))))) (<= ~SIZE~0 3) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) main_~sum~0) (<= 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:32:56,934 INFO L273 TraceCheckUtils]: 17: Hoare triple {3264#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 3)) (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))))) (<= ~SIZE~0 3) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) main_~sum~0) (<= 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~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {3265#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 3)) (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (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) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= 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:32:56,936 INFO L273 TraceCheckUtils]: 18: Hoare triple {3265#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 3)) (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (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) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= 3 ~SIZE~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; {3266#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (and (<= ~SIZE~0 3) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))))) (<= 3 ~SIZE~0) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))))) main_~sum~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:56,938 INFO L273 TraceCheckUtils]: 19: Hoare triple {3266#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0)) (and (<= ~SIZE~0 3) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))))) (<= 3 ~SIZE~0) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))))) 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; {3267#(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 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= 3 ~SIZE~0) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |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))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:56,940 INFO L273 TraceCheckUtils]: 20: Hoare triple {3267#(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 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))))) (<= 3 ~SIZE~0) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |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))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {3268#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 1) (* 2 ~SIZE~0)) (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))))) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))))) main_~sum~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:56,941 INFO L273 TraceCheckUtils]: 21: Hoare triple {3268#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 1) (* 2 ~SIZE~0)) (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))))) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))))) main_~sum~0))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {3269#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))))) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))))) main_~sum~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:56,942 INFO L273 TraceCheckUtils]: 22: Hoare triple {3269#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))))) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))))) main_~sum~0) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {3270#(and (or (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (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|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |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)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:56,944 INFO L273 TraceCheckUtils]: 23: Hoare triple {3270#(and (or (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (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|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |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)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem7;havoc #t~mem7; {3271#(and (<= ~SIZE~0 3) (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))))))) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:56,945 INFO L273 TraceCheckUtils]: 24: Hoare triple {3271#(and (<= ~SIZE~0 3) (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))))))) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {3272#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 3)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:56,947 INFO L273 TraceCheckUtils]: 25: Hoare triple {3272#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 3)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))))))) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 2 ~SIZE~0))) (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem7;havoc #t~mem7; {3273#(and (<= ~SIZE~0 3) (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 main_~i~0))) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |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))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:56,948 INFO L273 TraceCheckUtils]: 26: Hoare triple {3273#(and (<= ~SIZE~0 3) (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 main_~i~0))) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |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))) (<= 3 ~SIZE~0) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {3274#(and (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (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|) 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|) 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)))))) main_~sum~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:56,950 INFO L273 TraceCheckUtils]: 27: Hoare triple {3274#(and (<= ~SIZE~0 3) (<= 3 ~SIZE~0) (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|) 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|) 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)))))) 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; {3275#(and (<= ~SIZE~0 3) (or (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ main_~i~0 2) ~SIZE~0)) (<= 3 ~SIZE~0) (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |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)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))))) (<= (+ main_~i~0 2) ~SIZE~0)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:32:56,952 INFO L273 TraceCheckUtils]: 28: Hoare triple {3275#(and (<= ~SIZE~0 3) (or (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ main_~i~0 2) ~SIZE~0)) (<= 3 ~SIZE~0) (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |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)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))))) (<= (+ main_~i~0 2) ~SIZE~0)) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {3276#(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:32:56,953 INFO L273 TraceCheckUtils]: 29: Hoare triple {3276#(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); {3261#(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:32:56,955 INFO L273 TraceCheckUtils]: 30: Hoare triple {3261#(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; {3277#(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:32:56,956 INFO L273 TraceCheckUtils]: 31: Hoare triple {3277#(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; {3278#(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:32:56,959 INFO L273 TraceCheckUtils]: 32: Hoare triple {3278#(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; {3279#(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:32:56,960 INFO L273 TraceCheckUtils]: 33: Hoare triple {3279#(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; {3280#(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:32:56,962 INFO L273 TraceCheckUtils]: 34: Hoare triple {3280#(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; {3281#(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:32:56,963 INFO L273 TraceCheckUtils]: 35: Hoare triple {3281#(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; {3282#(or (<= (+ main_~i~0 2) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} is VALID [2018-11-23 12:32:56,964 INFO L273 TraceCheckUtils]: 36: Hoare triple {3282#(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; {3283#(or (<= (+ main_~i~0 1) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} is VALID [2018-11-23 12:32:56,965 INFO L273 TraceCheckUtils]: 37: Hoare triple {3283#(or (<= (+ main_~i~0 1) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} assume !(~i~0 < ~SIZE~0); {3284#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:32:56,966 INFO L256 TraceCheckUtils]: 38: Hoare triple {3284#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {3285#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:32:56,966 INFO L273 TraceCheckUtils]: 39: Hoare triple {3285#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {3286#(= __VERIFIER_assert_~cond 1)} is VALID [2018-11-23 12:32:56,967 INFO L273 TraceCheckUtils]: 40: Hoare triple {3286#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {3253#false} is VALID [2018-11-23 12:32:56,967 INFO L273 TraceCheckUtils]: 41: Hoare triple {3253#false} assume !false; {3253#false} is VALID [2018-11-23 12:32:56,980 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:32:56,980 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:32:56,980 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:32:56,990 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 12:32:57,040 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 4 check-sat command(s) [2018-11-23 12:32:57,040 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:32:57,068 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:32:57,070 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:32:59,910 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:32:59,919 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:32:59,920 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:32:59,921 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:32:59,921 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:32:59,928 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:32:59,930 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:32:59,939 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:32:59,952 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:59,952 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 3 variables, input treesize:67, output treesize:7 [2018-11-23 12:33:00,040 INFO L256 TraceCheckUtils]: 0: Hoare triple {3252#true} call ULTIMATE.init(); {3252#true} is VALID [2018-11-23 12:33:00,040 INFO L273 TraceCheckUtils]: 1: Hoare triple {3252#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {3252#true} is VALID [2018-11-23 12:33:00,040 INFO L273 TraceCheckUtils]: 2: Hoare triple {3252#true} assume true; {3252#true} is VALID [2018-11-23 12:33:00,041 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3252#true} {3252#true} #83#return; {3252#true} is VALID [2018-11-23 12:33:00,041 INFO L256 TraceCheckUtils]: 4: Hoare triple {3252#true} call #t~ret10 := main(); {3252#true} is VALID [2018-11-23 12:33:00,041 INFO L273 TraceCheckUtils]: 5: Hoare triple {3252#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {3252#true} is VALID [2018-11-23 12:33:00,042 INFO L273 TraceCheckUtils]: 6: Hoare triple {3252#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; {3254#(and (= main_~sum~0 0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:00,043 INFO L273 TraceCheckUtils]: 7: Hoare triple {3254#(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; {3255#(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:33:00,044 INFO L273 TraceCheckUtils]: 8: Hoare triple {3255#(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; {3256#(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:33:00,045 INFO L273 TraceCheckUtils]: 9: Hoare triple {3256#(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; {3257#(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:33:00,046 INFO L273 TraceCheckUtils]: 10: Hoare triple {3257#(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; {3320#(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:33:00,048 INFO L273 TraceCheckUtils]: 11: Hoare triple {3320#(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; {3324#(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:33:00,049 INFO L273 TraceCheckUtils]: 12: Hoare triple {3324#(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; {3324#(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:33:00,050 INFO L273 TraceCheckUtils]: 13: Hoare triple {3324#(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); {3324#(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:33:00,052 INFO L273 TraceCheckUtils]: 14: Hoare triple {3324#(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; {3334#(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:33:00,054 INFO L273 TraceCheckUtils]: 15: Hoare triple {3334#(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; {3338#(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|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |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|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:00,056 INFO L273 TraceCheckUtils]: 16: Hoare triple {3338#(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|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |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|)) (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~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {3342#(and (= main_~i~0 1) (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|) |main_~#a~0.offset|) (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|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) main_~sum~0) (<= 2 v_prenex_1) (<= v_prenex_1 2))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:00,058 INFO L273 TraceCheckUtils]: 17: Hoare triple {3342#(and (= main_~i~0 1) (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|) |main_~#a~0.offset|) (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|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) main_~sum~0) (<= 2 v_prenex_1) (<= v_prenex_1 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; {3346#(and (= main_~i~0 1) (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= 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|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_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|) 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|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= v_prenex_1 2))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:00,060 INFO L273 TraceCheckUtils]: 18: Hoare triple {3346#(and (= main_~i~0 1) (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= 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|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_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|) 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|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= v_prenex_1 2))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {3350#(and (= main_~i~0 2) (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (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|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) main_~sum~0) (<= v_prenex_1 2) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (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|) |main_~#a~0.offset|) (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:33:00,062 INFO L273 TraceCheckUtils]: 19: Hoare triple {3350#(and (= main_~i~0 2) (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (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|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) main_~sum~0) (<= v_prenex_1 2) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (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|) |main_~#a~0.offset|) (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);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {3354#(and (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) |main_~#a~0.offset|) (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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) main_~sum~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:00,063 INFO L273 TraceCheckUtils]: 20: Hoare triple {3354#(and (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) |main_~#a~0.offset|) (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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) main_~sum~0))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {3354#(and (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) |main_~#a~0.offset|) (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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) main_~sum~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:00,064 INFO L273 TraceCheckUtils]: 21: Hoare triple {3354#(and (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) |main_~#a~0.offset|) (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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) main_~sum~0))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {3354#(and (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) |main_~#a~0.offset|) (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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) main_~sum~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:00,068 INFO L273 TraceCheckUtils]: 22: Hoare triple {3354#(and (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) |main_~#a~0.offset|) (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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) main_~sum~0))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {3364#(and (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) |main_~#a~0.offset|) (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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 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:33:00,069 INFO L273 TraceCheckUtils]: 23: Hoare triple {3364#(and (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) |main_~#a~0.offset|) (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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 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~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem7;havoc #t~mem7; {3368#(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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|)))))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:00,084 INFO L273 TraceCheckUtils]: 24: Hoare triple {3368#(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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 2 v_prenex_1) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_1) |main_~#a~0.offset|)))))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {3372#(and (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|)))) (<= v_prenex_1 2))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:00,086 INFO L273 TraceCheckUtils]: 25: Hoare triple {3372#(and (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|)))) (<= v_prenex_1 2))) (= 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; {3376#(and (= main_~i~0 1) (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= (+ (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|) 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|) (+ (* 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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:00,087 INFO L273 TraceCheckUtils]: 26: Hoare triple {3376#(and (= main_~i~0 1) (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= (+ (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|) 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|) (+ (* 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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)))) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {3380#(and (= main_~i~0 2) (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) (+ |main_~#a~0.offset| 4)) (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_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:00,089 INFO L273 TraceCheckUtils]: 27: Hoare triple {3380#(and (= main_~i~0 2) (exists ((v_prenex_1 Int)) (and (<= 2 v_prenex_1) (<= v_prenex_1 2) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) (+ |main_~#a~0.offset| 4)) (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_~#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; {3324#(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:33:00,090 INFO L273 TraceCheckUtils]: 28: Hoare triple {3324#(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; {3324#(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:33:00,091 INFO L273 TraceCheckUtils]: 29: Hoare triple {3324#(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); {3324#(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:33:00,093 INFO L273 TraceCheckUtils]: 30: Hoare triple {3324#(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; {3334#(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:33:00,095 INFO L273 TraceCheckUtils]: 31: Hoare triple {3334#(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; {3396#(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:33:00,096 INFO L273 TraceCheckUtils]: 32: Hoare triple {3396#(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; {3400#(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:33:00,098 INFO L273 TraceCheckUtils]: 33: Hoare triple {3400#(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; {3404#(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:33:00,100 INFO L273 TraceCheckUtils]: 34: Hoare triple {3404#(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; {3408#(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:33:00,102 INFO L273 TraceCheckUtils]: 35: Hoare triple {3408#(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; {3284#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:33:00,103 INFO L273 TraceCheckUtils]: 36: Hoare triple {3284#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {3284#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:33:00,103 INFO L273 TraceCheckUtils]: 37: Hoare triple {3284#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} assume !(~i~0 < ~SIZE~0); {3284#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:33:00,104 INFO L256 TraceCheckUtils]: 38: Hoare triple {3284#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {3285#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:33:00,105 INFO L273 TraceCheckUtils]: 39: Hoare triple {3285#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {3286#(= __VERIFIER_assert_~cond 1)} is VALID [2018-11-23 12:33:00,106 INFO L273 TraceCheckUtils]: 40: Hoare triple {3286#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {3253#false} is VALID [2018-11-23 12:33:00,106 INFO L273 TraceCheckUtils]: 41: Hoare triple {3253#false} assume !false; {3253#false} is VALID [2018-11-23 12:33:00,118 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:33:00,138 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:33:00,138 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [35, 26] total 52 [2018-11-23 12:33:00,139 INFO L78 Accepts]: Start accepts. Automaton has 52 states. Word has length 42 [2018-11-23 12:33:00,139 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:33:00,139 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 52 states. [2018-11-23 12:33:00,272 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:33:00,272 INFO L459 AbstractCegarLoop]: Interpolant automaton has 52 states [2018-11-23 12:33:00,273 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 52 interpolants. [2018-11-23 12:33:00,274 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=138, Invalid=2514, Unknown=0, NotChecked=0, Total=2652 [2018-11-23 12:33:00,274 INFO L87 Difference]: Start difference. First operand 43 states and 46 transitions. Second operand 52 states. [2018-11-23 12:33:01,034 WARN L180 SmtUtils]: Spent 111.00 ms on a formula simplification. DAG size of input: 77 DAG size of output: 12 [2018-11-23 12:33:01,646 WARN L180 SmtUtils]: Spent 138.00 ms on a formula simplification. DAG size of input: 54 DAG size of output: 18 [2018-11-23 12:33:03,856 WARN L180 SmtUtils]: Spent 315.00 ms on a formula simplification. DAG size of input: 118 DAG size of output: 85 [2018-11-23 12:33:04,340 WARN L180 SmtUtils]: Spent 106.00 ms on a formula simplification. DAG size of input: 137 DAG size of output: 34 [2018-11-23 12:33:04,923 WARN L180 SmtUtils]: Spent 121.00 ms on a formula simplification. DAG size of input: 146 DAG size of output: 36 [2018-11-23 12:33:05,376 WARN L180 SmtUtils]: Spent 105.00 ms on a formula simplification. DAG size of input: 135 DAG size of output: 33 [2018-11-23 12:33:05,966 WARN L180 SmtUtils]: Spent 148.00 ms on a formula simplification. DAG size of input: 135 DAG size of output: 36 [2018-11-23 12:33:06,496 WARN L180 SmtUtils]: Spent 117.00 ms on a formula simplification. DAG size of input: 135 DAG size of output: 35 [2018-11-23 12:33:07,047 WARN L180 SmtUtils]: Spent 269.00 ms on a formula simplification. DAG size of input: 107 DAG size of output: 75 [2018-11-23 12:33:07,585 WARN L180 SmtUtils]: Spent 165.00 ms on a formula simplification. DAG size of input: 78 DAG size of output: 65 [2018-11-23 12:33:08,236 WARN L180 SmtUtils]: Spent 310.00 ms on a formula simplification. DAG size of input: 118 DAG size of output: 86 [2018-11-23 12:33:08,747 WARN L180 SmtUtils]: Spent 160.00 ms on a formula simplification. DAG size of input: 96 DAG size of output: 60 [2018-11-23 12:33:09,259 WARN L180 SmtUtils]: Spent 129.00 ms on a formula simplification. DAG size of input: 143 DAG size of output: 40 [2018-11-23 12:33:09,984 WARN L180 SmtUtils]: Spent 113.00 ms on a formula simplification. DAG size of input: 144 DAG size of output: 43 [2018-11-23 12:33:10,511 WARN L180 SmtUtils]: Spent 239.00 ms on a formula simplification. DAG size of input: 119 DAG size of output: 71 [2018-11-23 12:33:11,065 WARN L180 SmtUtils]: Spent 154.00 ms on a formula simplification. DAG size of input: 144 DAG size of output: 37 [2018-11-23 12:33:11,520 WARN L180 SmtUtils]: Spent 139.00 ms on a formula simplification. DAG size of input: 147 DAG size of output: 45 [2018-11-23 12:33:12,040 WARN L180 SmtUtils]: Spent 129.00 ms on a formula simplification. DAG size of input: 148 DAG size of output: 38 [2018-11-23 12:33:12,503 WARN L180 SmtUtils]: Spent 154.00 ms on a formula simplification. DAG size of input: 160 DAG size of output: 56 [2018-11-23 12:33:13,333 WARN L180 SmtUtils]: Spent 161.00 ms on a formula simplification. DAG size of input: 143 DAG size of output: 33 [2018-11-23 12:33:13,850 WARN L180 SmtUtils]: Spent 142.00 ms on a formula simplification. DAG size of input: 151 DAG size of output: 44 [2018-11-23 12:33:14,374 WARN L180 SmtUtils]: Spent 249.00 ms on a formula simplification. DAG size of input: 109 DAG size of output: 74 [2018-11-23 12:33:14,912 WARN L180 SmtUtils]: Spent 204.00 ms on a formula simplification. DAG size of input: 155 DAG size of output: 55 [2018-11-23 12:33:15,653 WARN L180 SmtUtils]: Spent 322.00 ms on a formula simplification. DAG size of input: 78 DAG size of output: 65 [2018-11-23 12:33:16,224 WARN L180 SmtUtils]: Spent 210.00 ms on a formula simplification. DAG size of input: 152 DAG size of output: 50 [2018-11-23 12:33:16,850 WARN L180 SmtUtils]: Spent 192.00 ms on a formula simplification. DAG size of input: 113 DAG size of output: 71 [2018-11-23 12:33:17,311 WARN L180 SmtUtils]: Spent 207.00 ms on a formula simplification. DAG size of input: 116 DAG size of output: 67 [2018-11-23 12:33:17,899 WARN L180 SmtUtils]: Spent 145.00 ms on a formula simplification. DAG size of input: 74 DAG size of output: 66 [2018-11-23 12:33:18,302 WARN L180 SmtUtils]: Spent 119.00 ms on a formula simplification. DAG size of input: 84 DAG size of output: 56 [2018-11-23 12:33:18,820 WARN L180 SmtUtils]: Spent 113.00 ms on a formula simplification. DAG size of input: 147 DAG size of output: 33 [2018-11-23 12:33:19,225 WARN L180 SmtUtils]: Spent 100.00 ms on a formula simplification. DAG size of input: 65 DAG size of output: 56 [2018-11-23 12:33:19,727 WARN L180 SmtUtils]: Spent 224.00 ms on a formula simplification. DAG size of input: 117 DAG size of output: 75 [2018-11-23 12:33:20,356 WARN L180 SmtUtils]: Spent 125.00 ms on a formula simplification. DAG size of input: 136 DAG size of output: 34 [2018-11-23 12:33:21,224 WARN L180 SmtUtils]: Spent 244.00 ms on a formula simplification. DAG size of input: 81 DAG size of output: 74 [2018-11-23 12:33:21,752 WARN L180 SmtUtils]: Spent 107.00 ms on a formula simplification. DAG size of input: 136 DAG size of output: 37 [2018-11-23 12:33:22,382 WARN L180 SmtUtils]: Spent 138.00 ms on a formula simplification. DAG size of input: 71 DAG size of output: 64 [2018-11-23 12:33:22,904 WARN L180 SmtUtils]: Spent 112.00 ms on a formula simplification. DAG size of input: 136 DAG size of output: 36 [2018-11-23 12:33:23,347 WARN L180 SmtUtils]: Spent 115.00 ms on a formula simplification. DAG size of input: 65 DAG size of output: 57 [2018-11-23 12:33:23,944 WARN L180 SmtUtils]: Spent 280.00 ms on a formula simplification. DAG size of input: 116 DAG size of output: 75 [2018-11-23 12:33:25,090 WARN L180 SmtUtils]: Spent 331.00 ms on a formula simplification. DAG size of input: 78 DAG size of output: 65 [2018-11-23 12:33:25,977 WARN L180 SmtUtils]: Spent 302.00 ms on a formula simplification. DAG size of input: 123 DAG size of output: 85 [2018-11-23 12:33:26,486 WARN L180 SmtUtils]: Spent 203.00 ms on a formula simplification. DAG size of input: 101 DAG size of output: 63 [2018-11-23 12:33:28,802 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:33:28,802 INFO L93 Difference]: Finished difference Result 120 states and 139 transitions. [2018-11-23 12:33:28,803 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 63 states. [2018-11-23 12:33:28,803 INFO L78 Accepts]: Start accepts. Automaton has 52 states. Word has length 42 [2018-11-23 12:33:28,803 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:33:28,803 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 52 states. [2018-11-23 12:33:28,806 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 63 states to 63 states and 124 transitions. [2018-11-23 12:33:28,806 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 52 states. [2018-11-23 12:33:28,809 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 63 states to 63 states and 124 transitions. [2018-11-23 12:33:28,809 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 63 states and 124 transitions. [2018-11-23 12:33:29,130 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 124 edges. 124 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:33:29,131 INFO L225 Difference]: With dead ends: 120 [2018-11-23 12:33:29,132 INFO L226 Difference]: Without dead ends: 114 [2018-11-23 12:33:29,134 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 131 GetRequests, 19 SyntacticMatches, 8 SemanticMatches, 104 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2394 ImplicationChecksByTransitivity, 20.8s TimeCoverageRelationStatistics Valid=1373, Invalid=9757, Unknown=0, NotChecked=0, Total=11130 [2018-11-23 12:33:29,135 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 114 states. [2018-11-23 12:33:29,734 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 114 to 89. [2018-11-23 12:33:29,734 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:33:29,734 INFO L82 GeneralOperation]: Start isEquivalent. First operand 114 states. Second operand 89 states. [2018-11-23 12:33:29,734 INFO L74 IsIncluded]: Start isIncluded. First operand 114 states. Second operand 89 states. [2018-11-23 12:33:29,734 INFO L87 Difference]: Start difference. First operand 114 states. Second operand 89 states. [2018-11-23 12:33:29,737 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:33:29,738 INFO L93 Difference]: Finished difference Result 114 states and 129 transitions. [2018-11-23 12:33:29,738 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 129 transitions. [2018-11-23 12:33:29,738 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:33:29,738 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:33:29,739 INFO L74 IsIncluded]: Start isIncluded. First operand 89 states. Second operand 114 states. [2018-11-23 12:33:29,739 INFO L87 Difference]: Start difference. First operand 89 states. Second operand 114 states. [2018-11-23 12:33:29,741 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:33:29,741 INFO L93 Difference]: Finished difference Result 114 states and 129 transitions. [2018-11-23 12:33:29,741 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 129 transitions. [2018-11-23 12:33:29,742 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:33:29,742 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:33:29,742 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:33:29,742 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:33:29,742 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 89 states. [2018-11-23 12:33:29,744 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 89 states to 89 states and 101 transitions. [2018-11-23 12:33:29,744 INFO L78 Accepts]: Start accepts. Automaton has 89 states and 101 transitions. Word has length 42 [2018-11-23 12:33:29,745 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:33:29,745 INFO L480 AbstractCegarLoop]: Abstraction has 89 states and 101 transitions. [2018-11-23 12:33:29,745 INFO L481 AbstractCegarLoop]: Interpolant automaton has 52 states. [2018-11-23 12:33:29,745 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 101 transitions. [2018-11-23 12:33:29,745 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2018-11-23 12:33:29,746 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:33:29,746 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:33:29,746 INFO L423 AbstractCegarLoop]: === Iteration 11 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:33:29,746 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:33:29,746 INFO L82 PathProgramCache]: Analyzing trace with hash -1946002877, now seen corresponding path program 7 times [2018-11-23 12:33:29,746 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:33:29,746 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:33:29,747 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:33:29,747 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:33:29,747 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:33:29,755 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:33:29,934 INFO L256 TraceCheckUtils]: 0: Hoare triple {4076#true} call ULTIMATE.init(); {4076#true} is VALID [2018-11-23 12:33:29,934 INFO L273 TraceCheckUtils]: 1: Hoare triple {4076#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {4076#true} is VALID [2018-11-23 12:33:29,934 INFO L273 TraceCheckUtils]: 2: Hoare triple {4076#true} assume true; {4076#true} is VALID [2018-11-23 12:33:29,935 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4076#true} {4076#true} #83#return; {4076#true} is VALID [2018-11-23 12:33:29,935 INFO L256 TraceCheckUtils]: 4: Hoare triple {4076#true} call #t~ret10 := main(); {4076#true} is VALID [2018-11-23 12:33:29,935 INFO L273 TraceCheckUtils]: 5: Hoare triple {4076#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {4076#true} is VALID [2018-11-23 12:33:29,936 INFO L273 TraceCheckUtils]: 6: Hoare triple {4076#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; {4078#(= main_~i~0 0)} is VALID [2018-11-23 12:33:29,936 INFO L273 TraceCheckUtils]: 7: Hoare triple {4078#(= 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; {4078#(= main_~i~0 0)} is VALID [2018-11-23 12:33:29,937 INFO L273 TraceCheckUtils]: 8: Hoare triple {4078#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4079#(<= 1 main_~i~0)} is VALID [2018-11-23 12:33:29,937 INFO L273 TraceCheckUtils]: 9: Hoare triple {4079#(<= 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; {4079#(<= 1 main_~i~0)} is VALID [2018-11-23 12:33:29,938 INFO L273 TraceCheckUtils]: 10: Hoare triple {4079#(<= 1 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4080#(<= 2 main_~i~0)} is VALID [2018-11-23 12:33:29,939 INFO L273 TraceCheckUtils]: 11: Hoare triple {4080#(<= 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; {4080#(<= 2 main_~i~0)} is VALID [2018-11-23 12:33:29,939 INFO L273 TraceCheckUtils]: 12: Hoare triple {4080#(<= 2 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4081#(<= 3 main_~i~0)} is VALID [2018-11-23 12:33:29,940 INFO L273 TraceCheckUtils]: 13: Hoare triple {4081#(<= 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; {4082#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:33:29,941 INFO L273 TraceCheckUtils]: 14: Hoare triple {4082#(<= 4 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4082#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:33:29,941 INFO L273 TraceCheckUtils]: 15: Hoare triple {4082#(<= 4 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {4082#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:33:29,942 INFO L273 TraceCheckUtils]: 16: Hoare triple {4082#(<= 4 ~SIZE~0)} ~i~0 := 0; {4082#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:33:29,942 INFO L273 TraceCheckUtils]: 17: Hoare triple {4082#(<= 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; {4082#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:33:29,943 INFO L273 TraceCheckUtils]: 18: Hoare triple {4082#(<= 4 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {4082#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:33:29,943 INFO L273 TraceCheckUtils]: 19: Hoare triple {4082#(<= 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; {4082#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:33:29,944 INFO L273 TraceCheckUtils]: 20: Hoare triple {4082#(<= 4 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {4082#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:33:29,944 INFO L273 TraceCheckUtils]: 21: Hoare triple {4082#(<= 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; {4082#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:33:29,945 INFO L273 TraceCheckUtils]: 22: Hoare triple {4082#(<= 4 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {4082#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:33:29,945 INFO L273 TraceCheckUtils]: 23: Hoare triple {4082#(<= 4 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {4082#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:33:29,946 INFO L273 TraceCheckUtils]: 24: Hoare triple {4082#(<= 4 ~SIZE~0)} ~i~0 := 0; {4082#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:33:29,946 INFO L273 TraceCheckUtils]: 25: Hoare triple {4082#(<= 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; {4082#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:33:29,947 INFO L273 TraceCheckUtils]: 26: Hoare triple {4082#(<= 4 ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4082#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:33:29,947 INFO L273 TraceCheckUtils]: 27: Hoare triple {4082#(<= 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; {4082#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:33:29,948 INFO L273 TraceCheckUtils]: 28: Hoare triple {4082#(<= 4 ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4082#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:33:29,948 INFO L273 TraceCheckUtils]: 29: Hoare triple {4082#(<= 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; {4082#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:33:29,949 INFO L273 TraceCheckUtils]: 30: Hoare triple {4082#(<= 4 ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4082#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:33:29,949 INFO L273 TraceCheckUtils]: 31: Hoare triple {4082#(<= 4 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {4082#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:33:29,950 INFO L273 TraceCheckUtils]: 32: Hoare triple {4082#(<= 4 ~SIZE~0)} ~i~0 := 0; {4083#(and (<= 4 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:33:29,951 INFO L273 TraceCheckUtils]: 33: Hoare triple {4083#(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; {4083#(and (<= 4 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:33:29,951 INFO L273 TraceCheckUtils]: 34: Hoare triple {4083#(and (<= 4 ~SIZE~0) (= main_~i~0 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4084#(<= (+ main_~i~0 3) ~SIZE~0)} is VALID [2018-11-23 12:33:29,952 INFO L273 TraceCheckUtils]: 35: Hoare triple {4084#(<= (+ 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; {4084#(<= (+ main_~i~0 3) ~SIZE~0)} is VALID [2018-11-23 12:33:29,953 INFO L273 TraceCheckUtils]: 36: Hoare triple {4084#(<= (+ main_~i~0 3) ~SIZE~0)} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4085#(<= (+ main_~i~0 2) ~SIZE~0)} is VALID [2018-11-23 12:33:29,953 INFO L273 TraceCheckUtils]: 37: Hoare triple {4085#(<= (+ 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; {4085#(<= (+ main_~i~0 2) ~SIZE~0)} is VALID [2018-11-23 12:33:29,954 INFO L273 TraceCheckUtils]: 38: Hoare triple {4085#(<= (+ main_~i~0 2) ~SIZE~0)} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4086#(<= (+ main_~i~0 1) ~SIZE~0)} is VALID [2018-11-23 12:33:29,955 INFO L273 TraceCheckUtils]: 39: Hoare triple {4086#(<= (+ main_~i~0 1) ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {4077#false} is VALID [2018-11-23 12:33:29,955 INFO L256 TraceCheckUtils]: 40: Hoare triple {4077#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {4077#false} is VALID [2018-11-23 12:33:29,955 INFO L273 TraceCheckUtils]: 41: Hoare triple {4077#false} ~cond := #in~cond; {4077#false} is VALID [2018-11-23 12:33:29,955 INFO L273 TraceCheckUtils]: 42: Hoare triple {4077#false} assume 0 == ~cond; {4077#false} is VALID [2018-11-23 12:33:29,956 INFO L273 TraceCheckUtils]: 43: Hoare triple {4077#false} assume !false; {4077#false} is VALID [2018-11-23 12:33:29,958 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:33:29,958 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:33:29,959 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:33:29,968 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:33:29,988 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:33:30,000 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:33:30,002 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:33:30,164 INFO L256 TraceCheckUtils]: 0: Hoare triple {4076#true} call ULTIMATE.init(); {4076#true} is VALID [2018-11-23 12:33:30,164 INFO L273 TraceCheckUtils]: 1: Hoare triple {4076#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {4076#true} is VALID [2018-11-23 12:33:30,164 INFO L273 TraceCheckUtils]: 2: Hoare triple {4076#true} assume true; {4076#true} is VALID [2018-11-23 12:33:30,164 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4076#true} {4076#true} #83#return; {4076#true} is VALID [2018-11-23 12:33:30,165 INFO L256 TraceCheckUtils]: 4: Hoare triple {4076#true} call #t~ret10 := main(); {4076#true} is VALID [2018-11-23 12:33:30,165 INFO L273 TraceCheckUtils]: 5: Hoare triple {4076#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {4076#true} is VALID [2018-11-23 12:33:30,166 INFO L273 TraceCheckUtils]: 6: Hoare triple {4076#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; {4108#(<= 0 main_~i~0)} is VALID [2018-11-23 12:33:30,166 INFO L273 TraceCheckUtils]: 7: Hoare triple {4108#(<= 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; {4108#(<= 0 main_~i~0)} is VALID [2018-11-23 12:33:30,167 INFO L273 TraceCheckUtils]: 8: Hoare triple {4108#(<= 0 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4079#(<= 1 main_~i~0)} is VALID [2018-11-23 12:33:30,167 INFO L273 TraceCheckUtils]: 9: Hoare triple {4079#(<= 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; {4079#(<= 1 main_~i~0)} is VALID [2018-11-23 12:33:30,168 INFO L273 TraceCheckUtils]: 10: Hoare triple {4079#(<= 1 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4080#(<= 2 main_~i~0)} is VALID [2018-11-23 12:33:30,168 INFO L273 TraceCheckUtils]: 11: Hoare triple {4080#(<= 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; {4080#(<= 2 main_~i~0)} is VALID [2018-11-23 12:33:30,169 INFO L273 TraceCheckUtils]: 12: Hoare triple {4080#(<= 2 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4081#(<= 3 main_~i~0)} is VALID [2018-11-23 12:33:30,169 INFO L273 TraceCheckUtils]: 13: Hoare triple {4081#(<= 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; {4082#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:33:30,170 INFO L273 TraceCheckUtils]: 14: Hoare triple {4082#(<= 4 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4082#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:33:30,170 INFO L273 TraceCheckUtils]: 15: Hoare triple {4082#(<= 4 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {4082#(<= 4 ~SIZE~0)} is VALID [2018-11-23 12:33:30,171 INFO L273 TraceCheckUtils]: 16: Hoare triple {4082#(<= 4 ~SIZE~0)} ~i~0 := 0; {4139#(and (<= main_~i~0 0) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:33:30,172 INFO L273 TraceCheckUtils]: 17: Hoare triple {4139#(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; {4139#(and (<= main_~i~0 0) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:33:30,173 INFO L273 TraceCheckUtils]: 18: Hoare triple {4139#(and (<= main_~i~0 0) (<= 4 ~SIZE~0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {4146#(and (<= main_~i~0 1) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:33:30,173 INFO L273 TraceCheckUtils]: 19: Hoare triple {4146#(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; {4146#(and (<= main_~i~0 1) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:33:30,174 INFO L273 TraceCheckUtils]: 20: Hoare triple {4146#(and (<= main_~i~0 1) (<= 4 ~SIZE~0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {4153#(and (<= main_~i~0 2) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:33:30,175 INFO L273 TraceCheckUtils]: 21: Hoare triple {4153#(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; {4153#(and (<= main_~i~0 2) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:33:30,176 INFO L273 TraceCheckUtils]: 22: Hoare triple {4153#(and (<= main_~i~0 2) (<= 4 ~SIZE~0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {4160#(and (<= main_~i~0 3) (<= 4 ~SIZE~0))} is VALID [2018-11-23 12:33:30,176 INFO L273 TraceCheckUtils]: 23: Hoare triple {4160#(and (<= main_~i~0 3) (<= 4 ~SIZE~0))} assume !(~i~0 < ~SIZE~0); {4077#false} is VALID [2018-11-23 12:33:30,177 INFO L273 TraceCheckUtils]: 24: Hoare triple {4077#false} ~i~0 := 0; {4077#false} is VALID [2018-11-23 12:33:30,177 INFO L273 TraceCheckUtils]: 25: Hoare triple {4077#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; {4077#false} is VALID [2018-11-23 12:33:30,177 INFO L273 TraceCheckUtils]: 26: Hoare triple {4077#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4077#false} is VALID [2018-11-23 12:33:30,177 INFO L273 TraceCheckUtils]: 27: Hoare triple {4077#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; {4077#false} is VALID [2018-11-23 12:33:30,178 INFO L273 TraceCheckUtils]: 28: Hoare triple {4077#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4077#false} is VALID [2018-11-23 12:33:30,178 INFO L273 TraceCheckUtils]: 29: Hoare triple {4077#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; {4077#false} is VALID [2018-11-23 12:33:30,178 INFO L273 TraceCheckUtils]: 30: Hoare triple {4077#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4077#false} is VALID [2018-11-23 12:33:30,178 INFO L273 TraceCheckUtils]: 31: Hoare triple {4077#false} assume !(~i~0 < ~SIZE~0); {4077#false} is VALID [2018-11-23 12:33:30,178 INFO L273 TraceCheckUtils]: 32: Hoare triple {4077#false} ~i~0 := 0; {4077#false} is VALID [2018-11-23 12:33:30,178 INFO L273 TraceCheckUtils]: 33: Hoare triple {4077#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; {4077#false} is VALID [2018-11-23 12:33:30,179 INFO L273 TraceCheckUtils]: 34: Hoare triple {4077#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4077#false} is VALID [2018-11-23 12:33:30,179 INFO L273 TraceCheckUtils]: 35: Hoare triple {4077#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; {4077#false} is VALID [2018-11-23 12:33:30,179 INFO L273 TraceCheckUtils]: 36: Hoare triple {4077#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4077#false} is VALID [2018-11-23 12:33:30,179 INFO L273 TraceCheckUtils]: 37: Hoare triple {4077#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; {4077#false} is VALID [2018-11-23 12:33:30,179 INFO L273 TraceCheckUtils]: 38: Hoare triple {4077#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4077#false} is VALID [2018-11-23 12:33:30,180 INFO L273 TraceCheckUtils]: 39: Hoare triple {4077#false} assume !(~i~0 < ~SIZE~0); {4077#false} is VALID [2018-11-23 12:33:30,180 INFO L256 TraceCheckUtils]: 40: Hoare triple {4077#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {4077#false} is VALID [2018-11-23 12:33:30,180 INFO L273 TraceCheckUtils]: 41: Hoare triple {4077#false} ~cond := #in~cond; {4077#false} is VALID [2018-11-23 12:33:30,180 INFO L273 TraceCheckUtils]: 42: Hoare triple {4077#false} assume 0 == ~cond; {4077#false} is VALID [2018-11-23 12:33:30,180 INFO L273 TraceCheckUtils]: 43: Hoare triple {4077#false} assume !false; {4077#false} is VALID [2018-11-23 12:33:30,182 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:33:30,201 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:33:30,202 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 16 [2018-11-23 12:33:30,202 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 44 [2018-11-23 12:33:30,202 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:33:30,203 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states. [2018-11-23 12:33:30,369 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:33:30,369 INFO L459 AbstractCegarLoop]: Interpolant automaton has 16 states [2018-11-23 12:33:30,370 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2018-11-23 12:33:30,370 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=68, Invalid=172, Unknown=0, NotChecked=0, Total=240 [2018-11-23 12:33:30,370 INFO L87 Difference]: Start difference. First operand 89 states and 101 transitions. Second operand 16 states. [2018-11-23 12:33:33,058 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:33:33,058 INFO L93 Difference]: Finished difference Result 150 states and 167 transitions. [2018-11-23 12:33:33,058 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2018-11-23 12:33:33,058 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 44 [2018-11-23 12:33:33,059 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:33:33,059 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-23 12:33:33,061 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 99 transitions. [2018-11-23 12:33:33,061 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-23 12:33:33,062 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 99 transitions. [2018-11-23 12:33:33,062 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 99 transitions. [2018-11-23 12:33:33,246 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:33:33,249 INFO L225 Difference]: With dead ends: 150 [2018-11-23 12:33:33,249 INFO L226 Difference]: Without dead ends: 119 [2018-11-23 12:33:33,250 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 63 GetRequests, 40 SyntacticMatches, 0 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 125 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=149, Invalid=451, Unknown=0, NotChecked=0, Total=600 [2018-11-23 12:33:33,250 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 119 states. [2018-11-23 12:33:33,843 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 119 to 101. [2018-11-23 12:33:33,843 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:33:33,843 INFO L82 GeneralOperation]: Start isEquivalent. First operand 119 states. Second operand 101 states. [2018-11-23 12:33:33,843 INFO L74 IsIncluded]: Start isIncluded. First operand 119 states. Second operand 101 states. [2018-11-23 12:33:33,844 INFO L87 Difference]: Start difference. First operand 119 states. Second operand 101 states. [2018-11-23 12:33:33,846 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:33:33,847 INFO L93 Difference]: Finished difference Result 119 states and 130 transitions. [2018-11-23 12:33:33,847 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 130 transitions. [2018-11-23 12:33:33,847 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:33:33,847 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:33:33,848 INFO L74 IsIncluded]: Start isIncluded. First operand 101 states. Second operand 119 states. [2018-11-23 12:33:33,848 INFO L87 Difference]: Start difference. First operand 101 states. Second operand 119 states. [2018-11-23 12:33:33,850 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:33:33,850 INFO L93 Difference]: Finished difference Result 119 states and 130 transitions. [2018-11-23 12:33:33,850 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 130 transitions. [2018-11-23 12:33:33,851 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:33:33,851 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:33:33,851 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:33:33,851 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:33:33,851 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 101 states. [2018-11-23 12:33:33,853 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 101 states to 101 states and 112 transitions. [2018-11-23 12:33:33,853 INFO L78 Accepts]: Start accepts. Automaton has 101 states and 112 transitions. Word has length 44 [2018-11-23 12:33:33,854 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:33:33,854 INFO L480 AbstractCegarLoop]: Abstraction has 101 states and 112 transitions. [2018-11-23 12:33:33,854 INFO L481 AbstractCegarLoop]: Interpolant automaton has 16 states. [2018-11-23 12:33:33,854 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 112 transitions. [2018-11-23 12:33:33,855 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2018-11-23 12:33:33,855 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:33:33,855 INFO L402 BasicCegarLoop]: trace histogram [6, 6, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:33:33,855 INFO L423 AbstractCegarLoop]: === Iteration 12 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:33:33,855 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:33:33,855 INFO L82 PathProgramCache]: Analyzing trace with hash -580912641, now seen corresponding path program 8 times [2018-11-23 12:33:33,856 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:33:33,856 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:33:33,856 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:33:33,856 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:33:33,857 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:33:33,866 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:33:34,382 INFO L256 TraceCheckUtils]: 0: Hoare triple {4852#true} call ULTIMATE.init(); {4852#true} is VALID [2018-11-23 12:33:34,383 INFO L273 TraceCheckUtils]: 1: Hoare triple {4852#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {4852#true} is VALID [2018-11-23 12:33:34,383 INFO L273 TraceCheckUtils]: 2: Hoare triple {4852#true} assume true; {4852#true} is VALID [2018-11-23 12:33:34,383 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4852#true} {4852#true} #83#return; {4852#true} is VALID [2018-11-23 12:33:34,383 INFO L256 TraceCheckUtils]: 4: Hoare triple {4852#true} call #t~ret10 := main(); {4852#true} is VALID [2018-11-23 12:33:34,384 INFO L273 TraceCheckUtils]: 5: Hoare triple {4852#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {4852#true} is VALID [2018-11-23 12:33:34,384 INFO L273 TraceCheckUtils]: 6: Hoare triple {4852#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; {4854#(= main_~i~0 0)} is VALID [2018-11-23 12:33:34,385 INFO L273 TraceCheckUtils]: 7: Hoare triple {4854#(= 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; {4854#(= main_~i~0 0)} is VALID [2018-11-23 12:33:34,385 INFO L273 TraceCheckUtils]: 8: Hoare triple {4854#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4855#(<= main_~i~0 1)} is VALID [2018-11-23 12:33:34,386 INFO L273 TraceCheckUtils]: 9: Hoare triple {4855#(<= 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; {4855#(<= main_~i~0 1)} is VALID [2018-11-23 12:33:34,386 INFO L273 TraceCheckUtils]: 10: Hoare triple {4855#(<= main_~i~0 1)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4856#(<= main_~i~0 2)} is VALID [2018-11-23 12:33:34,386 INFO L273 TraceCheckUtils]: 11: Hoare triple {4856#(<= 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; {4856#(<= main_~i~0 2)} is VALID [2018-11-23 12:33:34,387 INFO L273 TraceCheckUtils]: 12: Hoare triple {4856#(<= main_~i~0 2)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4857#(<= main_~i~0 3)} is VALID [2018-11-23 12:33:34,387 INFO L273 TraceCheckUtils]: 13: Hoare triple {4857#(<= main_~i~0 3)} assume !(~i~0 < ~SIZE~0); {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,388 INFO L273 TraceCheckUtils]: 14: Hoare triple {4858#(<= ~SIZE~0 3)} ~i~0 := 0; {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,388 INFO L273 TraceCheckUtils]: 15: Hoare triple {4858#(<= ~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; {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,389 INFO L273 TraceCheckUtils]: 16: Hoare triple {4858#(<= ~SIZE~0 3)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,389 INFO L273 TraceCheckUtils]: 17: Hoare triple {4858#(<= ~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; {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,390 INFO L273 TraceCheckUtils]: 18: Hoare triple {4858#(<= ~SIZE~0 3)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,390 INFO L273 TraceCheckUtils]: 19: Hoare triple {4858#(<= ~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; {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,391 INFO L273 TraceCheckUtils]: 20: Hoare triple {4858#(<= ~SIZE~0 3)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,391 INFO L273 TraceCheckUtils]: 21: Hoare triple {4858#(<= ~SIZE~0 3)} assume !(~i~0 < ~SIZE~0); {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,392 INFO L273 TraceCheckUtils]: 22: Hoare triple {4858#(<= ~SIZE~0 3)} ~i~0 := 0; {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,392 INFO L273 TraceCheckUtils]: 23: Hoare triple {4858#(<= ~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; {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,393 INFO L273 TraceCheckUtils]: 24: Hoare triple {4858#(<= ~SIZE~0 3)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,393 INFO L273 TraceCheckUtils]: 25: Hoare triple {4858#(<= ~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; {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,394 INFO L273 TraceCheckUtils]: 26: Hoare triple {4858#(<= ~SIZE~0 3)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,394 INFO L273 TraceCheckUtils]: 27: Hoare triple {4858#(<= ~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; {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,395 INFO L273 TraceCheckUtils]: 28: Hoare triple {4858#(<= ~SIZE~0 3)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,395 INFO L273 TraceCheckUtils]: 29: Hoare triple {4858#(<= ~SIZE~0 3)} assume !(~i~0 < ~SIZE~0); {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,396 INFO L273 TraceCheckUtils]: 30: Hoare triple {4858#(<= ~SIZE~0 3)} ~i~0 := 0; {4859#(and (<= ~SIZE~0 3) (= main_~i~0 0))} is VALID [2018-11-23 12:33:34,397 INFO L273 TraceCheckUtils]: 31: Hoare triple {4859#(and (<= ~SIZE~0 3) (= 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; {4859#(and (<= ~SIZE~0 3) (= main_~i~0 0))} is VALID [2018-11-23 12:33:34,398 INFO L273 TraceCheckUtils]: 32: Hoare triple {4859#(and (<= ~SIZE~0 3) (= main_~i~0 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4860#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:33:34,398 INFO L273 TraceCheckUtils]: 33: Hoare triple {4860#(<= ~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; {4860#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:33:34,399 INFO L273 TraceCheckUtils]: 34: Hoare triple {4860#(<= ~SIZE~0 (+ main_~i~0 2))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4861#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:33:34,399 INFO L273 TraceCheckUtils]: 35: Hoare triple {4861#(<= ~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; {4861#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:33:34,400 INFO L273 TraceCheckUtils]: 36: Hoare triple {4861#(<= ~SIZE~0 (+ main_~i~0 1))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4862#(<= ~SIZE~0 main_~i~0)} is VALID [2018-11-23 12:33:34,401 INFO L273 TraceCheckUtils]: 37: Hoare triple {4862#(<= ~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; {4862#(<= ~SIZE~0 main_~i~0)} is VALID [2018-11-23 12:33:34,401 INFO L273 TraceCheckUtils]: 38: Hoare triple {4862#(<= ~SIZE~0 main_~i~0)} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4863#(<= (+ ~SIZE~0 1) main_~i~0)} is VALID [2018-11-23 12:33:34,402 INFO L273 TraceCheckUtils]: 39: Hoare triple {4863#(<= (+ ~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; {4853#false} is VALID [2018-11-23 12:33:34,403 INFO L273 TraceCheckUtils]: 40: Hoare triple {4853#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4853#false} is VALID [2018-11-23 12:33:34,403 INFO L273 TraceCheckUtils]: 41: Hoare triple {4853#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; {4853#false} is VALID [2018-11-23 12:33:34,403 INFO L273 TraceCheckUtils]: 42: Hoare triple {4853#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4853#false} is VALID [2018-11-23 12:33:34,403 INFO L273 TraceCheckUtils]: 43: Hoare triple {4853#false} assume !(~i~0 < ~SIZE~0); {4853#false} is VALID [2018-11-23 12:33:34,403 INFO L256 TraceCheckUtils]: 44: Hoare triple {4853#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {4853#false} is VALID [2018-11-23 12:33:34,404 INFO L273 TraceCheckUtils]: 45: Hoare triple {4853#false} ~cond := #in~cond; {4853#false} is VALID [2018-11-23 12:33:34,404 INFO L273 TraceCheckUtils]: 46: Hoare triple {4853#false} assume 0 == ~cond; {4853#false} is VALID [2018-11-23 12:33:34,404 INFO L273 TraceCheckUtils]: 47: Hoare triple {4853#false} assume !false; {4853#false} is VALID [2018-11-23 12:33:34,407 INFO L134 CoverageAnalysis]: Checked inductivity of 63 backedges. 27 proven. 16 refuted. 0 times theorem prover too weak. 20 trivial. 0 not checked. [2018-11-23 12:33:34,407 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:33:34,407 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:33:34,423 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:33:34,445 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:33:34,446 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:33:34,484 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:33:34,485 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:33:34,649 INFO L256 TraceCheckUtils]: 0: Hoare triple {4852#true} call ULTIMATE.init(); {4852#true} is VALID [2018-11-23 12:33:34,649 INFO L273 TraceCheckUtils]: 1: Hoare triple {4852#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {4852#true} is VALID [2018-11-23 12:33:34,650 INFO L273 TraceCheckUtils]: 2: Hoare triple {4852#true} assume true; {4852#true} is VALID [2018-11-23 12:33:34,650 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4852#true} {4852#true} #83#return; {4852#true} is VALID [2018-11-23 12:33:34,650 INFO L256 TraceCheckUtils]: 4: Hoare triple {4852#true} call #t~ret10 := main(); {4852#true} is VALID [2018-11-23 12:33:34,650 INFO L273 TraceCheckUtils]: 5: Hoare triple {4852#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {4852#true} is VALID [2018-11-23 12:33:34,651 INFO L273 TraceCheckUtils]: 6: Hoare triple {4852#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; {4885#(<= main_~i~0 0)} is VALID [2018-11-23 12:33:34,651 INFO L273 TraceCheckUtils]: 7: Hoare triple {4885#(<= 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; {4885#(<= main_~i~0 0)} is VALID [2018-11-23 12:33:34,652 INFO L273 TraceCheckUtils]: 8: Hoare triple {4885#(<= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4855#(<= main_~i~0 1)} is VALID [2018-11-23 12:33:34,652 INFO L273 TraceCheckUtils]: 9: Hoare triple {4855#(<= 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; {4855#(<= main_~i~0 1)} is VALID [2018-11-23 12:33:34,652 INFO L273 TraceCheckUtils]: 10: Hoare triple {4855#(<= main_~i~0 1)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4856#(<= main_~i~0 2)} is VALID [2018-11-23 12:33:34,653 INFO L273 TraceCheckUtils]: 11: Hoare triple {4856#(<= 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; {4856#(<= main_~i~0 2)} is VALID [2018-11-23 12:33:34,654 INFO L273 TraceCheckUtils]: 12: Hoare triple {4856#(<= main_~i~0 2)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4857#(<= main_~i~0 3)} is VALID [2018-11-23 12:33:34,654 INFO L273 TraceCheckUtils]: 13: Hoare triple {4857#(<= main_~i~0 3)} assume !(~i~0 < ~SIZE~0); {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,655 INFO L273 TraceCheckUtils]: 14: Hoare triple {4858#(<= ~SIZE~0 3)} ~i~0 := 0; {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,655 INFO L273 TraceCheckUtils]: 15: Hoare triple {4858#(<= ~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; {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,656 INFO L273 TraceCheckUtils]: 16: Hoare triple {4858#(<= ~SIZE~0 3)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,656 INFO L273 TraceCheckUtils]: 17: Hoare triple {4858#(<= ~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; {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,657 INFO L273 TraceCheckUtils]: 18: Hoare triple {4858#(<= ~SIZE~0 3)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,657 INFO L273 TraceCheckUtils]: 19: Hoare triple {4858#(<= ~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; {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,658 INFO L273 TraceCheckUtils]: 20: Hoare triple {4858#(<= ~SIZE~0 3)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,658 INFO L273 TraceCheckUtils]: 21: Hoare triple {4858#(<= ~SIZE~0 3)} assume !(~i~0 < ~SIZE~0); {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,659 INFO L273 TraceCheckUtils]: 22: Hoare triple {4858#(<= ~SIZE~0 3)} ~i~0 := 0; {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,659 INFO L273 TraceCheckUtils]: 23: Hoare triple {4858#(<= ~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; {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,660 INFO L273 TraceCheckUtils]: 24: Hoare triple {4858#(<= ~SIZE~0 3)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,660 INFO L273 TraceCheckUtils]: 25: Hoare triple {4858#(<= ~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; {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,661 INFO L273 TraceCheckUtils]: 26: Hoare triple {4858#(<= ~SIZE~0 3)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,661 INFO L273 TraceCheckUtils]: 27: Hoare triple {4858#(<= ~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; {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,662 INFO L273 TraceCheckUtils]: 28: Hoare triple {4858#(<= ~SIZE~0 3)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,662 INFO L273 TraceCheckUtils]: 29: Hoare triple {4858#(<= ~SIZE~0 3)} assume !(~i~0 < ~SIZE~0); {4858#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:33:34,663 INFO L273 TraceCheckUtils]: 30: Hoare triple {4858#(<= ~SIZE~0 3)} ~i~0 := 0; {4958#(and (<= 0 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:33:34,664 INFO L273 TraceCheckUtils]: 31: Hoare triple {4958#(and (<= 0 main_~i~0) (<= ~SIZE~0 3))} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem9;havoc #t~mem9; {4958#(and (<= 0 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:33:34,664 INFO L273 TraceCheckUtils]: 32: Hoare triple {4958#(and (<= 0 main_~i~0) (<= ~SIZE~0 3))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4965#(and (<= 1 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:33:34,665 INFO L273 TraceCheckUtils]: 33: Hoare triple {4965#(and (<= 1 main_~i~0) (<= ~SIZE~0 3))} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem9;havoc #t~mem9; {4965#(and (<= 1 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:33:34,666 INFO L273 TraceCheckUtils]: 34: Hoare triple {4965#(and (<= 1 main_~i~0) (<= ~SIZE~0 3))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4972#(and (<= 2 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:33:34,667 INFO L273 TraceCheckUtils]: 35: Hoare triple {4972#(and (<= 2 main_~i~0) (<= ~SIZE~0 3))} assume !!(~i~0 < ~SIZE~0);call #t~mem9 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem9;havoc #t~mem9; {4972#(and (<= 2 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:33:34,667 INFO L273 TraceCheckUtils]: 36: Hoare triple {4972#(and (<= 2 main_~i~0) (<= ~SIZE~0 3))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4979#(and (<= ~SIZE~0 3) (<= 3 main_~i~0))} is VALID [2018-11-23 12:33:34,668 INFO L273 TraceCheckUtils]: 37: Hoare triple {4979#(and (<= ~SIZE~0 3) (<= 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; {4853#false} is VALID [2018-11-23 12:33:34,669 INFO L273 TraceCheckUtils]: 38: Hoare triple {4853#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4853#false} is VALID [2018-11-23 12:33:34,669 INFO L273 TraceCheckUtils]: 39: Hoare triple {4853#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; {4853#false} is VALID [2018-11-23 12:33:34,669 INFO L273 TraceCheckUtils]: 40: Hoare triple {4853#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4853#false} is VALID [2018-11-23 12:33:34,669 INFO L273 TraceCheckUtils]: 41: Hoare triple {4853#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; {4853#false} is VALID [2018-11-23 12:33:34,669 INFO L273 TraceCheckUtils]: 42: Hoare triple {4853#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {4853#false} is VALID [2018-11-23 12:33:34,670 INFO L273 TraceCheckUtils]: 43: Hoare triple {4853#false} assume !(~i~0 < ~SIZE~0); {4853#false} is VALID [2018-11-23 12:33:34,670 INFO L256 TraceCheckUtils]: 44: Hoare triple {4853#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {4853#false} is VALID [2018-11-23 12:33:34,670 INFO L273 TraceCheckUtils]: 45: Hoare triple {4853#false} ~cond := #in~cond; {4853#false} is VALID [2018-11-23 12:33:34,670 INFO L273 TraceCheckUtils]: 46: Hoare triple {4853#false} assume 0 == ~cond; {4853#false} is VALID [2018-11-23 12:33:34,670 INFO L273 TraceCheckUtils]: 47: Hoare triple {4853#false} assume !false; {4853#false} is VALID [2018-11-23 12:33:34,672 INFO L134 CoverageAnalysis]: Checked inductivity of 63 backedges. 30 proven. 9 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2018-11-23 12:33:34,692 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:33:34,692 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 11] total 17 [2018-11-23 12:33:34,692 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 48 [2018-11-23 12:33:34,693 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:33:34,693 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states. [2018-11-23 12:33:34,738 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:33:34,738 INFO L459 AbstractCegarLoop]: Interpolant automaton has 17 states [2018-11-23 12:33:34,739 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2018-11-23 12:33:34,739 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=70, Invalid=202, Unknown=0, NotChecked=0, Total=272 [2018-11-23 12:33:34,739 INFO L87 Difference]: Start difference. First operand 101 states and 112 transitions. Second operand 17 states. [2018-11-23 12:33:35,934 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:33:35,934 INFO L93 Difference]: Finished difference Result 139 states and 152 transitions. [2018-11-23 12:33:35,934 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2018-11-23 12:33:35,934 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 48 [2018-11-23 12:33:35,935 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:33:35,935 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-23 12:33:35,936 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 100 transitions. [2018-11-23 12:33:35,937 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-23 12:33:35,938 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 100 transitions. [2018-11-23 12:33:35,938 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 100 transitions. [2018-11-23 12:33:36,065 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:33:36,066 INFO L225 Difference]: With dead ends: 139 [2018-11-23 12:33:36,067 INFO L226 Difference]: Without dead ends: 55 [2018-11-23 12:33:36,068 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 63 GetRequests, 44 SyntacticMatches, 0 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 88 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=108, Invalid=312, Unknown=0, NotChecked=0, Total=420 [2018-11-23 12:33:36,068 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2018-11-23 12:33:36,535 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 51. [2018-11-23 12:33:36,535 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:33:36,535 INFO L82 GeneralOperation]: Start isEquivalent. First operand 55 states. Second operand 51 states. [2018-11-23 12:33:36,535 INFO L74 IsIncluded]: Start isIncluded. First operand 55 states. Second operand 51 states. [2018-11-23 12:33:36,535 INFO L87 Difference]: Start difference. First operand 55 states. Second operand 51 states. [2018-11-23 12:33:36,536 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:33:36,537 INFO L93 Difference]: Finished difference Result 55 states and 58 transitions. [2018-11-23 12:33:36,537 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 58 transitions. [2018-11-23 12:33:36,537 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:33:36,537 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:33:36,537 INFO L74 IsIncluded]: Start isIncluded. First operand 51 states. Second operand 55 states. [2018-11-23 12:33:36,537 INFO L87 Difference]: Start difference. First operand 51 states. Second operand 55 states. [2018-11-23 12:33:36,539 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:33:36,539 INFO L93 Difference]: Finished difference Result 55 states and 58 transitions. [2018-11-23 12:33:36,539 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 58 transitions. [2018-11-23 12:33:36,539 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:33:36,539 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:33:36,539 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:33:36,540 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:33:36,540 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 51 states. [2018-11-23 12:33:36,541 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 54 transitions. [2018-11-23 12:33:36,541 INFO L78 Accepts]: Start accepts. Automaton has 51 states and 54 transitions. Word has length 48 [2018-11-23 12:33:36,541 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:33:36,541 INFO L480 AbstractCegarLoop]: Abstraction has 51 states and 54 transitions. [2018-11-23 12:33:36,541 INFO L481 AbstractCegarLoop]: Interpolant automaton has 17 states. [2018-11-23 12:33:36,541 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 54 transitions. [2018-11-23 12:33:36,542 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2018-11-23 12:33:36,542 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:33:36,542 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:33:36,542 INFO L423 AbstractCegarLoop]: === Iteration 13 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:33:36,543 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:33:36,543 INFO L82 PathProgramCache]: Analyzing trace with hash 1260583037, now seen corresponding path program 9 times [2018-11-23 12:33:36,543 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:33:36,543 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:33:36,544 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:33:36,544 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:33:36,544 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:33:36,580 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:33:37,264 WARN L180 SmtUtils]: Spent 217.00 ms on a formula simplification. DAG size of input: 15 DAG size of output: 8 [2018-11-23 12:33:37,827 WARN L180 SmtUtils]: Spent 264.00 ms on a formula simplification. DAG size of input: 21 DAG size of output: 16 [2018-11-23 12:33:38,813 WARN L180 SmtUtils]: Spent 122.00 ms on a formula simplification. DAG size of input: 56 DAG size of output: 48 [2018-11-23 12:33:39,012 WARN L180 SmtUtils]: Spent 114.00 ms on a formula simplification. DAG size of input: 57 DAG size of output: 49 [2018-11-23 12:33:42,647 WARN L180 SmtUtils]: Spent 121.00 ms on a formula simplification. DAG size of input: 53 DAG size of output: 46 [2018-11-23 12:33:43,626 INFO L256 TraceCheckUtils]: 0: Hoare triple {5413#true} call ULTIMATE.init(); {5413#true} is VALID [2018-11-23 12:33:43,627 INFO L273 TraceCheckUtils]: 1: Hoare triple {5413#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {5413#true} is VALID [2018-11-23 12:33:43,627 INFO L273 TraceCheckUtils]: 2: Hoare triple {5413#true} assume true; {5413#true} is VALID [2018-11-23 12:33:43,627 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5413#true} {5413#true} #83#return; {5413#true} is VALID [2018-11-23 12:33:43,627 INFO L256 TraceCheckUtils]: 4: Hoare triple {5413#true} call #t~ret10 := main(); {5413#true} is VALID [2018-11-23 12:33:43,627 INFO L273 TraceCheckUtils]: 5: Hoare triple {5413#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {5413#true} is VALID [2018-11-23 12:33:43,628 INFO L273 TraceCheckUtils]: 6: Hoare triple {5413#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; {5415#(and (= main_~sum~0 0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:43,628 INFO L273 TraceCheckUtils]: 7: Hoare triple {5415#(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; {5416#(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:33:43,629 INFO L273 TraceCheckUtils]: 8: Hoare triple {5416#(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; {5417#(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:33:43,630 INFO L273 TraceCheckUtils]: 9: Hoare triple {5417#(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; {5418#(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:33:43,630 INFO L273 TraceCheckUtils]: 10: Hoare triple {5418#(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; {5419#(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:33:43,631 INFO L273 TraceCheckUtils]: 11: Hoare triple {5419#(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; {5420#(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:33:43,633 INFO L273 TraceCheckUtils]: 12: Hoare triple {5420#(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; {5421#(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:33:43,635 INFO L273 TraceCheckUtils]: 13: Hoare triple {5421#(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; {5422#(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:33:43,637 INFO L273 TraceCheckUtils]: 14: Hoare triple {5422#(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; {5423#(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:33:43,638 INFO L273 TraceCheckUtils]: 15: Hoare triple {5423#(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); {5424#(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:33:43,640 INFO L273 TraceCheckUtils]: 16: Hoare triple {5424#(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; {5425#(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:33:43,642 INFO L273 TraceCheckUtils]: 17: Hoare triple {5425#(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; {5426#(and (or (<= 4 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1))) (or (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (* 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|)))) (<= ~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))))) (* 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) (<= 4 ~SIZE~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (or (<= ~SIZE~0 4) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:43,644 INFO L273 TraceCheckUtils]: 18: Hoare triple {5426#(and (or (<= 4 ~SIZE~0) (< 0 (+ (* 2 main_~i~0) |main_~#a~0.offset| 1))) (or (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (* 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|)))) (<= ~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))))) (* 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) (<= 4 ~SIZE~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (or (<= ~SIZE~0 4) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset|) 0)) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {5427#(and (or (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |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) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~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)) (<= (+ (* 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:33:43,646 INFO L273 TraceCheckUtils]: 19: Hoare triple {5427#(and (or (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |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) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~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)) (<= (+ (* 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; {5428#(and (= |main_~#a~0.offset| 0) (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0)) (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~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) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~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|)))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0)) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 5))))} is VALID [2018-11-23 12:33:43,648 INFO L273 TraceCheckUtils]: 20: Hoare triple {5428#(and (= |main_~#a~0.offset| 0) (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0)) (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~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) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~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|)))) (<= ~SIZE~0 4) (<= 4 ~SIZE~0)) (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 5))))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {5429#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 3)) (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (* 2 (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:33:43,650 INFO L273 TraceCheckUtils]: 21: Hoare triple {5429#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 3)) (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (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 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (* 2 (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~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {5430#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 3)) (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (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))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 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:33:43,652 INFO L273 TraceCheckUtils]: 22: Hoare triple {5430#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 3)) (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (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))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))) main_~sum~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 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))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {5431#(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 (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 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_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:43,654 INFO L273 TraceCheckUtils]: 23: Hoare triple {5431#(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 (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 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_~#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; {5432#(and (or (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))) main_~sum~0) (<= ~SIZE~0 4) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))))) (<= 4 ~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:33:43,656 INFO L273 TraceCheckUtils]: 24: Hoare triple {5432#(and (or (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))) main_~sum~0) (<= ~SIZE~0 4) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))))) (<= 4 ~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; {5433#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 1) (* 2 ~SIZE~0)) (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 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_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:43,657 INFO L273 TraceCheckUtils]: 25: Hoare triple {5433#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 1) (* 2 ~SIZE~0)) (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 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_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {5434#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 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_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:43,659 INFO L273 TraceCheckUtils]: 26: Hoare triple {5434#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 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_~#a~0.offset| 0))} ~i~0 := 0; {5435#(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|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))))) (<= ~SIZE~0 4) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))) main_~sum~0) (<= 4 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:43,661 INFO L273 TraceCheckUtils]: 27: Hoare triple {5435#(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|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))))) (<= ~SIZE~0 4) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)))) main_~sum~0) (<= 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; {5436#(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|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 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) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 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:33:43,662 INFO L273 TraceCheckUtils]: 28: Hoare triple {5436#(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|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 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) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 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))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {5437#(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) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 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) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 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:33:43,664 INFO L273 TraceCheckUtils]: 29: Hoare triple {5437#(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) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 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) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 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))} 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; {5438#(and (or (and (<= ~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) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 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|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 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)) (<= 4 ~SIZE~0)) (<= (+ (* 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:33:43,666 INFO L273 TraceCheckUtils]: 30: Hoare triple {5438#(and (or (and (<= ~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) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 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|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 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)) (<= 4 ~SIZE~0)) (<= (+ (* 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))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {5439#(and (or (and (<= ~SIZE~0 4) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |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) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |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 (+ main_~i~0 1)) (<= (+ main_~i~0 3) ~SIZE~0)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:43,668 INFO L273 TraceCheckUtils]: 31: Hoare triple {5439#(and (or (and (<= ~SIZE~0 4) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |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) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |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 (+ main_~i~0 1)) (<= (+ main_~i~0 3) ~SIZE~0)) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem7;havoc #t~mem7; {5440#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |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) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |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)) (<= 4 ~SIZE~0)) (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ main_~i~0 3) ~SIZE~0)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:43,670 INFO L273 TraceCheckUtils]: 32: Hoare triple {5440#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |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) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |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)) (<= 4 ~SIZE~0)) (<= ~SIZE~0 (+ main_~i~0 1)) (<= (+ main_~i~0 3) ~SIZE~0)) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {5441#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= (+ main_~i~0 2) ~SIZE~0) (and (<= ~SIZE~0 4) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~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|) 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|) (+ (* 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:33:43,672 INFO L273 TraceCheckUtils]: 33: Hoare triple {5441#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= (+ main_~i~0 2) ~SIZE~0) (and (<= ~SIZE~0 4) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~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|) 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|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) main_~sum~0) (<= 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; {5422#(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:33:43,674 INFO L273 TraceCheckUtils]: 34: Hoare triple {5422#(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; {5423#(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:33:43,675 INFO L273 TraceCheckUtils]: 35: Hoare triple {5423#(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); {5424#(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:33:43,677 INFO L273 TraceCheckUtils]: 36: Hoare triple {5424#(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; {5442#(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:33:43,679 INFO L273 TraceCheckUtils]: 37: Hoare triple {5442#(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; {5443#(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:33:43,681 INFO L273 TraceCheckUtils]: 38: Hoare triple {5443#(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; {5444#(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:33:43,683 INFO L273 TraceCheckUtils]: 39: Hoare triple {5444#(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; {5445#(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:33:43,685 INFO L273 TraceCheckUtils]: 40: Hoare triple {5445#(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; {5446#(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:33:43,686 INFO L273 TraceCheckUtils]: 41: Hoare triple {5446#(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; {5447#(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:33:43,688 INFO L273 TraceCheckUtils]: 42: Hoare triple {5447#(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; {5448#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= (+ main_~i~0 2) ~SIZE~0) (and (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:43,689 INFO L273 TraceCheckUtils]: 43: Hoare triple {5448#(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; {5449#(or (<= (+ main_~i~0 2) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} is VALID [2018-11-23 12:33:43,690 INFO L273 TraceCheckUtils]: 44: Hoare triple {5449#(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; {5450#(or (<= (+ main_~i~0 1) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} is VALID [2018-11-23 12:33:43,691 INFO L273 TraceCheckUtils]: 45: Hoare triple {5450#(or (<= (+ main_~i~0 1) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} assume !(~i~0 < ~SIZE~0); {5451#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:33:43,692 INFO L256 TraceCheckUtils]: 46: Hoare triple {5451#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {5452#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:33:43,693 INFO L273 TraceCheckUtils]: 47: Hoare triple {5452#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {5453#(= __VERIFIER_assert_~cond 1)} is VALID [2018-11-23 12:33:43,693 INFO L273 TraceCheckUtils]: 48: Hoare triple {5453#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {5414#false} is VALID [2018-11-23 12:33:43,693 INFO L273 TraceCheckUtils]: 49: Hoare triple {5414#false} assume !false; {5414#false} is VALID [2018-11-23 12:33:43,716 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:33:43,717 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:33:43,717 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:33:43,728 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:33:43,756 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 5 check-sat command(s) [2018-11-23 12:33:43,756 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:33:43,773 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:33:43,775 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:33:48,320 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:33:48,333 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:33:48,334 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:33:48,335 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:33:48,335 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:33:48,336 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:33:48,336 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:33:48,338 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:33:48,341 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:33:48,359 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:33:48,361 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:33:48,375 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:33:48,385 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:33:48,385 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 3 variables, input treesize:95, output treesize:7 [2018-11-23 12:33:48,511 INFO L256 TraceCheckUtils]: 0: Hoare triple {5413#true} call ULTIMATE.init(); {5413#true} is VALID [2018-11-23 12:33:48,512 INFO L273 TraceCheckUtils]: 1: Hoare triple {5413#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {5413#true} is VALID [2018-11-23 12:33:48,512 INFO L273 TraceCheckUtils]: 2: Hoare triple {5413#true} assume true; {5413#true} is VALID [2018-11-23 12:33:48,512 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5413#true} {5413#true} #83#return; {5413#true} is VALID [2018-11-23 12:33:48,512 INFO L256 TraceCheckUtils]: 4: Hoare triple {5413#true} call #t~ret10 := main(); {5413#true} is VALID [2018-11-23 12:33:48,512 INFO L273 TraceCheckUtils]: 5: Hoare triple {5413#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {5413#true} is VALID [2018-11-23 12:33:48,513 INFO L273 TraceCheckUtils]: 6: Hoare triple {5413#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; {5415#(and (= main_~sum~0 0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:48,513 INFO L273 TraceCheckUtils]: 7: Hoare triple {5415#(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; {5416#(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:33:48,514 INFO L273 TraceCheckUtils]: 8: Hoare triple {5416#(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; {5417#(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:33:48,515 INFO L273 TraceCheckUtils]: 9: Hoare triple {5417#(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; {5418#(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:33:48,516 INFO L273 TraceCheckUtils]: 10: Hoare triple {5418#(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; {5419#(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:33:48,517 INFO L273 TraceCheckUtils]: 11: Hoare triple {5419#(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; {5420#(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:33:48,519 INFO L273 TraceCheckUtils]: 12: Hoare triple {5420#(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; {5493#(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:33:48,538 INFO L273 TraceCheckUtils]: 13: Hoare triple {5493#(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; {5497#(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:33:48,553 INFO L273 TraceCheckUtils]: 14: Hoare triple {5497#(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; {5497#(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:33:48,568 INFO L273 TraceCheckUtils]: 15: Hoare triple {5497#(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); {5497#(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:33:48,582 INFO L273 TraceCheckUtils]: 16: Hoare triple {5497#(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; {5507#(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:33:48,592 INFO L273 TraceCheckUtils]: 17: Hoare triple {5507#(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; {5511#(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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= v_prenex_3 3) (<= 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 main_~i~0) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:48,593 INFO L273 TraceCheckUtils]: 18: Hoare triple {5511#(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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= v_prenex_3 3) (<= 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 main_~i~0) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {5515#(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|) |main_~#a~0.offset|) (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_~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|) |main_~#a~0.offset|) (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:33:48,595 INFO L273 TraceCheckUtils]: 19: Hoare triple {5515#(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|) |main_~#a~0.offset|) (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_~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|) |main_~#a~0.offset|) (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; {5519#(and (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|) |main_~#a~0.offset|) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 3 v_prenex_3) (<= v_prenex_3 3) (<= 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|) |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 v_prenex_3) |main_~#a~0.offset| (- 2))))))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:48,596 INFO L273 TraceCheckUtils]: 20: Hoare triple {5519#(and (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|) |main_~#a~0.offset|) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 3 v_prenex_3) (<= v_prenex_3 3) (<= 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|) |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 v_prenex_3) |main_~#a~0.offset| (- 2))))))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {5523#(and (exists ((v_prenex_3 Int)) (and (<= 3 v_prenex_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)) (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|) |main_~#a~0.offset|) (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|) (+ |main_~#a~0.offset| 2)) (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|) |main_~#a~0.offset|) (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 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:48,613 INFO L273 TraceCheckUtils]: 21: Hoare triple {5523#(and (exists ((v_prenex_3 Int)) (and (<= 3 v_prenex_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)) (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|) |main_~#a~0.offset|) (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|) (+ |main_~#a~0.offset| 2)) (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|) |main_~#a~0.offset|) (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 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; {5527#(and (= main_~i~0 2) (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|) (+ |main_~#a~0.offset| 2)) (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|) |main_~#a~0.offset|) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (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|) |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 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= v_prenex_3 3))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:48,622 INFO L273 TraceCheckUtils]: 22: Hoare triple {5527#(and (= main_~i~0 2) (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|) (+ |main_~#a~0.offset| 2)) (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|) |main_~#a~0.offset|) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (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|) |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 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= v_prenex_3 3))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {5531#(and (= main_~i~0 3) (exists ((v_prenex_3 Int)) (and (<= 3 v_prenex_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)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) |main_~#a~0.offset|) (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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 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|) |main_~#a~0.offset|) (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_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:48,633 INFO L273 TraceCheckUtils]: 23: Hoare triple {5531#(and (= main_~i~0 3) (exists ((v_prenex_3 Int)) (and (<= 3 v_prenex_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)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) |main_~#a~0.offset|) (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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 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|) |main_~#a~0.offset|) (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_~#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; {5535#(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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 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|) |main_~#a~0.offset|) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 3 v_prenex_3) (<= v_prenex_3 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)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) |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 v_prenex_3) |main_~#a~0.offset| (- 2))))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:48,635 INFO L273 TraceCheckUtils]: 24: Hoare triple {5535#(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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 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|) |main_~#a~0.offset|) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 3 v_prenex_3) (<= v_prenex_3 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)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) |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 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; {5539#(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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (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_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (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:33:48,636 INFO L273 TraceCheckUtils]: 25: Hoare triple {5539#(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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (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_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (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); {5539#(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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (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_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (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:33:48,636 INFO L273 TraceCheckUtils]: 26: Hoare triple {5539#(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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (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_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {5546#(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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (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_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:48,638 INFO L273 TraceCheckUtils]: 27: Hoare triple {5546#(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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (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_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))))) (= 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; {5550#(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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (<= v_prenex_3 3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:48,640 INFO L273 TraceCheckUtils]: 28: Hoare triple {5550#(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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (<= v_prenex_3 3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {5554#(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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 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|) (+ |main_~#a~0.offset| 6)) (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_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:48,642 INFO L273 TraceCheckUtils]: 29: Hoare triple {5554#(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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 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|) (+ |main_~#a~0.offset| 6)) (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_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))))) (= 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; {5558#(and (= main_~i~0 1) (exists ((v_prenex_3 Int)) (and (<= 3 v_prenex_3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|) (+ |main_~#a~0.offset| 6)) (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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 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|) (+ |main_~#a~0.offset| 6)) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (<= v_prenex_3 3))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:48,644 INFO L273 TraceCheckUtils]: 30: Hoare triple {5558#(and (= main_~i~0 1) (exists ((v_prenex_3 Int)) (and (<= 3 v_prenex_3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|) (+ |main_~#a~0.offset| 6)) (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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 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|) (+ |main_~#a~0.offset| 6)) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (<= v_prenex_3 3))) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {5562#(and (= main_~i~0 2) (exists ((v_prenex_3 Int)) (and (<= 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|) (+ |main_~#a~0.offset| 4)) (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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2)))) 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| 4)) (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|) (+ |main_~#a~0.offset| 6)) (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:33:48,647 INFO L273 TraceCheckUtils]: 31: Hoare triple {5562#(and (= main_~i~0 2) (exists ((v_prenex_3 Int)) (and (<= 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|) (+ |main_~#a~0.offset| 4)) (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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2)))) 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| 4)) (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|) (+ |main_~#a~0.offset| 6)) (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~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem7;havoc #t~mem7; {5566#(and (= main_~i~0 2) (exists ((v_prenex_3 Int)) (and (<= 3 v_prenex_3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= v_prenex_3 3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) (+ |main_~#a~0.offset| 6)) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:33:48,649 INFO L273 TraceCheckUtils]: 32: Hoare triple {5566#(and (= main_~i~0 2) (exists ((v_prenex_3 Int)) (and (<= 3 v_prenex_3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2))))) (<= v_prenex_3 3) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) (+ |main_~#a~0.offset| 6)) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)))) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {5570#(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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2)))) main_~sum~0) (<= 3 v_prenex_3) (<= v_prenex_3 3) (<= 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|) (+ |main_~#a~0.offset| 6)) (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:33:48,651 INFO L273 TraceCheckUtils]: 33: Hoare triple {5570#(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|) (+ |main_~#a~0.offset| 6)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_3) |main_~#a~0.offset| (- 2)))) main_~sum~0) (<= 3 v_prenex_3) (<= v_prenex_3 3) (<= 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|) (+ |main_~#a~0.offset| 6)) (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~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem7;havoc #t~mem7; {5497#(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:33:48,652 INFO L273 TraceCheckUtils]: 34: Hoare triple {5497#(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; {5497#(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:33:48,653 INFO L273 TraceCheckUtils]: 35: Hoare triple {5497#(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); {5497#(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:33:48,655 INFO L273 TraceCheckUtils]: 36: Hoare triple {5497#(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; {5507#(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:33:48,657 INFO L273 TraceCheckUtils]: 37: Hoare triple {5507#(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; {5586#(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:33:48,659 INFO L273 TraceCheckUtils]: 38: Hoare triple {5586#(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; {5590#(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:33:48,661 INFO L273 TraceCheckUtils]: 39: Hoare triple {5590#(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; {5594#(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:33:48,663 INFO L273 TraceCheckUtils]: 40: Hoare triple {5594#(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; {5598#(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:33:48,665 INFO L273 TraceCheckUtils]: 41: Hoare triple {5598#(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; {5602#(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:33:48,667 INFO L273 TraceCheckUtils]: 42: Hoare triple {5602#(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; {5606#(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:33:48,669 INFO L273 TraceCheckUtils]: 43: Hoare triple {5606#(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; {5451#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:33:48,670 INFO L273 TraceCheckUtils]: 44: Hoare triple {5451#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {5451#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:33:48,670 INFO L273 TraceCheckUtils]: 45: Hoare triple {5451#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} assume !(~i~0 < ~SIZE~0); {5451#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:33:48,671 INFO L256 TraceCheckUtils]: 46: Hoare triple {5451#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {5452#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:33:48,672 INFO L273 TraceCheckUtils]: 47: Hoare triple {5452#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {5453#(= __VERIFIER_assert_~cond 1)} is VALID [2018-11-23 12:33:48,673 INFO L273 TraceCheckUtils]: 48: Hoare triple {5453#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {5414#false} is VALID [2018-11-23 12:33:48,673 INFO L273 TraceCheckUtils]: 49: Hoare triple {5414#false} assume !false; {5414#false} is VALID [2018-11-23 12:33:48,692 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:33:48,712 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:33:48,712 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [41, 35] total 65 [2018-11-23 12:33:48,713 INFO L78 Accepts]: Start accepts. Automaton has 65 states. Word has length 50 [2018-11-23 12:33:48,713 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:33:48,713 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 65 states. [2018-11-23 12:33:48,875 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:33:48,876 INFO L459 AbstractCegarLoop]: Interpolant automaton has 65 states [2018-11-23 12:33:48,876 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 65 interpolants. [2018-11-23 12:33:48,878 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=167, Invalid=3993, Unknown=0, NotChecked=0, Total=4160 [2018-11-23 12:33:48,878 INFO L87 Difference]: Start difference. First operand 51 states and 54 transitions. Second operand 65 states. [2018-11-23 12:33:50,896 WARN L180 SmtUtils]: Spent 487.00 ms on a formula simplification. DAG size of input: 60 DAG size of output: 18 [2018-11-23 12:33:54,352 WARN L180 SmtUtils]: Spent 746.00 ms on a formula simplification. DAG size of input: 162 DAG size of output: 122 [2018-11-23 12:33:55,098 WARN L180 SmtUtils]: Spent 124.00 ms on a formula simplification. DAG size of input: 188 DAG size of output: 34 [2018-11-23 12:33:55,782 WARN L180 SmtUtils]: Spent 157.00 ms on a formula simplification. DAG size of input: 198 DAG size of output: 41 [2018-11-23 12:33:56,436 WARN L180 SmtUtils]: Spent 175.00 ms on a formula simplification. DAG size of input: 183 DAG size of output: 40 [2018-11-23 12:33:57,155 WARN L180 SmtUtils]: Spent 202.00 ms on a formula simplification. DAG size of input: 184 DAG size of output: 43 [2018-11-23 12:33:57,868 WARN L180 SmtUtils]: Spent 177.00 ms on a formula simplification. DAG size of input: 184 DAG size of output: 40 [2018-11-23 12:33:58,546 WARN L180 SmtUtils]: Spent 189.00 ms on a formula simplification. DAG size of input: 185 DAG size of output: 43 [2018-11-23 12:33:59,204 WARN L180 SmtUtils]: Spent 182.00 ms on a formula simplification. DAG size of input: 186 DAG size of output: 41 [2018-11-23 12:33:59,817 WARN L180 SmtUtils]: Spent 175.00 ms on a formula simplification. DAG size of input: 176 DAG size of output: 39 [2018-11-23 12:34:00,998 WARN L180 SmtUtils]: Spent 767.00 ms on a formula simplification. DAG size of input: 162 DAG size of output: 118 [2018-11-23 12:34:03,026 WARN L180 SmtUtils]: Spent 1.01 s on a formula simplification. DAG size of input: 197 DAG size of output: 134 [2018-11-23 12:34:03,812 WARN L180 SmtUtils]: Spent 133.00 ms on a formula simplification. DAG size of input: 196 DAG size of output: 38 [2018-11-23 12:34:04,869 WARN L180 SmtUtils]: Spent 429.00 ms on a formula simplification. DAG size of input: 122 DAG size of output: 117 [2018-11-23 12:34:05,596 WARN L180 SmtUtils]: Spent 143.00 ms on a formula simplification. DAG size of input: 202 DAG size of output: 38 [2018-11-23 12:34:06,708 WARN L180 SmtUtils]: Spent 531.00 ms on a formula simplification. DAG size of input: 163 DAG size of output: 96 [2018-11-23 12:34:07,307 WARN L180 SmtUtils]: Spent 270.00 ms on a formula simplification. DAG size of input: 114 DAG size of output: 89 [2018-11-23 12:34:07,960 WARN L180 SmtUtils]: Spent 155.00 ms on a formula simplification. DAG size of input: 189 DAG size of output: 46 [2018-11-23 12:34:08,586 WARN L180 SmtUtils]: Spent 156.00 ms on a formula simplification. DAG size of input: 200 DAG size of output: 55 [2018-11-23 12:34:08,924 WARN L180 SmtUtils]: Spent 144.00 ms on a formula simplification. DAG size of input: 74 DAG size of output: 67 [2018-11-23 12:34:09,643 WARN L180 SmtUtils]: Spent 172.00 ms on a formula simplification. DAG size of input: 190 DAG size of output: 49 [2018-11-23 12:34:10,305 WARN L180 SmtUtils]: Spent 192.00 ms on a formula simplification. DAG size of input: 213 DAG size of output: 42 [2018-11-23 12:34:11,226 WARN L180 SmtUtils]: Spent 175.00 ms on a formula simplification. DAG size of input: 186 DAG size of output: 42 [2018-11-23 12:34:11,793 WARN L180 SmtUtils]: Spent 181.00 ms on a formula simplification. DAG size of input: 196 DAG size of output: 53 [2018-11-23 12:34:12,658 WARN L180 SmtUtils]: Spent 208.00 ms on a formula simplification. DAG size of input: 187 DAG size of output: 45 [2018-11-23 12:34:13,289 WARN L180 SmtUtils]: Spent 200.00 ms on a formula simplification. DAG size of input: 197 DAG size of output: 56 [2018-11-23 12:34:14,014 WARN L180 SmtUtils]: Spent 178.00 ms on a formula simplification. DAG size of input: 184 DAG size of output: 39 [2018-11-23 12:34:14,659 WARN L180 SmtUtils]: Spent 213.00 ms on a formula simplification. DAG size of input: 195 DAG size of output: 51 [2018-11-23 12:34:15,709 WARN L180 SmtUtils]: Spent 616.00 ms on a formula simplification. DAG size of input: 160 DAG size of output: 106 [2018-11-23 12:34:16,391 WARN L180 SmtUtils]: Spent 221.00 ms on a formula simplification. DAG size of input: 196 DAG size of output: 54 [2018-11-23 12:34:17,248 WARN L180 SmtUtils]: Spent 254.00 ms on a formula simplification. DAG size of input: 108 DAG size of output: 92 [2018-11-23 12:34:18,035 WARN L180 SmtUtils]: Spent 221.00 ms on a formula simplification. DAG size of input: 195 DAG size of output: 50 [2018-11-23 12:34:18,991 WARN L180 SmtUtils]: Spent 295.00 ms on a formula simplification. DAG size of input: 141 DAG size of output: 109 [2018-11-23 12:34:19,592 WARN L180 SmtUtils]: Spent 199.00 ms on a formula simplification. DAG size of input: 192 DAG size of output: 43 [2018-11-23 12:34:20,478 WARN L180 SmtUtils]: Spent 238.00 ms on a formula simplification. DAG size of input: 95 DAG size of output: 87 [2018-11-23 12:34:21,429 WARN L180 SmtUtils]: Spent 175.00 ms on a formula simplification. DAG size of input: 198 DAG size of output: 57 [2018-11-23 12:34:22,078 WARN L180 SmtUtils]: Spent 176.00 ms on a formula simplification. DAG size of input: 96 DAG size of output: 89 [2018-11-23 12:34:23,368 WARN L180 SmtUtils]: Spent 113.00 ms on a formula simplification. DAG size of input: 163 DAG size of output: 57 [2018-11-23 12:34:24,021 WARN L180 SmtUtils]: Spent 161.00 ms on a formula simplification. DAG size of input: 79 DAG size of output: 70 [2018-11-23 12:34:26,234 WARN L180 SmtUtils]: Spent 257.00 ms on a formula simplification. DAG size of input: 129 DAG size of output: 100 [2018-11-23 12:34:27,689 WARN L180 SmtUtils]: Spent 240.00 ms on a formula simplification. DAG size of input: 87 DAG size of output: 79 [2018-11-23 12:34:29,002 WARN L180 SmtUtils]: Spent 149.00 ms on a formula simplification. DAG size of input: 88 DAG size of output: 80 [2018-11-23 12:34:30,005 WARN L180 SmtUtils]: Spent 128.00 ms on a formula simplification. DAG size of input: 70 DAG size of output: 61 [2018-11-23 12:34:34,957 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:34:34,957 INFO L93 Difference]: Finished difference Result 147 states and 171 transitions. [2018-11-23 12:34:34,957 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 71 states. [2018-11-23 12:34:34,957 INFO L78 Accepts]: Start accepts. Automaton has 65 states. Word has length 50 [2018-11-23 12:34:34,958 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:34:34,958 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 65 states. [2018-11-23 12:34:34,960 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 71 states to 71 states and 149 transitions. [2018-11-23 12:34:34,960 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 65 states. [2018-11-23 12:34:34,963 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 71 states to 71 states and 149 transitions. [2018-11-23 12:34:34,963 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 71 states and 149 transitions. [2018-11-23 12:34:36,223 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 149 edges. 149 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:34:36,227 INFO L225 Difference]: With dead ends: 147 [2018-11-23 12:34:36,227 INFO L226 Difference]: Without dead ends: 141 [2018-11-23 12:34:36,231 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 155 GetRequests, 18 SyntacticMatches, 12 SemanticMatches, 125 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3395 ImplicationChecksByTransitivity, 33.6s TimeCoverageRelationStatistics Valid=1753, Invalid=14249, Unknown=0, NotChecked=0, Total=16002 [2018-11-23 12:34:36,232 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 141 states. [2018-11-23 12:34:37,290 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 141 to 111. [2018-11-23 12:34:37,290 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:34:37,291 INFO L82 GeneralOperation]: Start isEquivalent. First operand 141 states. Second operand 111 states. [2018-11-23 12:34:37,291 INFO L74 IsIncluded]: Start isIncluded. First operand 141 states. Second operand 111 states. [2018-11-23 12:34:37,291 INFO L87 Difference]: Start difference. First operand 141 states. Second operand 111 states. [2018-11-23 12:34:37,294 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:34:37,294 INFO L93 Difference]: Finished difference Result 141 states and 160 transitions. [2018-11-23 12:34:37,294 INFO L276 IsEmpty]: Start isEmpty. Operand 141 states and 160 transitions. [2018-11-23 12:34:37,295 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:34:37,295 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:34:37,295 INFO L74 IsIncluded]: Start isIncluded. First operand 111 states. Second operand 141 states. [2018-11-23 12:34:37,295 INFO L87 Difference]: Start difference. First operand 111 states. Second operand 141 states. [2018-11-23 12:34:37,298 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:34:37,298 INFO L93 Difference]: Finished difference Result 141 states and 160 transitions. [2018-11-23 12:34:37,298 INFO L276 IsEmpty]: Start isEmpty. Operand 141 states and 160 transitions. [2018-11-23 12:34:37,299 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:34:37,299 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:34:37,299 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:34:37,299 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:34:37,299 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 111 states. [2018-11-23 12:34:37,301 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 111 states to 111 states and 126 transitions. [2018-11-23 12:34:37,302 INFO L78 Accepts]: Start accepts. Automaton has 111 states and 126 transitions. Word has length 50 [2018-11-23 12:34:37,302 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:34:37,302 INFO L480 AbstractCegarLoop]: Abstraction has 111 states and 126 transitions. [2018-11-23 12:34:37,302 INFO L481 AbstractCegarLoop]: Interpolant automaton has 65 states. [2018-11-23 12:34:37,302 INFO L276 IsEmpty]: Start isEmpty. Operand 111 states and 126 transitions. [2018-11-23 12:34:37,303 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2018-11-23 12:34:37,303 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:34:37,303 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:34:37,303 INFO L423 AbstractCegarLoop]: === Iteration 14 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:34:37,304 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:34:37,304 INFO L82 PathProgramCache]: Analyzing trace with hash -884695365, now seen corresponding path program 10 times [2018-11-23 12:34:37,304 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:34:37,304 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:34:37,305 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:34:37,305 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:34:37,305 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:34:37,315 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:34:38,053 INFO L256 TraceCheckUtils]: 0: Hoare triple {6418#true} call ULTIMATE.init(); {6418#true} is VALID [2018-11-23 12:34:38,053 INFO L273 TraceCheckUtils]: 1: Hoare triple {6418#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {6418#true} is VALID [2018-11-23 12:34:38,053 INFO L273 TraceCheckUtils]: 2: Hoare triple {6418#true} assume true; {6418#true} is VALID [2018-11-23 12:34:38,053 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6418#true} {6418#true} #83#return; {6418#true} is VALID [2018-11-23 12:34:38,054 INFO L256 TraceCheckUtils]: 4: Hoare triple {6418#true} call #t~ret10 := main(); {6418#true} is VALID [2018-11-23 12:34:38,054 INFO L273 TraceCheckUtils]: 5: Hoare triple {6418#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {6418#true} is VALID [2018-11-23 12:34:38,054 INFO L273 TraceCheckUtils]: 6: Hoare triple {6418#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; {6420#(= main_~i~0 0)} is VALID [2018-11-23 12:34:38,055 INFO L273 TraceCheckUtils]: 7: Hoare triple {6420#(= 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; {6420#(= main_~i~0 0)} is VALID [2018-11-23 12:34:38,055 INFO L273 TraceCheckUtils]: 8: Hoare triple {6420#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6421#(<= 1 main_~i~0)} is VALID [2018-11-23 12:34:38,058 INFO L273 TraceCheckUtils]: 9: Hoare triple {6421#(<= 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; {6421#(<= 1 main_~i~0)} is VALID [2018-11-23 12:34:38,058 INFO L273 TraceCheckUtils]: 10: Hoare triple {6421#(<= 1 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6422#(<= 2 main_~i~0)} is VALID [2018-11-23 12:34:38,060 INFO L273 TraceCheckUtils]: 11: Hoare triple {6422#(<= 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; {6422#(<= 2 main_~i~0)} is VALID [2018-11-23 12:34:38,060 INFO L273 TraceCheckUtils]: 12: Hoare triple {6422#(<= 2 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6423#(<= 3 main_~i~0)} is VALID [2018-11-23 12:34:38,063 INFO L273 TraceCheckUtils]: 13: Hoare triple {6423#(<= 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; {6423#(<= 3 main_~i~0)} is VALID [2018-11-23 12:34:38,063 INFO L273 TraceCheckUtils]: 14: Hoare triple {6423#(<= 3 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6424#(<= 4 main_~i~0)} is VALID [2018-11-23 12:34:38,065 INFO L273 TraceCheckUtils]: 15: Hoare triple {6424#(<= 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; {6425#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:34:38,065 INFO L273 TraceCheckUtils]: 16: Hoare triple {6425#(<= 5 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6425#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:34:38,067 INFO L273 TraceCheckUtils]: 17: Hoare triple {6425#(<= 5 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {6425#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:34:38,067 INFO L273 TraceCheckUtils]: 18: Hoare triple {6425#(<= 5 ~SIZE~0)} ~i~0 := 0; {6425#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:34:38,069 INFO L273 TraceCheckUtils]: 19: Hoare triple {6425#(<= 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; {6425#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:34:38,072 INFO L273 TraceCheckUtils]: 20: Hoare triple {6425#(<= 5 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {6425#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:34:38,072 INFO L273 TraceCheckUtils]: 21: Hoare triple {6425#(<= 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; {6425#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:34:38,074 INFO L273 TraceCheckUtils]: 22: Hoare triple {6425#(<= 5 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {6425#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:34:38,074 INFO L273 TraceCheckUtils]: 23: Hoare triple {6425#(<= 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; {6425#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:34:38,077 INFO L273 TraceCheckUtils]: 24: Hoare triple {6425#(<= 5 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {6425#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:34:38,077 INFO L273 TraceCheckUtils]: 25: Hoare triple {6425#(<= 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; {6425#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:34:38,079 INFO L273 TraceCheckUtils]: 26: Hoare triple {6425#(<= 5 ~SIZE~0)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {6425#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:34:38,079 INFO L273 TraceCheckUtils]: 27: Hoare triple {6425#(<= 5 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {6425#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:34:38,081 INFO L273 TraceCheckUtils]: 28: Hoare triple {6425#(<= 5 ~SIZE~0)} ~i~0 := 0; {6426#(and (<= 5 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:34:38,081 INFO L273 TraceCheckUtils]: 29: Hoare triple {6426#(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; {6426#(and (<= 5 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:34:38,083 INFO L273 TraceCheckUtils]: 30: Hoare triple {6426#(and (<= 5 ~SIZE~0) (= main_~i~0 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {6427#(<= (+ main_~i~0 4) ~SIZE~0)} is VALID [2018-11-23 12:34:38,083 INFO L273 TraceCheckUtils]: 31: Hoare triple {6427#(<= (+ 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; {6427#(<= (+ main_~i~0 4) ~SIZE~0)} is VALID [2018-11-23 12:34:38,085 INFO L273 TraceCheckUtils]: 32: Hoare triple {6427#(<= (+ main_~i~0 4) ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {6428#(<= (+ main_~i~0 3) ~SIZE~0)} is VALID [2018-11-23 12:34:38,085 INFO L273 TraceCheckUtils]: 33: Hoare triple {6428#(<= (+ 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; {6428#(<= (+ main_~i~0 3) ~SIZE~0)} is VALID [2018-11-23 12:34:38,088 INFO L273 TraceCheckUtils]: 34: Hoare triple {6428#(<= (+ main_~i~0 3) ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {6429#(<= (+ main_~i~0 2) ~SIZE~0)} is VALID [2018-11-23 12:34:38,088 INFO L273 TraceCheckUtils]: 35: Hoare triple {6429#(<= (+ 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; {6429#(<= (+ main_~i~0 2) ~SIZE~0)} is VALID [2018-11-23 12:34:38,092 INFO L273 TraceCheckUtils]: 36: Hoare triple {6429#(<= (+ main_~i~0 2) ~SIZE~0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {6430#(<= (+ main_~i~0 1) ~SIZE~0)} is VALID [2018-11-23 12:34:38,094 INFO L273 TraceCheckUtils]: 37: Hoare triple {6430#(<= (+ main_~i~0 1) ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {6419#false} is VALID [2018-11-23 12:34:38,094 INFO L273 TraceCheckUtils]: 38: Hoare triple {6419#false} ~i~0 := 0; {6419#false} is VALID [2018-11-23 12:34:38,094 INFO L273 TraceCheckUtils]: 39: Hoare triple {6419#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; {6419#false} is VALID [2018-11-23 12:34:38,094 INFO L273 TraceCheckUtils]: 40: Hoare triple {6419#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {6419#false} is VALID [2018-11-23 12:34:38,094 INFO L273 TraceCheckUtils]: 41: Hoare triple {6419#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; {6419#false} is VALID [2018-11-23 12:34:38,094 INFO L273 TraceCheckUtils]: 42: Hoare triple {6419#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {6419#false} is VALID [2018-11-23 12:34:38,094 INFO L273 TraceCheckUtils]: 43: Hoare triple {6419#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; {6419#false} is VALID [2018-11-23 12:34:38,095 INFO L273 TraceCheckUtils]: 44: Hoare triple {6419#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {6419#false} is VALID [2018-11-23 12:34:38,095 INFO L273 TraceCheckUtils]: 45: Hoare triple {6419#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; {6419#false} is VALID [2018-11-23 12:34:38,095 INFO L273 TraceCheckUtils]: 46: Hoare triple {6419#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {6419#false} is VALID [2018-11-23 12:34:38,095 INFO L273 TraceCheckUtils]: 47: Hoare triple {6419#false} assume !(~i~0 < ~SIZE~0); {6419#false} is VALID [2018-11-23 12:34:38,095 INFO L256 TraceCheckUtils]: 48: Hoare triple {6419#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {6419#false} is VALID [2018-11-23 12:34:38,095 INFO L273 TraceCheckUtils]: 49: Hoare triple {6419#false} ~cond := #in~cond; {6419#false} is VALID [2018-11-23 12:34:38,095 INFO L273 TraceCheckUtils]: 50: Hoare triple {6419#false} assume 0 == ~cond; {6419#false} is VALID [2018-11-23 12:34:38,095 INFO L273 TraceCheckUtils]: 51: Hoare triple {6419#false} assume !false; {6419#false} is VALID [2018-11-23 12:34:38,097 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:34:38,097 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:34:38,097 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:34:38,106 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 12:34:38,127 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 12:34:38,127 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:34:38,138 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:34:38,140 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:34:38,351 INFO L256 TraceCheckUtils]: 0: Hoare triple {6418#true} call ULTIMATE.init(); {6418#true} is VALID [2018-11-23 12:34:38,352 INFO L273 TraceCheckUtils]: 1: Hoare triple {6418#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {6418#true} is VALID [2018-11-23 12:34:38,352 INFO L273 TraceCheckUtils]: 2: Hoare triple {6418#true} assume true; {6418#true} is VALID [2018-11-23 12:34:38,352 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6418#true} {6418#true} #83#return; {6418#true} is VALID [2018-11-23 12:34:38,352 INFO L256 TraceCheckUtils]: 4: Hoare triple {6418#true} call #t~ret10 := main(); {6418#true} is VALID [2018-11-23 12:34:38,353 INFO L273 TraceCheckUtils]: 5: Hoare triple {6418#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {6418#true} is VALID [2018-11-23 12:34:38,353 INFO L273 TraceCheckUtils]: 6: Hoare triple {6418#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; {6452#(<= 0 main_~i~0)} is VALID [2018-11-23 12:34:38,354 INFO L273 TraceCheckUtils]: 7: Hoare triple {6452#(<= 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; {6452#(<= 0 main_~i~0)} is VALID [2018-11-23 12:34:38,354 INFO L273 TraceCheckUtils]: 8: Hoare triple {6452#(<= 0 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6421#(<= 1 main_~i~0)} is VALID [2018-11-23 12:34:38,355 INFO L273 TraceCheckUtils]: 9: Hoare triple {6421#(<= 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; {6421#(<= 1 main_~i~0)} is VALID [2018-11-23 12:34:38,355 INFO L273 TraceCheckUtils]: 10: Hoare triple {6421#(<= 1 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6422#(<= 2 main_~i~0)} is VALID [2018-11-23 12:34:38,355 INFO L273 TraceCheckUtils]: 11: Hoare triple {6422#(<= 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; {6422#(<= 2 main_~i~0)} is VALID [2018-11-23 12:34:38,356 INFO L273 TraceCheckUtils]: 12: Hoare triple {6422#(<= 2 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6423#(<= 3 main_~i~0)} is VALID [2018-11-23 12:34:38,356 INFO L273 TraceCheckUtils]: 13: Hoare triple {6423#(<= 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; {6423#(<= 3 main_~i~0)} is VALID [2018-11-23 12:34:38,357 INFO L273 TraceCheckUtils]: 14: Hoare triple {6423#(<= 3 main_~i~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6424#(<= 4 main_~i~0)} is VALID [2018-11-23 12:34:38,358 INFO L273 TraceCheckUtils]: 15: Hoare triple {6424#(<= 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; {6425#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:34:38,358 INFO L273 TraceCheckUtils]: 16: Hoare triple {6425#(<= 5 ~SIZE~0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6425#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:34:38,359 INFO L273 TraceCheckUtils]: 17: Hoare triple {6425#(<= 5 ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {6425#(<= 5 ~SIZE~0)} is VALID [2018-11-23 12:34:38,360 INFO L273 TraceCheckUtils]: 18: Hoare triple {6425#(<= 5 ~SIZE~0)} ~i~0 := 0; {6489#(and (<= 5 ~SIZE~0) (<= main_~i~0 0))} is VALID [2018-11-23 12:34:38,360 INFO L273 TraceCheckUtils]: 19: Hoare triple {6489#(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; {6489#(and (<= 5 ~SIZE~0) (<= main_~i~0 0))} is VALID [2018-11-23 12:34:38,361 INFO L273 TraceCheckUtils]: 20: Hoare triple {6489#(and (<= 5 ~SIZE~0) (<= main_~i~0 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {6496#(and (<= main_~i~0 1) (<= 5 ~SIZE~0))} is VALID [2018-11-23 12:34:38,362 INFO L273 TraceCheckUtils]: 21: Hoare triple {6496#(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; {6496#(and (<= main_~i~0 1) (<= 5 ~SIZE~0))} is VALID [2018-11-23 12:34:38,363 INFO L273 TraceCheckUtils]: 22: Hoare triple {6496#(and (<= main_~i~0 1) (<= 5 ~SIZE~0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {6503#(and (<= main_~i~0 2) (<= 5 ~SIZE~0))} is VALID [2018-11-23 12:34:38,364 INFO L273 TraceCheckUtils]: 23: Hoare triple {6503#(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; {6503#(and (<= main_~i~0 2) (<= 5 ~SIZE~0))} is VALID [2018-11-23 12:34:38,364 INFO L273 TraceCheckUtils]: 24: Hoare triple {6503#(and (<= main_~i~0 2) (<= 5 ~SIZE~0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {6510#(and (<= main_~i~0 3) (<= 5 ~SIZE~0))} is VALID [2018-11-23 12:34:38,365 INFO L273 TraceCheckUtils]: 25: Hoare triple {6510#(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; {6510#(and (<= main_~i~0 3) (<= 5 ~SIZE~0))} is VALID [2018-11-23 12:34:38,366 INFO L273 TraceCheckUtils]: 26: Hoare triple {6510#(and (<= main_~i~0 3) (<= 5 ~SIZE~0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {6517#(and (<= main_~i~0 4) (<= 5 ~SIZE~0))} is VALID [2018-11-23 12:34:38,366 INFO L273 TraceCheckUtils]: 27: Hoare triple {6517#(and (<= main_~i~0 4) (<= 5 ~SIZE~0))} assume !(~i~0 < ~SIZE~0); {6419#false} is VALID [2018-11-23 12:34:38,367 INFO L273 TraceCheckUtils]: 28: Hoare triple {6419#false} ~i~0 := 0; {6419#false} is VALID [2018-11-23 12:34:38,367 INFO L273 TraceCheckUtils]: 29: Hoare triple {6419#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; {6419#false} is VALID [2018-11-23 12:34:38,367 INFO L273 TraceCheckUtils]: 30: Hoare triple {6419#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {6419#false} is VALID [2018-11-23 12:34:38,367 INFO L273 TraceCheckUtils]: 31: Hoare triple {6419#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; {6419#false} is VALID [2018-11-23 12:34:38,367 INFO L273 TraceCheckUtils]: 32: Hoare triple {6419#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {6419#false} is VALID [2018-11-23 12:34:38,368 INFO L273 TraceCheckUtils]: 33: Hoare triple {6419#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; {6419#false} is VALID [2018-11-23 12:34:38,368 INFO L273 TraceCheckUtils]: 34: Hoare triple {6419#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {6419#false} is VALID [2018-11-23 12:34:38,368 INFO L273 TraceCheckUtils]: 35: Hoare triple {6419#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; {6419#false} is VALID [2018-11-23 12:34:38,368 INFO L273 TraceCheckUtils]: 36: Hoare triple {6419#false} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {6419#false} is VALID [2018-11-23 12:34:38,368 INFO L273 TraceCheckUtils]: 37: Hoare triple {6419#false} assume !(~i~0 < ~SIZE~0); {6419#false} is VALID [2018-11-23 12:34:38,369 INFO L273 TraceCheckUtils]: 38: Hoare triple {6419#false} ~i~0 := 0; {6419#false} is VALID [2018-11-23 12:34:38,369 INFO L273 TraceCheckUtils]: 39: Hoare triple {6419#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; {6419#false} is VALID [2018-11-23 12:34:38,369 INFO L273 TraceCheckUtils]: 40: Hoare triple {6419#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {6419#false} is VALID [2018-11-23 12:34:38,369 INFO L273 TraceCheckUtils]: 41: Hoare triple {6419#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; {6419#false} is VALID [2018-11-23 12:34:38,369 INFO L273 TraceCheckUtils]: 42: Hoare triple {6419#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {6419#false} is VALID [2018-11-23 12:34:38,370 INFO L273 TraceCheckUtils]: 43: Hoare triple {6419#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; {6419#false} is VALID [2018-11-23 12:34:38,370 INFO L273 TraceCheckUtils]: 44: Hoare triple {6419#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {6419#false} is VALID [2018-11-23 12:34:38,370 INFO L273 TraceCheckUtils]: 45: Hoare triple {6419#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; {6419#false} is VALID [2018-11-23 12:34:38,370 INFO L273 TraceCheckUtils]: 46: Hoare triple {6419#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {6419#false} is VALID [2018-11-23 12:34:38,370 INFO L273 TraceCheckUtils]: 47: Hoare triple {6419#false} assume !(~i~0 < ~SIZE~0); {6419#false} is VALID [2018-11-23 12:34:38,370 INFO L256 TraceCheckUtils]: 48: Hoare triple {6419#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {6419#false} is VALID [2018-11-23 12:34:38,370 INFO L273 TraceCheckUtils]: 49: Hoare triple {6419#false} ~cond := #in~cond; {6419#false} is VALID [2018-11-23 12:34:38,370 INFO L273 TraceCheckUtils]: 50: Hoare triple {6419#false} assume 0 == ~cond; {6419#false} is VALID [2018-11-23 12:34:38,371 INFO L273 TraceCheckUtils]: 51: Hoare triple {6419#false} assume !false; {6419#false} is VALID [2018-11-23 12:34:38,372 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:34:38,393 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:34:38,393 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 19 [2018-11-23 12:34:38,394 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 52 [2018-11-23 12:34:38,394 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:34:38,394 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states. [2018-11-23 12:34:38,448 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:34:38,448 INFO L459 AbstractCegarLoop]: Interpolant automaton has 19 states [2018-11-23 12:34:38,448 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2018-11-23 12:34:38,449 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=93, Invalid=249, Unknown=0, NotChecked=0, Total=342 [2018-11-23 12:34:38,449 INFO L87 Difference]: Start difference. First operand 111 states and 126 transitions. Second operand 19 states. [2018-11-23 12:34:43,008 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:34:43,009 INFO L93 Difference]: Finished difference Result 184 states and 204 transitions. [2018-11-23 12:34:43,009 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2018-11-23 12:34:43,009 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 52 [2018-11-23 12:34:43,009 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:34:43,009 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-23 12:34:43,011 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 113 transitions. [2018-11-23 12:34:43,011 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-23 12:34:43,012 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 113 transitions. [2018-11-23 12:34:43,013 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states and 113 transitions. [2018-11-23 12:34:43,519 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:34:43,522 INFO L225 Difference]: With dead ends: 184 [2018-11-23 12:34:43,522 INFO L226 Difference]: Without dead ends: 147 [2018-11-23 12:34:43,522 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 75 GetRequests, 47 SyntacticMatches, 0 SemanticMatches, 28 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 196 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=206, Invalid=664, Unknown=0, NotChecked=0, Total=870 [2018-11-23 12:34:43,523 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 147 states. [2018-11-23 12:34:46,102 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 147 to 124. [2018-11-23 12:34:46,102 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:34:46,102 INFO L82 GeneralOperation]: Start isEquivalent. First operand 147 states. Second operand 124 states. [2018-11-23 12:34:46,103 INFO L74 IsIncluded]: Start isIncluded. First operand 147 states. Second operand 124 states. [2018-11-23 12:34:46,103 INFO L87 Difference]: Start difference. First operand 147 states. Second operand 124 states. [2018-11-23 12:34:46,107 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:34:46,107 INFO L93 Difference]: Finished difference Result 147 states and 161 transitions. [2018-11-23 12:34:46,107 INFO L276 IsEmpty]: Start isEmpty. Operand 147 states and 161 transitions. [2018-11-23 12:34:46,107 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:34:46,108 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:34:46,108 INFO L74 IsIncluded]: Start isIncluded. First operand 124 states. Second operand 147 states. [2018-11-23 12:34:46,108 INFO L87 Difference]: Start difference. First operand 124 states. Second operand 147 states. [2018-11-23 12:34:46,111 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:34:46,111 INFO L93 Difference]: Finished difference Result 147 states and 161 transitions. [2018-11-23 12:34:46,111 INFO L276 IsEmpty]: Start isEmpty. Operand 147 states and 161 transitions. [2018-11-23 12:34:46,112 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:34:46,112 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:34:46,112 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:34:46,112 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:34:46,112 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 124 states. [2018-11-23 12:34:46,115 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 124 states to 124 states and 138 transitions. [2018-11-23 12:34:46,115 INFO L78 Accepts]: Start accepts. Automaton has 124 states and 138 transitions. Word has length 52 [2018-11-23 12:34:46,115 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:34:46,115 INFO L480 AbstractCegarLoop]: Abstraction has 124 states and 138 transitions. [2018-11-23 12:34:46,115 INFO L481 AbstractCegarLoop]: Interpolant automaton has 19 states. [2018-11-23 12:34:46,116 INFO L276 IsEmpty]: Start isEmpty. Operand 124 states and 138 transitions. [2018-11-23 12:34:46,116 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2018-11-23 12:34:46,116 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:34:46,117 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:34:46,117 INFO L423 AbstractCegarLoop]: === Iteration 15 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:34:46,117 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:34:46,117 INFO L82 PathProgramCache]: Analyzing trace with hash 1256672763, now seen corresponding path program 11 times [2018-11-23 12:34:46,117 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:34:46,117 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:34:46,118 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:34:46,118 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:34:46,118 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:34:46,127 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:34:47,296 INFO L256 TraceCheckUtils]: 0: Hoare triple {7367#true} call ULTIMATE.init(); {7367#true} is VALID [2018-11-23 12:34:47,296 INFO L273 TraceCheckUtils]: 1: Hoare triple {7367#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {7367#true} is VALID [2018-11-23 12:34:47,296 INFO L273 TraceCheckUtils]: 2: Hoare triple {7367#true} assume true; {7367#true} is VALID [2018-11-23 12:34:47,300 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {7367#true} {7367#true} #83#return; {7367#true} is VALID [2018-11-23 12:34:47,300 INFO L256 TraceCheckUtils]: 4: Hoare triple {7367#true} call #t~ret10 := main(); {7367#true} is VALID [2018-11-23 12:34:47,300 INFO L273 TraceCheckUtils]: 5: Hoare triple {7367#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {7367#true} is VALID [2018-11-23 12:34:47,308 INFO L273 TraceCheckUtils]: 6: Hoare triple {7367#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; {7369#(= main_~i~0 0)} is VALID [2018-11-23 12:34:47,308 INFO L273 TraceCheckUtils]: 7: Hoare triple {7369#(= 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; {7369#(= main_~i~0 0)} is VALID [2018-11-23 12:34:47,309 INFO L273 TraceCheckUtils]: 8: Hoare triple {7369#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7370#(<= main_~i~0 1)} is VALID [2018-11-23 12:34:47,309 INFO L273 TraceCheckUtils]: 9: Hoare triple {7370#(<= 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; {7370#(<= main_~i~0 1)} is VALID [2018-11-23 12:34:47,310 INFO L273 TraceCheckUtils]: 10: Hoare triple {7370#(<= main_~i~0 1)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7371#(<= main_~i~0 2)} is VALID [2018-11-23 12:34:47,310 INFO L273 TraceCheckUtils]: 11: Hoare triple {7371#(<= 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; {7371#(<= main_~i~0 2)} is VALID [2018-11-23 12:34:47,310 INFO L273 TraceCheckUtils]: 12: Hoare triple {7371#(<= main_~i~0 2)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7372#(<= main_~i~0 3)} is VALID [2018-11-23 12:34:47,311 INFO L273 TraceCheckUtils]: 13: Hoare triple {7372#(<= 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; {7372#(<= main_~i~0 3)} is VALID [2018-11-23 12:34:47,311 INFO L273 TraceCheckUtils]: 14: Hoare triple {7372#(<= main_~i~0 3)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7373#(<= main_~i~0 4)} is VALID [2018-11-23 12:34:47,312 INFO L273 TraceCheckUtils]: 15: Hoare triple {7373#(<= main_~i~0 4)} assume !(~i~0 < ~SIZE~0); {7374#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:34:47,312 INFO L273 TraceCheckUtils]: 16: Hoare triple {7374#(<= ~SIZE~0 4)} ~i~0 := 0; {7374#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:34:47,312 INFO L273 TraceCheckUtils]: 17: Hoare triple {7374#(<= ~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; {7374#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:34:47,313 INFO L273 TraceCheckUtils]: 18: Hoare triple {7374#(<= ~SIZE~0 4)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {7374#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:34:47,313 INFO L273 TraceCheckUtils]: 19: Hoare triple {7374#(<= ~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; {7374#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:34:47,313 INFO L273 TraceCheckUtils]: 20: Hoare triple {7374#(<= ~SIZE~0 4)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {7374#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:34:47,314 INFO L273 TraceCheckUtils]: 21: Hoare triple {7374#(<= ~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; {7374#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:34:47,314 INFO L273 TraceCheckUtils]: 22: Hoare triple {7374#(<= ~SIZE~0 4)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {7374#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:34:47,315 INFO L273 TraceCheckUtils]: 23: Hoare triple {7374#(<= ~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; {7374#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:34:47,315 INFO L273 TraceCheckUtils]: 24: Hoare triple {7374#(<= ~SIZE~0 4)} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {7374#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:34:47,316 INFO L273 TraceCheckUtils]: 25: Hoare triple {7374#(<= ~SIZE~0 4)} assume !(~i~0 < ~SIZE~0); {7374#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:34:47,316 INFO L273 TraceCheckUtils]: 26: Hoare triple {7374#(<= ~SIZE~0 4)} ~i~0 := 0; {7374#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:34:47,317 INFO L273 TraceCheckUtils]: 27: Hoare triple {7374#(<= ~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; {7374#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:34:47,317 INFO L273 TraceCheckUtils]: 28: Hoare triple {7374#(<= ~SIZE~0 4)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {7374#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:34:47,318 INFO L273 TraceCheckUtils]: 29: Hoare triple {7374#(<= ~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; {7374#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:34:47,318 INFO L273 TraceCheckUtils]: 30: Hoare triple {7374#(<= ~SIZE~0 4)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {7374#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:34:47,319 INFO L273 TraceCheckUtils]: 31: Hoare triple {7374#(<= ~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; {7374#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:34:47,319 INFO L273 TraceCheckUtils]: 32: Hoare triple {7374#(<= ~SIZE~0 4)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {7374#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:34:47,320 INFO L273 TraceCheckUtils]: 33: Hoare triple {7374#(<= ~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; {7374#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:34:47,320 INFO L273 TraceCheckUtils]: 34: Hoare triple {7374#(<= ~SIZE~0 4)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {7374#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:34:47,321 INFO L273 TraceCheckUtils]: 35: Hoare triple {7374#(<= ~SIZE~0 4)} assume !(~i~0 < ~SIZE~0); {7374#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:34:47,321 INFO L273 TraceCheckUtils]: 36: Hoare triple {7374#(<= ~SIZE~0 4)} ~i~0 := 0; {7375#(and (<= ~SIZE~0 4) (= main_~i~0 0))} is VALID [2018-11-23 12:34:47,322 INFO L273 TraceCheckUtils]: 37: Hoare triple {7375#(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; {7375#(and (<= ~SIZE~0 4) (= main_~i~0 0))} is VALID [2018-11-23 12:34:47,323 INFO L273 TraceCheckUtils]: 38: Hoare triple {7375#(and (<= ~SIZE~0 4) (= main_~i~0 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {7376#(<= ~SIZE~0 (+ main_~i~0 3))} is VALID [2018-11-23 12:34:47,323 INFO L273 TraceCheckUtils]: 39: Hoare triple {7376#(<= ~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; {7376#(<= ~SIZE~0 (+ main_~i~0 3))} is VALID [2018-11-23 12:34:47,324 INFO L273 TraceCheckUtils]: 40: Hoare triple {7376#(<= ~SIZE~0 (+ main_~i~0 3))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {7377#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:34:47,325 INFO L273 TraceCheckUtils]: 41: Hoare triple {7377#(<= ~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; {7377#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:34:47,325 INFO L273 TraceCheckUtils]: 42: Hoare triple {7377#(<= ~SIZE~0 (+ main_~i~0 2))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {7378#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:34:47,326 INFO L273 TraceCheckUtils]: 43: Hoare triple {7378#(<= ~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; {7378#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:34:47,327 INFO L273 TraceCheckUtils]: 44: Hoare triple {7378#(<= ~SIZE~0 (+ main_~i~0 1))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {7379#(<= ~SIZE~0 main_~i~0)} is VALID [2018-11-23 12:34:47,327 INFO L273 TraceCheckUtils]: 45: Hoare triple {7379#(<= ~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; {7368#false} is VALID [2018-11-23 12:34:47,327 INFO L273 TraceCheckUtils]: 46: Hoare triple {7368#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {7368#false} is VALID [2018-11-23 12:34:47,328 INFO L273 TraceCheckUtils]: 47: Hoare triple {7368#false} assume !(~i~0 < ~SIZE~0); {7368#false} is VALID [2018-11-23 12:34:47,328 INFO L256 TraceCheckUtils]: 48: Hoare triple {7368#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {7368#false} is VALID [2018-11-23 12:34:47,328 INFO L273 TraceCheckUtils]: 49: Hoare triple {7368#false} ~cond := #in~cond; {7368#false} is VALID [2018-11-23 12:34:47,328 INFO L273 TraceCheckUtils]: 50: Hoare triple {7368#false} assume 0 == ~cond; {7368#false} is VALID [2018-11-23 12:34:47,328 INFO L273 TraceCheckUtils]: 51: Hoare triple {7368#false} assume !false; {7368#false} is VALID [2018-11-23 12:34:47,331 INFO L134 CoverageAnalysis]: Checked inductivity of 73 backedges. 18 proven. 23 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2018-11-23 12:34:47,331 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:34:47,332 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:34:47,340 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 12:34:47,366 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 6 check-sat command(s) [2018-11-23 12:34:47,366 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:34:47,381 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:34:47,382 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:34:47,577 INFO L256 TraceCheckUtils]: 0: Hoare triple {7367#true} call ULTIMATE.init(); {7367#true} is VALID [2018-11-23 12:34:47,577 INFO L273 TraceCheckUtils]: 1: Hoare triple {7367#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {7367#true} is VALID [2018-11-23 12:34:47,577 INFO L273 TraceCheckUtils]: 2: Hoare triple {7367#true} assume true; {7367#true} is VALID [2018-11-23 12:34:47,578 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {7367#true} {7367#true} #83#return; {7367#true} is VALID [2018-11-23 12:34:47,578 INFO L256 TraceCheckUtils]: 4: Hoare triple {7367#true} call #t~ret10 := main(); {7367#true} is VALID [2018-11-23 12:34:47,578 INFO L273 TraceCheckUtils]: 5: Hoare triple {7367#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {7367#true} is VALID [2018-11-23 12:34:47,578 INFO L273 TraceCheckUtils]: 6: Hoare triple {7367#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; {7367#true} is VALID [2018-11-23 12:34:47,578 INFO L273 TraceCheckUtils]: 7: Hoare triple {7367#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; {7367#true} is VALID [2018-11-23 12:34:47,579 INFO L273 TraceCheckUtils]: 8: Hoare triple {7367#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7367#true} is VALID [2018-11-23 12:34:47,579 INFO L273 TraceCheckUtils]: 9: Hoare triple {7367#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; {7367#true} is VALID [2018-11-23 12:34:47,579 INFO L273 TraceCheckUtils]: 10: Hoare triple {7367#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7367#true} is VALID [2018-11-23 12:34:47,579 INFO L273 TraceCheckUtils]: 11: Hoare triple {7367#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; {7367#true} is VALID [2018-11-23 12:34:47,579 INFO L273 TraceCheckUtils]: 12: Hoare triple {7367#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7367#true} is VALID [2018-11-23 12:34:47,579 INFO L273 TraceCheckUtils]: 13: Hoare triple {7367#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; {7367#true} is VALID [2018-11-23 12:34:47,579 INFO L273 TraceCheckUtils]: 14: Hoare triple {7367#true} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7367#true} is VALID [2018-11-23 12:34:47,579 INFO L273 TraceCheckUtils]: 15: Hoare triple {7367#true} assume !(~i~0 < ~SIZE~0); {7367#true} is VALID [2018-11-23 12:34:47,579 INFO L273 TraceCheckUtils]: 16: Hoare triple {7367#true} ~i~0 := 0; {7367#true} is VALID [2018-11-23 12:34:47,580 INFO L273 TraceCheckUtils]: 17: Hoare triple {7367#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; {7367#true} is VALID [2018-11-23 12:34:47,580 INFO L273 TraceCheckUtils]: 18: Hoare triple {7367#true} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {7367#true} is VALID [2018-11-23 12:34:47,580 INFO L273 TraceCheckUtils]: 19: Hoare triple {7367#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; {7367#true} is VALID [2018-11-23 12:34:47,580 INFO L273 TraceCheckUtils]: 20: Hoare triple {7367#true} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {7367#true} is VALID [2018-11-23 12:34:47,580 INFO L273 TraceCheckUtils]: 21: Hoare triple {7367#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; {7367#true} is VALID [2018-11-23 12:34:47,580 INFO L273 TraceCheckUtils]: 22: Hoare triple {7367#true} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {7367#true} is VALID [2018-11-23 12:34:47,580 INFO L273 TraceCheckUtils]: 23: Hoare triple {7367#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; {7367#true} is VALID [2018-11-23 12:34:47,580 INFO L273 TraceCheckUtils]: 24: Hoare triple {7367#true} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {7367#true} is VALID [2018-11-23 12:34:47,580 INFO L273 TraceCheckUtils]: 25: Hoare triple {7367#true} assume !(~i~0 < ~SIZE~0); {7367#true} is VALID [2018-11-23 12:34:47,581 INFO L273 TraceCheckUtils]: 26: Hoare triple {7367#true} ~i~0 := 0; {7461#(<= main_~i~0 0)} is VALID [2018-11-23 12:34:47,581 INFO L273 TraceCheckUtils]: 27: Hoare triple {7461#(<= 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; {7461#(<= main_~i~0 0)} is VALID [2018-11-23 12:34:47,582 INFO L273 TraceCheckUtils]: 28: Hoare triple {7461#(<= main_~i~0 0)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {7370#(<= main_~i~0 1)} is VALID [2018-11-23 12:34:47,582 INFO L273 TraceCheckUtils]: 29: Hoare triple {7370#(<= 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; {7370#(<= main_~i~0 1)} is VALID [2018-11-23 12:34:47,582 INFO L273 TraceCheckUtils]: 30: Hoare triple {7370#(<= main_~i~0 1)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {7371#(<= main_~i~0 2)} is VALID [2018-11-23 12:34:47,583 INFO L273 TraceCheckUtils]: 31: Hoare triple {7371#(<= 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; {7371#(<= main_~i~0 2)} is VALID [2018-11-23 12:34:47,583 INFO L273 TraceCheckUtils]: 32: Hoare triple {7371#(<= main_~i~0 2)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {7372#(<= main_~i~0 3)} is VALID [2018-11-23 12:34:47,583 INFO L273 TraceCheckUtils]: 33: Hoare triple {7372#(<= main_~i~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; {7372#(<= main_~i~0 3)} is VALID [2018-11-23 12:34:47,584 INFO L273 TraceCheckUtils]: 34: Hoare triple {7372#(<= main_~i~0 3)} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {7373#(<= main_~i~0 4)} is VALID [2018-11-23 12:34:47,584 INFO L273 TraceCheckUtils]: 35: Hoare triple {7373#(<= main_~i~0 4)} assume !(~i~0 < ~SIZE~0); {7374#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:34:47,585 INFO L273 TraceCheckUtils]: 36: Hoare triple {7374#(<= ~SIZE~0 4)} ~i~0 := 0; {7492#(and (<= 0 main_~i~0) (<= ~SIZE~0 4))} is VALID [2018-11-23 12:34:47,586 INFO L273 TraceCheckUtils]: 37: Hoare triple {7492#(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; {7492#(and (<= 0 main_~i~0) (<= ~SIZE~0 4))} is VALID [2018-11-23 12:34:47,586 INFO L273 TraceCheckUtils]: 38: Hoare triple {7492#(and (<= 0 main_~i~0) (<= ~SIZE~0 4))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {7499#(and (<= 1 main_~i~0) (<= ~SIZE~0 4))} is VALID [2018-11-23 12:34:47,587 INFO L273 TraceCheckUtils]: 39: Hoare triple {7499#(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; {7499#(and (<= 1 main_~i~0) (<= ~SIZE~0 4))} is VALID [2018-11-23 12:34:47,588 INFO L273 TraceCheckUtils]: 40: Hoare triple {7499#(and (<= 1 main_~i~0) (<= ~SIZE~0 4))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {7506#(and (<= 2 main_~i~0) (<= ~SIZE~0 4))} is VALID [2018-11-23 12:34:47,589 INFO L273 TraceCheckUtils]: 41: Hoare triple {7506#(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; {7506#(and (<= 2 main_~i~0) (<= ~SIZE~0 4))} is VALID [2018-11-23 12:34:47,590 INFO L273 TraceCheckUtils]: 42: Hoare triple {7506#(and (<= 2 main_~i~0) (<= ~SIZE~0 4))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {7513#(and (<= ~SIZE~0 4) (<= 3 main_~i~0))} is VALID [2018-11-23 12:34:47,590 INFO L273 TraceCheckUtils]: 43: Hoare triple {7513#(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; {7513#(and (<= ~SIZE~0 4) (<= 3 main_~i~0))} is VALID [2018-11-23 12:34:47,591 INFO L273 TraceCheckUtils]: 44: Hoare triple {7513#(and (<= ~SIZE~0 4) (<= 3 main_~i~0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {7520#(and (<= 4 main_~i~0) (<= ~SIZE~0 4))} is VALID [2018-11-23 12:34:47,592 INFO L273 TraceCheckUtils]: 45: Hoare triple {7520#(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; {7368#false} is VALID [2018-11-23 12:34:47,592 INFO L273 TraceCheckUtils]: 46: Hoare triple {7368#false} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {7368#false} is VALID [2018-11-23 12:34:47,592 INFO L273 TraceCheckUtils]: 47: Hoare triple {7368#false} assume !(~i~0 < ~SIZE~0); {7368#false} is VALID [2018-11-23 12:34:47,593 INFO L256 TraceCheckUtils]: 48: Hoare triple {7368#false} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {7368#false} is VALID [2018-11-23 12:34:47,593 INFO L273 TraceCheckUtils]: 49: Hoare triple {7368#false} ~cond := #in~cond; {7368#false} is VALID [2018-11-23 12:34:47,593 INFO L273 TraceCheckUtils]: 50: Hoare triple {7368#false} assume 0 == ~cond; {7368#false} is VALID [2018-11-23 12:34:47,593 INFO L273 TraceCheckUtils]: 51: Hoare triple {7368#false} assume !false; {7368#false} is VALID [2018-11-23 12:34:47,596 INFO L134 CoverageAnalysis]: Checked inductivity of 73 backedges. 25 proven. 16 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2018-11-23 12:34:47,614 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:34:47,614 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 19 [2018-11-23 12:34:47,615 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 52 [2018-11-23 12:34:47,615 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:34:47,615 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states. [2018-11-23 12:34:47,677 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:34:47,677 INFO L459 AbstractCegarLoop]: Interpolant automaton has 19 states [2018-11-23 12:34:47,678 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2018-11-23 12:34:47,678 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=89, Invalid=253, Unknown=0, NotChecked=0, Total=342 [2018-11-23 12:34:47,678 INFO L87 Difference]: Start difference. First operand 124 states and 138 transitions. Second operand 19 states. [2018-11-23 12:34:49,686 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:34:49,686 INFO L93 Difference]: Finished difference Result 169 states and 185 transitions. [2018-11-23 12:34:49,686 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2018-11-23 12:34:49,686 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 52 [2018-11-23 12:34:49,687 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:34:49,687 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-23 12:34:49,689 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 114 transitions. [2018-11-23 12:34:49,689 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-23 12:34:49,690 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 114 transitions. [2018-11-23 12:34:49,690 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 114 transitions. [2018-11-23 12:34:49,842 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:34:49,843 INFO L225 Difference]: With dead ends: 169 [2018-11-23 12:34:49,843 INFO L226 Difference]: Without dead ends: 63 [2018-11-23 12:34:49,844 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 73 GetRequests, 51 SyntacticMatches, 0 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 119 ImplicationChecksByTransitivity, 1.0s TimeCoverageRelationStatistics Valid=144, Invalid=408, Unknown=0, NotChecked=0, Total=552 [2018-11-23 12:34:49,845 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 63 states. [2018-11-23 12:34:50,472 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 63 to 59. [2018-11-23 12:34:50,473 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:34:50,473 INFO L82 GeneralOperation]: Start isEquivalent. First operand 63 states. Second operand 59 states. [2018-11-23 12:34:50,473 INFO L74 IsIncluded]: Start isIncluded. First operand 63 states. Second operand 59 states. [2018-11-23 12:34:50,473 INFO L87 Difference]: Start difference. First operand 63 states. Second operand 59 states. [2018-11-23 12:34:50,474 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:34:50,474 INFO L93 Difference]: Finished difference Result 63 states and 66 transitions. [2018-11-23 12:34:50,474 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 66 transitions. [2018-11-23 12:34:50,475 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:34:50,475 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:34:50,475 INFO L74 IsIncluded]: Start isIncluded. First operand 59 states. Second operand 63 states. [2018-11-23 12:34:50,475 INFO L87 Difference]: Start difference. First operand 59 states. Second operand 63 states. [2018-11-23 12:34:50,476 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:34:50,476 INFO L93 Difference]: Finished difference Result 63 states and 66 transitions. [2018-11-23 12:34:50,476 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 66 transitions. [2018-11-23 12:34:50,476 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:34:50,476 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:34:50,476 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:34:50,476 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:34:50,477 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 59 states. [2018-11-23 12:34:50,477 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 62 transitions. [2018-11-23 12:34:50,478 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 62 transitions. Word has length 52 [2018-11-23 12:34:50,478 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:34:50,478 INFO L480 AbstractCegarLoop]: Abstraction has 59 states and 62 transitions. [2018-11-23 12:34:50,478 INFO L481 AbstractCegarLoop]: Interpolant automaton has 19 states. [2018-11-23 12:34:50,478 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 62 transitions. [2018-11-23 12:34:50,479 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2018-11-23 12:34:50,479 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:34:50,479 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:34:50,479 INFO L423 AbstractCegarLoop]: === Iteration 16 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:34:50,479 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:34:50,479 INFO L82 PathProgramCache]: Analyzing trace with hash -1509833995, now seen corresponding path program 12 times [2018-11-23 12:34:50,480 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:34:50,480 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:34:50,480 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:34:50,480 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:34:50,481 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:34:50,524 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:34:57,936 INFO L256 TraceCheckUtils]: 0: Hoare triple {8021#true} call ULTIMATE.init(); {8021#true} is VALID [2018-11-23 12:34:57,936 INFO L273 TraceCheckUtils]: 1: Hoare triple {8021#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {8021#true} is VALID [2018-11-23 12:34:57,936 INFO L273 TraceCheckUtils]: 2: Hoare triple {8021#true} assume true; {8021#true} is VALID [2018-11-23 12:34:57,936 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {8021#true} {8021#true} #83#return; {8021#true} is VALID [2018-11-23 12:34:57,937 INFO L256 TraceCheckUtils]: 4: Hoare triple {8021#true} call #t~ret10 := main(); {8021#true} is VALID [2018-11-23 12:34:57,937 INFO L273 TraceCheckUtils]: 5: Hoare triple {8021#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {8021#true} is VALID [2018-11-23 12:34:57,938 INFO L273 TraceCheckUtils]: 6: Hoare triple {8021#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; {8023#(and (= main_~sum~0 0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:57,939 INFO L273 TraceCheckUtils]: 7: Hoare triple {8023#(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; {8024#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (<= main_~sum~0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:57,940 INFO L273 TraceCheckUtils]: 8: Hoare triple {8024#(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; {8025#(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:34:57,941 INFO L273 TraceCheckUtils]: 9: Hoare triple {8025#(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; {8026#(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:34:57,943 INFO L273 TraceCheckUtils]: 10: Hoare triple {8026#(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; {8027#(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:34:57,944 INFO L273 TraceCheckUtils]: 11: Hoare triple {8027#(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; {8028#(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:34:57,946 INFO L273 TraceCheckUtils]: 12: Hoare triple {8028#(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; {8029#(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:34:57,948 INFO L273 TraceCheckUtils]: 13: Hoare triple {8029#(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; {8030#(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:34:57,949 INFO L273 TraceCheckUtils]: 14: Hoare triple {8030#(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; {8031#(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:34:57,951 INFO L273 TraceCheckUtils]: 15: Hoare triple {8031#(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; {8032#(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:34:57,954 INFO L273 TraceCheckUtils]: 16: Hoare triple {8032#(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; {8033#(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:34:57,956 INFO L273 TraceCheckUtils]: 17: Hoare triple {8033#(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); {8034#(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:34:57,957 INFO L273 TraceCheckUtils]: 18: Hoare triple {8034#(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; {8035#(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:34:57,958 INFO L273 TraceCheckUtils]: 19: Hoare triple {8035#(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; {8036#(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))))) (* 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_~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 (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_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:57,960 INFO L273 TraceCheckUtils]: 20: Hoare triple {8036#(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))))) (* 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_~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 (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_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {8037#(and (or (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |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 (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_~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:34:57,965 INFO L273 TraceCheckUtils]: 21: Hoare triple {8037#(and (or (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |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 (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_~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))} 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; {8038#(and (or (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |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))))))) (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~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) (= (+ (* 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:34:57,967 INFO L273 TraceCheckUtils]: 22: Hoare triple {8038#(and (or (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |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))))))) (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~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) (= (+ (* 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))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {8039#(and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) main_~sum~0) (= (+ (* 2 main_~i~0) 6) (* 2 ~SIZE~0)) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))))) (<= ~SIZE~0 5) (<= 5 ~SIZE~0)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:57,968 INFO L273 TraceCheckUtils]: 23: Hoare triple {8039#(and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) main_~sum~0) (= (+ (* 2 main_~i~0) 6) (* 2 ~SIZE~0)) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))))) (<= ~SIZE~0 5) (<= 5 ~SIZE~0)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 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; {8040#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0)) (and (= (+ (* 2 main_~i~0) 6) (* 2 ~SIZE~0)) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~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|)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))))) (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~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|)) (* 2 (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:34:57,971 INFO L273 TraceCheckUtils]: 24: Hoare triple {8040#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 7) (* 2 ~SIZE~0)) (and (= (+ (* 2 main_~i~0) 6) (* 2 ~SIZE~0)) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~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|)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))))) (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~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|)) (* 2 (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~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {8041#(and (or (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))))) (= (+ (* 2 main_~i~0) 4) (* 2 ~SIZE~0)) (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (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:34:57,973 INFO L273 TraceCheckUtils]: 25: Hoare triple {8041#(and (or (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))))) (= (+ (* 2 main_~i~0) 4) (* 2 ~SIZE~0)) (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (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~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {8042#(and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) main_~sum~0) (= (+ (* 2 main_~i~0) 4) (* 2 ~SIZE~0)) (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (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))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:57,975 INFO L273 TraceCheckUtils]: 26: Hoare triple {8042#(and (or (and (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) main_~sum~0) (= (+ (* 2 main_~i~0) 4) (* 2 ~SIZE~0)) (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (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))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {8043#(and (or (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (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)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 2 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:57,977 INFO L273 TraceCheckUtils]: 27: Hoare triple {8043#(and (or (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (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)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 3) (* 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; {8044#(and (or (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) main_~sum~0) (<= ~SIZE~0 5) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))))) (<= 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:34:57,979 INFO L273 TraceCheckUtils]: 28: Hoare triple {8044#(and (or (and (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) main_~sum~0) (<= ~SIZE~0 5) (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))))) (<= 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; {8045#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 1) (* 2 ~SIZE~0)) (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (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_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:57,981 INFO L273 TraceCheckUtils]: 29: Hoare triple {8045#(and (or (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 1) (* 2 ~SIZE~0)) (and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (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_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {8046#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (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_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:57,983 INFO L273 TraceCheckUtils]: 30: Hoare triple {8046#(and (<= main_~sum~0 (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))))) (<= (+ (* 2 (select (select |#memory_int| |main_~#a~0.base|) 0)) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (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_~#a~0.offset| 0))} ~i~0 := 0; {8047#(and (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (or (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (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))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (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) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) main_~sum~0)) (not (= 0 (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:57,985 INFO L273 TraceCheckUtils]: 31: Hoare triple {8047#(and (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (or (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (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))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (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) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) main_~sum~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; {8048#(and (or (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (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) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) 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:34:57,986 INFO L273 TraceCheckUtils]: 32: Hoare triple {8048#(and (or (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (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) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) 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; {8049#(and (or (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (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) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) 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:34:57,988 INFO L273 TraceCheckUtils]: 33: Hoare triple {8049#(and (or (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (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) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4))))))) 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; {8050#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 7)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 9) (* 2 ~SIZE~0)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (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|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))))))) (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:57,990 INFO L273 TraceCheckUtils]: 34: Hoare triple {8050#(and (or (<= (* 2 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 7)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 9) (* 2 ~SIZE~0)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (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|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 (+ ~SIZE~0 (- 3))) |main_~#a~0.offset|))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 4)))))))))) (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {8051#(and (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (or (<= (+ main_~i~0 4) ~SIZE~0) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 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) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 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 (+ main_~i~0 2))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:57,992 INFO L273 TraceCheckUtils]: 35: Hoare triple {8051#(and (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (or (<= (+ main_~i~0 4) ~SIZE~0) (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 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) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 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 (+ 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; {8052#(and (or (<= (+ main_~i~0 4) ~SIZE~0) (<= ~SIZE~0 (+ main_~i~0 2)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 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|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 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) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:57,995 INFO L273 TraceCheckUtils]: 36: Hoare triple {8052#(and (or (<= (+ main_~i~0 4) ~SIZE~0) (<= ~SIZE~0 (+ main_~i~0 2)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 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|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 2)))))) (* 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) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {8053#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |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|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |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 (+ main_~i~0 1)) (<= (+ (* 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:34:57,997 INFO L273 TraceCheckUtils]: 37: Hoare triple {8053#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |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|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |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 (+ main_~i~0 1)) (<= (+ (* 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; {8054#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |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|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |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 (+ main_~i~0 1)) (<= (+ (* 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:34:57,999 INFO L273 TraceCheckUtils]: 38: Hoare triple {8054#(and (or (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |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|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |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 (+ main_~i~0 1)) (<= (+ (* 2 main_~i~0) |main_~#a~0.offset| 5) (* 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; {8055#(and (or (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~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) (* 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|) (+ (* 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 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= (+ main_~i~0 2) ~SIZE~0)) (<= ~SIZE~0 5) (<= 5 ~SIZE~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:58,001 INFO L273 TraceCheckUtils]: 39: Hoare triple {8055#(and (or (and (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~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) (* 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|) (+ (* 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 ~SIZE~0) (+ (* 2 main_~i~0) |main_~#a~0.offset| 1)) (<= (+ 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; {8056#(and (or (<= (+ main_~i~0 2) ~SIZE~0) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |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)) (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~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) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:34:58,003 INFO L273 TraceCheckUtils]: 40: Hoare triple {8056#(and (or (<= (+ main_~i~0 2) ~SIZE~0) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |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)) (= (+ (* 2 main_~i~0) 2) (* 2 ~SIZE~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 main_~i~0))) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (* 2 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~SIZE~0 (- 1)))))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 2 (+ ~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) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {8057#(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:34:58,005 INFO L273 TraceCheckUtils]: 41: Hoare triple {8057#(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); {8034#(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:34:58,007 INFO L273 TraceCheckUtils]: 42: Hoare triple {8034#(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; {8058#(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:34:58,009 INFO L273 TraceCheckUtils]: 43: Hoare triple {8058#(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; {8059#(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:34:58,011 INFO L273 TraceCheckUtils]: 44: Hoare triple {8059#(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; {8060#(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:34:58,013 INFO L273 TraceCheckUtils]: 45: Hoare triple {8060#(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; {8061#(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:34:58,015 INFO L273 TraceCheckUtils]: 46: Hoare triple {8061#(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; {8062#(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:34:58,017 INFO L273 TraceCheckUtils]: 47: Hoare triple {8062#(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; {8063#(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:34:58,019 INFO L273 TraceCheckUtils]: 48: Hoare triple {8063#(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; {8064#(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:34:58,020 INFO L273 TraceCheckUtils]: 49: Hoare triple {8064#(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; {8065#(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:34:58,022 INFO L273 TraceCheckUtils]: 50: Hoare triple {8065#(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; {8066#(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:34:58,024 INFO L273 TraceCheckUtils]: 51: Hoare triple {8066#(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; {8067#(or (<= (+ main_~i~0 2) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} is VALID [2018-11-23 12:34:58,025 INFO L273 TraceCheckUtils]: 52: Hoare triple {8067#(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; {8068#(or (<= (+ main_~i~0 1) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} is VALID [2018-11-23 12:34:58,025 INFO L273 TraceCheckUtils]: 53: Hoare triple {8068#(or (<= (+ main_~i~0 1) ~SIZE~0) (and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0)))} assume !(~i~0 < ~SIZE~0); {8069#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:34:58,026 INFO L256 TraceCheckUtils]: 54: Hoare triple {8069#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {8070#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:34:58,027 INFO L273 TraceCheckUtils]: 55: Hoare triple {8070#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {8071#(= __VERIFIER_assert_~cond 1)} is VALID [2018-11-23 12:34:58,028 INFO L273 TraceCheckUtils]: 56: Hoare triple {8071#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {8022#false} is VALID [2018-11-23 12:34:58,028 INFO L273 TraceCheckUtils]: 57: Hoare triple {8022#false} assume !false; {8022#false} is VALID [2018-11-23 12:34:58,062 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:34:58,062 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:34:58,062 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:34:58,071 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 12:34:58,103 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 6 check-sat command(s) [2018-11-23 12:34:58,104 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:34:58,123 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:34:58,125 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:35:03,821 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:35:03,842 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:35:03,843 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:35:03,843 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:35:03,844 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:35:03,845 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:35:03,846 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:35:03,846 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:35:03,847 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:35:03,852 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:35:03,853 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:35:03,853 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:35:03,854 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:35:03,887 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:35:03,892 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:35:03,910 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:35:03,920 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:35:03,921 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 3 variables, input treesize:123, output treesize:7 [2018-11-23 12:35:04,014 INFO L256 TraceCheckUtils]: 0: Hoare triple {8021#true} call ULTIMATE.init(); {8021#true} is VALID [2018-11-23 12:35:04,015 INFO L273 TraceCheckUtils]: 1: Hoare triple {8021#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {8021#true} is VALID [2018-11-23 12:35:04,015 INFO L273 TraceCheckUtils]: 2: Hoare triple {8021#true} assume true; {8021#true} is VALID [2018-11-23 12:35:04,015 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {8021#true} {8021#true} #83#return; {8021#true} is VALID [2018-11-23 12:35:04,015 INFO L256 TraceCheckUtils]: 4: Hoare triple {8021#true} call #t~ret10 := main(); {8021#true} is VALID [2018-11-23 12:35:04,015 INFO L273 TraceCheckUtils]: 5: Hoare triple {8021#true} assume -32768 <= #t~nondet1 && #t~nondet1 <= 32767;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {8021#true} is VALID [2018-11-23 12:35:04,016 INFO L273 TraceCheckUtils]: 6: Hoare triple {8021#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; {8023#(and (= main_~sum~0 0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:35:04,016 INFO L273 TraceCheckUtils]: 7: Hoare triple {8023#(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; {8024#(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:35:04,017 INFO L273 TraceCheckUtils]: 8: Hoare triple {8024#(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; {8025#(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:35:04,018 INFO L273 TraceCheckUtils]: 9: Hoare triple {8025#(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; {8026#(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:35:04,019 INFO L273 TraceCheckUtils]: 10: Hoare triple {8026#(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; {8027#(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:35:04,019 INFO L273 TraceCheckUtils]: 11: Hoare triple {8027#(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; {8028#(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:35:04,021 INFO L273 TraceCheckUtils]: 12: Hoare triple {8028#(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; {8029#(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:35:04,023 INFO L273 TraceCheckUtils]: 13: Hoare triple {8029#(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; {8030#(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:35:04,024 INFO L273 TraceCheckUtils]: 14: Hoare triple {8030#(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; {8117#(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:35:04,027 INFO L273 TraceCheckUtils]: 15: Hoare triple {8117#(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; {8121#(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:35:04,028 INFO L273 TraceCheckUtils]: 16: Hoare triple {8121#(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; {8121#(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:35:04,030 INFO L273 TraceCheckUtils]: 17: Hoare triple {8121#(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); {8121#(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:35:04,031 INFO L273 TraceCheckUtils]: 18: Hoare triple {8121#(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; {8131#(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:35:04,033 INFO L273 TraceCheckUtils]: 19: Hoare triple {8131#(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; {8135#(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|) (+ (* 2 main_~i~0) |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 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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 4 v_prenex_5))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:35:04,035 INFO L273 TraceCheckUtils]: 20: Hoare triple {8135#(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|) (+ (* 2 main_~i~0) |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 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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 4 v_prenex_5))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {8139#(and (exists ((v_prenex_5 Int)) (and (<= (+ (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|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2)))) main_~sum~0) (<= v_prenex_5 4) (<= 4 v_prenex_5) (<= 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|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:35:04,037 INFO L273 TraceCheckUtils]: 21: Hoare triple {8139#(and (exists ((v_prenex_5 Int)) (and (<= (+ (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|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2)))) main_~sum~0) (<= v_prenex_5 4) (<= 4 v_prenex_5) (<= 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|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |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; {8143#(and (= main_~i~0 1) (exists ((v_prenex_5 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_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|) |main_~#a~0.offset|) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 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|) |main_~#a~0.offset|) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:35:04,040 INFO L273 TraceCheckUtils]: 22: Hoare triple {8143#(and (= main_~i~0 1) (exists ((v_prenex_5 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_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|) |main_~#a~0.offset|) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 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|) |main_~#a~0.offset|) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {8147#(and (= main_~i~0 2) (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|) (+ |main_~#a~0.offset| 2)) (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|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2)))) main_~sum~0) (<= 4 v_prenex_5) (<= 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)) (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|) |main_~#a~0.offset|) (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:35:04,042 INFO L273 TraceCheckUtils]: 23: Hoare triple {8147#(and (= main_~i~0 2) (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|) (+ |main_~#a~0.offset| 2)) (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|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2)))) main_~sum~0) (<= 4 v_prenex_5) (<= 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)) (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|) |main_~#a~0.offset|) (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; {8151#(and (= main_~i~0 2) (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|) (+ |main_~#a~0.offset| 2)) (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|) |main_~#a~0.offset|) (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|) (+ (* 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|) (+ |main_~#a~0.offset| 2)) (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|) |main_~#a~0.offset|) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 4 v_prenex_5))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:35:04,045 INFO L273 TraceCheckUtils]: 24: Hoare triple {8151#(and (= main_~i~0 2) (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|) (+ |main_~#a~0.offset| 2)) (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|) |main_~#a~0.offset|) (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|) (+ (* 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|) (+ |main_~#a~0.offset| 2)) (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|) |main_~#a~0.offset|) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= 4 v_prenex_5))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {8155#(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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 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|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2)))) 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)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) |main_~#a~0.offset|) (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:35:04,047 INFO L273 TraceCheckUtils]: 25: Hoare triple {8155#(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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 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|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2)))) 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)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) |main_~#a~0.offset|) (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);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {8159#(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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 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|) |main_~#a~0.offset|) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) |main_~#a~0.offset|) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 4 v_prenex_5))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:35:04,050 INFO L273 TraceCheckUtils]: 26: Hoare triple {8159#(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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 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|) |main_~#a~0.offset|) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|))) main_~sum~0) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) |main_~#a~0.offset|) (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|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)))) (<= 4 v_prenex_5))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {8163#(and (exists ((v_prenex_5 Int)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|) |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|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2)))) main_~sum~0) (<= v_prenex_5 4) (<= 4 v_prenex_5) (<= 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)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) |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|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:35:04,053 INFO L273 TraceCheckUtils]: 27: Hoare triple {8163#(and (exists ((v_prenex_5 Int)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|) |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|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2)))) main_~sum~0) (<= v_prenex_5 4) (<= 4 v_prenex_5) (<= 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)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) |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|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))))))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem5 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 + #t~mem5;havoc #t~mem5; {8167#(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|) 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|) (+ (* 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|) |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|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|) |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|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) main_~sum~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:35:04,054 INFO L273 TraceCheckUtils]: 28: Hoare triple {8167#(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|) 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|) (+ (* 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|) |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|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|) |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|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) main_~sum~0))) (= |main_~#a~0.offset| 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {8167#(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|) 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|) (+ (* 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|) |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|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|) |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|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) main_~sum~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:35:04,055 INFO L273 TraceCheckUtils]: 29: Hoare triple {8167#(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|) 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|) (+ (* 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|) |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|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|) |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|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) main_~sum~0))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {8167#(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|) 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|) (+ (* 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|) |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|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|) |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|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) main_~sum~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:35:04,057 INFO L273 TraceCheckUtils]: 30: Hoare triple {8167#(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|) 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|) (+ (* 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|) |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|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|) |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|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) main_~sum~0))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {8177#(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|) 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|) (+ (* 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|) |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|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|) |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|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) main_~sum~0))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:35:04,060 INFO L273 TraceCheckUtils]: 31: Hoare triple {8177#(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|) 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|) (+ (* 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|) |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|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)))) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|) |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|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) main_~sum~0))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 2 * ~i~0, 2);~sum~0 := ~sum~0 - #t~mem7;havoc #t~mem7; {8181#(and (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= (+ (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|) 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|) (+ (* 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|) |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|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)))) (<= 4 v_prenex_5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|) |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|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ |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_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:35:04,062 INFO L273 TraceCheckUtils]: 32: Hoare triple {8181#(and (exists ((v_prenex_5 Int)) (and (<= v_prenex_5 4) (<= (+ (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|) 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|) (+ (* 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|) |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|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)))) (<= 4 v_prenex_5) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|) |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|) (+ (* 2 v_prenex_5) |main_~#a~0.offset| (- 2))) (select (select |#memory_int| |main_~#a~0.base|) (+ |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_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {8185#(and (exists ((v_prenex_5 Int)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|) (+ |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| 8))) main_~sum~0) (<= v_prenex_5 4) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) (+ |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| 8)))) (<= 4 v_prenex_5))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:35:04,064 INFO L273 TraceCheckUtils]: 33: Hoare triple {8185#(and (exists ((v_prenex_5 Int)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|) (+ |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| 8))) main_~sum~0) (<= v_prenex_5 4) (<= main_~sum~0 (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) (+ |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| 8)))) (<= 4 v_prenex_5))) (= 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; {8189#(and (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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 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|) (+ |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| 8))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|) (+ |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| 8)))))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:35:04,066 INFO L273 TraceCheckUtils]: 34: Hoare triple {8189#(and (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|) (+ |main_~#a~0.offset| 2)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 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|) (+ |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| 8))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ (* 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|) (+ |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| 8)))))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {8193#(and (= main_~i~0 2) (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|) (+ |main_~#a~0.offset| 4)) (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|) (+ |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| 8))) 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| 4)) (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|) (+ |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| 8)))) (<= 4 v_prenex_5))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:35:04,068 INFO L273 TraceCheckUtils]: 35: Hoare triple {8193#(and (= main_~i~0 2) (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|) (+ |main_~#a~0.offset| 4)) (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|) (+ |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| 8))) 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| 4)) (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|) (+ |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| 8)))) (<= 4 v_prenex_5))) (= |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; {8197#(and (= main_~i~0 2) (exists ((v_prenex_5 Int)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) (+ |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| 8))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (<= v_prenex_5 4) (<= 4 v_prenex_5) (<= (+ (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|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) (+ |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| 8)))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:35:04,070 INFO L273 TraceCheckUtils]: 36: Hoare triple {8197#(and (= main_~i~0 2) (exists ((v_prenex_5 Int)) (and (<= (+ (select (select |#memory_int| |main_~#a~0.base|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) (+ |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| 8))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (<= v_prenex_5 4) (<= 4 v_prenex_5) (<= (+ (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|) 0) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (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|) (+ |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| 8)))))) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {8201#(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|) (+ |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| 8))) main_~sum~0) (<= 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|) (+ |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| 8)))) (<= 4 v_prenex_5))) (= main_~i~0 3) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:35:04,073 INFO L273 TraceCheckUtils]: 37: Hoare triple {8201#(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|) (+ |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| 8))) main_~sum~0) (<= 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|) (+ |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| 8)))) (<= 4 v_prenex_5))) (= main_~i~0 3) (= |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; {8205#(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|) (+ |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| 8))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ |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| 8)))) (<= 4 v_prenex_5))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:35:04,076 INFO L273 TraceCheckUtils]: 38: Hoare triple {8205#(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|) (+ |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| 8))) (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0)) (<= (+ (select (select |#memory_int| |main_~#a~0.base|) (+ (* 2 main_~i~0) |main_~#a~0.offset|)) main_~sum~0) (+ (select (select |#memory_int| |main_~#a~0.base|) 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|) (+ |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| 8)))) (<= 4 v_prenex_5))) (= |main_~#a~0.offset| 0))} #t~post6 := ~i~0;~i~0 := 1 + #t~post6;havoc #t~post6; {8209#(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))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)))) (<= 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| 8))) main_~sum~0))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:35:04,078 INFO L273 TraceCheckUtils]: 39: Hoare triple {8209#(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))) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)))) (<= 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| 8))) main_~sum~0))) (= 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; {8121#(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:35:04,080 INFO L273 TraceCheckUtils]: 40: Hoare triple {8121#(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; {8121#(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:35:04,081 INFO L273 TraceCheckUtils]: 41: Hoare triple {8121#(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); {8121#(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:35:04,082 INFO L273 TraceCheckUtils]: 42: Hoare triple {8121#(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; {8131#(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:35:04,084 INFO L273 TraceCheckUtils]: 43: Hoare triple {8131#(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; {8225#(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:35:04,086 INFO L273 TraceCheckUtils]: 44: Hoare triple {8225#(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; {8229#(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:35:04,089 INFO L273 TraceCheckUtils]: 45: Hoare triple {8229#(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; {8233#(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:35:04,091 INFO L273 TraceCheckUtils]: 46: Hoare triple {8233#(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; {8237#(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:35:04,094 INFO L273 TraceCheckUtils]: 47: Hoare triple {8237#(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; {8241#(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:35:04,096 INFO L273 TraceCheckUtils]: 48: Hoare triple {8241#(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; {8245#(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:35:04,099 INFO L273 TraceCheckUtils]: 49: Hoare triple {8245#(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; {8249#(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:35:04,101 INFO L273 TraceCheckUtils]: 50: Hoare triple {8249#(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; {8253#(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:35:04,103 INFO L273 TraceCheckUtils]: 51: Hoare triple {8253#(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; {8069#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:35:04,104 INFO L273 TraceCheckUtils]: 52: Hoare triple {8069#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} #t~post8 := ~i~0;~i~0 := 1 + #t~post8;havoc #t~post8; {8069#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:35:04,105 INFO L273 TraceCheckUtils]: 53: Hoare triple {8069#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} assume !(~i~0 < ~SIZE~0); {8069#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} is VALID [2018-11-23 12:35:04,106 INFO L256 TraceCheckUtils]: 54: Hoare triple {8069#(and (< 0 (+ main_~sum~0 1)) (<= main_~sum~0 0))} call __VERIFIER_assert((if 0 == ~sum~0 then 1 else 0)); {8070#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:35:04,106 INFO L273 TraceCheckUtils]: 55: Hoare triple {8070#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {8071#(= __VERIFIER_assert_~cond 1)} is VALID [2018-11-23 12:35:04,107 INFO L273 TraceCheckUtils]: 56: Hoare triple {8071#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {8022#false} is VALID [2018-11-23 12:35:04,107 INFO L273 TraceCheckUtils]: 57: Hoare triple {8022#false} assume !false; {8022#false} is VALID [2018-11-23 12:35:04,136 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:35:04,155 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:35:04,155 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [51, 42] total 80 [2018-11-23 12:35:04,155 INFO L78 Accepts]: Start accepts. Automaton has 80 states. Word has length 58 [2018-11-23 12:35:04,156 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:35:04,156 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 80 states. [2018-11-23 12:35:04,374 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:35:04,374 INFO L459 AbstractCegarLoop]: Interpolant automaton has 80 states [2018-11-23 12:35:04,375 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 80 interpolants. [2018-11-23 12:35:04,377 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=339, Invalid=5981, Unknown=0, NotChecked=0, Total=6320 [2018-11-23 12:35:04,377 INFO L87 Difference]: Start difference. First operand 59 states and 62 transitions. Second operand 80 states. [2018-11-23 12:35:10,464 WARN L180 SmtUtils]: Spent 566.00 ms on a formula simplification. DAG size of input: 151 DAG size of output: 132 [2018-11-23 12:35:11,930 WARN L180 SmtUtils]: Spent 100.00 ms on a formula simplification. DAG size of input: 144 DAG size of output: 39 [2018-11-23 12:35:12,641 WARN L180 SmtUtils]: Spent 116.00 ms on a formula simplification. DAG size of input: 147 DAG size of output: 45 [2018-11-23 12:35:13,321 WARN L180 SmtUtils]: Spent 108.00 ms on a formula simplification. DAG size of input: 156 DAG size of output: 40 [2018-11-23 12:35:14,076 WARN L180 SmtUtils]: Spent 147.00 ms on a formula simplification. DAG size of input: 156 DAG size of output: 43 [2018-11-23 12:35:14,771 WARN L180 SmtUtils]: Spent 135.00 ms on a formula simplification. DAG size of input: 168 DAG size of output: 44 [2018-11-23 12:35:15,429 WARN L180 SmtUtils]: Spent 121.00 ms on a formula simplification. DAG size of input: 168 DAG size of output: 46 [2018-11-23 12:35:16,112 WARN L180 SmtUtils]: Spent 136.00 ms on a formula simplification. DAG size of input: 186 DAG size of output: 45 [2018-11-23 12:35:17,426 WARN L180 SmtUtils]: Spent 769.00 ms on a formula simplification. DAG size of input: 157 DAG size of output: 123 [2018-11-23 12:35:18,243 WARN L180 SmtUtils]: Spent 174.00 ms on a formula simplification that was a NOOP. DAG size: 105 [2018-11-23 12:35:19,755 WARN L180 SmtUtils]: Spent 886.00 ms on a formula simplification. DAG size of input: 152 DAG size of output: 129 [2018-11-23 12:35:20,607 WARN L180 SmtUtils]: Spent 131.00 ms on a formula simplification. DAG size of input: 106 DAG size of output: 79 [2018-11-23 12:35:22,247 WARN L180 SmtUtils]: Spent 101.00 ms on a formula simplification. DAG size of input: 160 DAG size of output: 44 [2018-11-23 12:35:23,129 WARN L180 SmtUtils]: Spent 415.00 ms on a formula simplification. DAG size of input: 153 DAG size of output: 107 [2018-11-23 12:35:23,914 WARN L180 SmtUtils]: Spent 153.00 ms on a formula simplification. DAG size of input: 175 DAG size of output: 45 [2018-11-23 12:35:25,184 WARN L180 SmtUtils]: Spent 125.00 ms on a formula simplification. DAG size of input: 179 DAG size of output: 52 [2018-11-23 12:35:25,756 WARN L180 SmtUtils]: Spent 129.00 ms on a formula simplification. DAG size of input: 176 DAG size of output: 48 [2018-11-23 12:35:26,556 WARN L180 SmtUtils]: Spent 153.00 ms on a formula simplification. DAG size of input: 181 DAG size of output: 43 [2018-11-23 12:35:27,221 WARN L180 SmtUtils]: Spent 160.00 ms on a formula simplification. DAG size of input: 182 DAG size of output: 66 [2018-11-23 12:35:27,929 WARN L180 SmtUtils]: Spent 136.00 ms on a formula simplification. DAG size of input: 182 DAG size of output: 49 [2018-11-23 12:35:28,627 WARN L180 SmtUtils]: Spent 146.00 ms on a formula simplification. DAG size of input: 186 DAG size of output: 59 [2018-11-23 12:35:29,423 WARN L180 SmtUtils]: Spent 197.00 ms on a formula simplification. DAG size of input: 209 DAG size of output: 45 [2018-11-23 12:35:30,241 WARN L180 SmtUtils]: Spent 162.00 ms on a formula simplification. DAG size of input: 190 DAG size of output: 66 [2018-11-23 12:35:30,963 WARN L180 SmtUtils]: Spent 148.00 ms on a formula simplification. DAG size of input: 210 DAG size of output: 50 [2018-11-23 12:35:31,713 WARN L180 SmtUtils]: Spent 168.00 ms on a formula simplification. DAG size of input: 191 DAG size of output: 58 [2018-11-23 12:35:32,441 WARN L180 SmtUtils]: Spent 161.00 ms on a formula simplification. DAG size of input: 189 DAG size of output: 46 [2018-11-23 12:35:33,198 WARN L180 SmtUtils]: Spent 192.00 ms on a formula simplification. DAG size of input: 220 DAG size of output: 70 [2018-11-23 12:35:34,155 WARN L180 SmtUtils]: Spent 505.00 ms on a formula simplification. DAG size of input: 148 DAG size of output: 124 [2018-11-23 12:35:35,020 WARN L180 SmtUtils]: Spent 181.00 ms on a formula simplification. DAG size of input: 221 DAG size of output: 61 [2018-11-23 12:35:35,808 WARN L180 SmtUtils]: Spent 167.00 ms on a formula simplification that was a NOOP. DAG size: 104 [2018-11-23 12:35:36,609 WARN L180 SmtUtils]: Spent 195.00 ms on a formula simplification. DAG size of input: 203 DAG size of output: 73 [2018-11-23 12:35:37,817 WARN L180 SmtUtils]: Spent 390.00 ms on a formula simplification. DAG size of input: 160 DAG size of output: 123 [2018-11-23 12:35:38,717 WARN L180 SmtUtils]: Spent 382.00 ms on a formula simplification. DAG size of input: 158 DAG size of output: 103 [2018-11-23 12:35:39,914 WARN L180 SmtUtils]: Spent 355.00 ms on a formula simplification. DAG size of input: 114 DAG size of output: 106 [2018-11-23 12:35:40,735 WARN L180 SmtUtils]: Spent 207.00 ms on a formula simplification. DAG size of input: 111 DAG size of output: 87