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-tiling/mlceu_false-unreach-call.i -------------------------------------------------------------------------------- This is Ultimate 0.1.23-61f4311 [2018-11-23 12:17:42,641 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 12:17:42,645 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 12:17:42,660 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 12:17:42,660 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 12:17:42,662 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 12:17:42,663 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 12:17:42,664 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 12:17:42,667 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 12:17:42,668 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 12:17:42,669 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 12:17:42,670 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 12:17:42,672 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 12:17:42,673 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 12:17:42,678 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 12:17:42,679 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 12:17:42,684 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 12:17:42,687 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 12:17:42,692 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 12:17:42,696 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 12:17:42,697 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 12:17:42,700 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 12:17:42,704 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 12:17:42,704 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 12:17:42,705 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 12:17:42,705 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 12:17:42,709 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 12:17:42,710 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 12:17:42,711 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 12:17:42,711 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 12:17:42,712 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 12:17:42,712 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 12:17:42,713 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 12:17:42,714 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 12:17:42,715 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 12:17:42,715 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 12:17:42,717 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:17:42,745 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 12:17:42,746 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 12:17:42,747 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 12:17:42,747 INFO L133 SettingsManager]: * ... calls to implemented procedures=ONLY_FOR_CONCURRENT_PROGRAMS [2018-11-23 12:17:42,748 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 12:17:42,748 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 12:17:42,748 INFO L133 SettingsManager]: * Use SBE=true [2018-11-23 12:17:42,748 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 12:17:42,749 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 12:17:42,749 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-23 12:17:42,749 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 12:17:42,749 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 12:17:42,749 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 12:17:42,751 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 12:17:42,751 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 12:17:42,751 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 12:17:42,751 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 12:17:42,751 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 12:17:42,752 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 12:17:42,752 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 12:17:42,752 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-23 12:17:42,752 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 12:17:42,752 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-23 12:17:42,754 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 12:17:42,754 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 12:17:42,754 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 12:17:42,755 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 12:17:42,755 INFO L133 SettingsManager]: * Trace refinement strategy=CAMEL [2018-11-23 12:17:42,755 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 12:17:42,755 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-11-23 12:17:42,755 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2018-11-23 12:17:42,824 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 12:17:42,841 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 12:17:42,846 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 12:17:42,848 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 12:17:42,848 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 12:17:42,849 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/array-tiling/mlceu_false-unreach-call.i [2018-11-23 12:17:42,907 INFO L221 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/fdd792842/126fcf5128e34ceaac590bd2fc245f0b/FLAG5cb40c131 [2018-11-23 12:17:43,387 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 12:17:43,388 INFO L161 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/array-tiling/mlceu_false-unreach-call.i [2018-11-23 12:17:43,397 INFO L355 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/fdd792842/126fcf5128e34ceaac590bd2fc245f0b/FLAG5cb40c131 [2018-11-23 12:17:43,739 INFO L363 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/fdd792842/126fcf5128e34ceaac590bd2fc245f0b [2018-11-23 12:17:43,748 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 12:17:43,750 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 12:17:43,751 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 12:17:43,751 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 12:17:43,755 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 12:17:43,756 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 12:17:43" (1/1) ... [2018-11-23 12:17:43,759 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2ef5bbb0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:17:43, skipping insertion in model container [2018-11-23 12:17:43,759 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 12:17:43" (1/1) ... [2018-11-23 12:17:43,770 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 12:17:43,792 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 12:17:44,015 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 12:17:44,021 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 12:17:44,052 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 12:17:44,087 INFO L195 MainTranslator]: Completed translation [2018-11-23 12:17:44,088 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:17:44 WrapperNode [2018-11-23 12:17:44,088 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 12:17:44,089 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 12:17:44,089 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 12:17:44,089 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 12:17:44,100 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:17:44" (1/1) ... [2018-11-23 12:17:44,112 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:17:44" (1/1) ... [2018-11-23 12:17:44,121 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 12:17:44,122 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 12:17:44,122 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 12:17:44,122 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 12:17:44,134 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:17:44" (1/1) ... [2018-11-23 12:17:44,134 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:17:44" (1/1) ... [2018-11-23 12:17:44,137 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:17:44" (1/1) ... [2018-11-23 12:17:44,137 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:17:44" (1/1) ... [2018-11-23 12:17:44,159 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:17:44" (1/1) ... [2018-11-23 12:17:44,168 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:17:44" (1/1) ... [2018-11-23 12:17:44,170 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:17:44" (1/1) ... [2018-11-23 12:17:44,177 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 12:17:44,178 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 12:17:44,178 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 12:17:44,178 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 12:17:44,179 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:17:44" (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:17:44,322 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2018-11-23 12:17:44,322 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-23 12:17:44,322 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-23 12:17:44,323 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 12:17:44,323 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 12:17:44,323 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 12:17:44,323 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-23 12:17:44,323 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-23 12:17:44,323 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-23 12:17:44,324 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2018-11-23 12:17:44,324 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2018-11-23 12:17:44,324 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 12:17:44,881 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 12:17:44,881 INFO L280 CfgBuilder]: Removed 2 assue(true) statements. [2018-11-23 12:17:44,882 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 12:17:44 BoogieIcfgContainer [2018-11-23 12:17:44,882 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 12:17:44,883 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-23 12:17:44,883 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-23 12:17:44,887 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-23 12:17:44,887 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 12:17:43" (1/3) ... [2018-11-23 12:17:44,888 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@35f77720 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 12:17:44, skipping insertion in model container [2018-11-23 12:17:44,888 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 12:17:44" (2/3) ... [2018-11-23 12:17:44,889 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@35f77720 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 12:17:44, skipping insertion in model container [2018-11-23 12:17:44,889 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 12:17:44" (3/3) ... [2018-11-23 12:17:44,891 INFO L112 eAbstractionObserver]: Analyzing ICFG mlceu_false-unreach-call.i [2018-11-23 12:17:44,899 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-23 12:17:44,907 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-23 12:17:44,926 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-23 12:17:44,967 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-23 12:17:44,968 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-23 12:17:44,968 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-23 12:17:44,968 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-23 12:17:44,968 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-23 12:17:44,968 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-23 12:17:44,969 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-23 12:17:44,969 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-23 12:17:44,969 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-23 12:17:44,989 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states. [2018-11-23 12:17:44,995 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 15 [2018-11-23 12:17:44,996 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:17:44,997 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:17:44,999 INFO L423 AbstractCegarLoop]: === Iteration 1 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:17:45,005 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:17:45,005 INFO L82 PathProgramCache]: Analyzing trace with hash 1959366484, now seen corresponding path program 1 times [2018-11-23 12:17:45,007 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:17:45,007 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:17:45,057 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:45,058 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:17:45,058 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:45,121 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:45,187 INFO L256 TraceCheckUtils]: 0: Hoare triple {30#true} call ULTIMATE.init(); {30#true} is VALID [2018-11-23 12:17:45,191 INFO L273 TraceCheckUtils]: 1: Hoare triple {30#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {30#true} is VALID [2018-11-23 12:17:45,192 INFO L273 TraceCheckUtils]: 2: Hoare triple {30#true} assume true; {30#true} is VALID [2018-11-23 12:17:45,193 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {30#true} {30#true} #61#return; {30#true} is VALID [2018-11-23 12:17:45,193 INFO L256 TraceCheckUtils]: 4: Hoare triple {30#true} call #t~ret5 := main(); {30#true} is VALID [2018-11-23 12:17:45,194 INFO L273 TraceCheckUtils]: 5: Hoare triple {30#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {30#true} is VALID [2018-11-23 12:17:45,194 INFO L273 TraceCheckUtils]: 6: Hoare triple {30#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {30#true} is VALID [2018-11-23 12:17:45,195 INFO L273 TraceCheckUtils]: 7: Hoare triple {30#true} assume !true; {31#false} is VALID [2018-11-23 12:17:45,195 INFO L273 TraceCheckUtils]: 8: Hoare triple {31#false} ~i~0 := 0; {31#false} is VALID [2018-11-23 12:17:45,196 INFO L273 TraceCheckUtils]: 9: Hoare triple {31#false} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {31#false} is VALID [2018-11-23 12:17:45,196 INFO L256 TraceCheckUtils]: 10: Hoare triple {31#false} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {31#false} is VALID [2018-11-23 12:17:45,196 INFO L273 TraceCheckUtils]: 11: Hoare triple {31#false} ~cond := #in~cond; {31#false} is VALID [2018-11-23 12:17:45,197 INFO L273 TraceCheckUtils]: 12: Hoare triple {31#false} assume 0 == ~cond; {31#false} is VALID [2018-11-23 12:17:45,197 INFO L273 TraceCheckUtils]: 13: Hoare triple {31#false} assume !false; {31#false} is VALID [2018-11-23 12:17:45,200 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:17:45,203 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 12:17:45,203 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-23 12:17:45,209 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 14 [2018-11-23 12:17:45,212 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:17:45,216 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states. [2018-11-23 12:17:45,333 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 14 edges. 14 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:17:45,334 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-23 12:17:45,344 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-23 12:17:45,345 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 12:17:45,348 INFO L87 Difference]: Start difference. First operand 27 states. Second operand 2 states. [2018-11-23 12:17:45,542 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:45,543 INFO L93 Difference]: Finished difference Result 44 states and 53 transitions. [2018-11-23 12:17:45,543 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-23 12:17:45,543 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 14 [2018-11-23 12:17:45,543 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:17:45,545 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-23 12:17:45,555 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 53 transitions. [2018-11-23 12:17:45,556 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-23 12:17:45,560 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 53 transitions. [2018-11-23 12:17:45,561 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 53 transitions. [2018-11-23 12:17:45,843 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:17:45,855 INFO L225 Difference]: With dead ends: 44 [2018-11-23 12:17:45,856 INFO L226 Difference]: Without dead ends: 21 [2018-11-23 12:17:45,861 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:17:45,878 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 21 states. [2018-11-23 12:17:45,906 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 21 to 21. [2018-11-23 12:17:45,906 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:17:45,906 INFO L82 GeneralOperation]: Start isEquivalent. First operand 21 states. Second operand 21 states. [2018-11-23 12:17:45,907 INFO L74 IsIncluded]: Start isIncluded. First operand 21 states. Second operand 21 states. [2018-11-23 12:17:45,907 INFO L87 Difference]: Start difference. First operand 21 states. Second operand 21 states. [2018-11-23 12:17:45,910 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:45,911 INFO L93 Difference]: Finished difference Result 21 states and 23 transitions. [2018-11-23 12:17:45,911 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 23 transitions. [2018-11-23 12:17:45,912 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:45,912 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:45,912 INFO L74 IsIncluded]: Start isIncluded. First operand 21 states. Second operand 21 states. [2018-11-23 12:17:45,912 INFO L87 Difference]: Start difference. First operand 21 states. Second operand 21 states. [2018-11-23 12:17:45,916 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:45,916 INFO L93 Difference]: Finished difference Result 21 states and 23 transitions. [2018-11-23 12:17:45,916 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 23 transitions. [2018-11-23 12:17:45,917 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:45,917 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:45,917 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:17:45,917 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:17:45,918 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 21 states. [2018-11-23 12:17:45,920 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 23 transitions. [2018-11-23 12:17:45,922 INFO L78 Accepts]: Start accepts. Automaton has 21 states and 23 transitions. Word has length 14 [2018-11-23 12:17:45,922 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:17:45,922 INFO L480 AbstractCegarLoop]: Abstraction has 21 states and 23 transitions. [2018-11-23 12:17:45,922 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-23 12:17:45,923 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 23 transitions. [2018-11-23 12:17:45,923 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 15 [2018-11-23 12:17:45,923 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:17:45,924 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:17:45,924 INFO L423 AbstractCegarLoop]: === Iteration 2 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:17:45,924 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:17:45,924 INFO L82 PathProgramCache]: Analyzing trace with hash 786760585, now seen corresponding path program 1 times [2018-11-23 12:17:45,925 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:17:45,925 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:17:45,926 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:45,926 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:17:45,926 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:45,949 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:46,147 INFO L256 TraceCheckUtils]: 0: Hoare triple {160#true} call ULTIMATE.init(); {160#true} is VALID [2018-11-23 12:17:46,148 INFO L273 TraceCheckUtils]: 1: Hoare triple {160#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {160#true} is VALID [2018-11-23 12:17:46,148 INFO L273 TraceCheckUtils]: 2: Hoare triple {160#true} assume true; {160#true} is VALID [2018-11-23 12:17:46,149 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {160#true} {160#true} #61#return; {160#true} is VALID [2018-11-23 12:17:46,149 INFO L256 TraceCheckUtils]: 4: Hoare triple {160#true} call #t~ret5 := main(); {160#true} is VALID [2018-11-23 12:17:46,149 INFO L273 TraceCheckUtils]: 5: Hoare triple {160#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {160#true} is VALID [2018-11-23 12:17:46,151 INFO L273 TraceCheckUtils]: 6: Hoare triple {160#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {162#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:17:46,154 INFO L273 TraceCheckUtils]: 7: Hoare triple {162#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} assume !(~i~0 < ~SIZE~0); {161#false} is VALID [2018-11-23 12:17:46,154 INFO L273 TraceCheckUtils]: 8: Hoare triple {161#false} ~i~0 := 0; {161#false} is VALID [2018-11-23 12:17:46,154 INFO L273 TraceCheckUtils]: 9: Hoare triple {161#false} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {161#false} is VALID [2018-11-23 12:17:46,155 INFO L256 TraceCheckUtils]: 10: Hoare triple {161#false} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {161#false} is VALID [2018-11-23 12:17:46,155 INFO L273 TraceCheckUtils]: 11: Hoare triple {161#false} ~cond := #in~cond; {161#false} is VALID [2018-11-23 12:17:46,156 INFO L273 TraceCheckUtils]: 12: Hoare triple {161#false} assume 0 == ~cond; {161#false} is VALID [2018-11-23 12:17:46,156 INFO L273 TraceCheckUtils]: 13: Hoare triple {161#false} assume !false; {161#false} is VALID [2018-11-23 12:17:46,157 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:17:46,158 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 12:17:46,158 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2018-11-23 12:17:46,159 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 14 [2018-11-23 12:17:46,160 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:17:46,160 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2018-11-23 12:17:46,204 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 14 edges. 14 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:17:46,205 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2018-11-23 12:17:46,205 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2018-11-23 12:17:46,205 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-23 12:17:46,206 INFO L87 Difference]: Start difference. First operand 21 states and 23 transitions. Second operand 3 states. [2018-11-23 12:17:46,395 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:46,395 INFO L93 Difference]: Finished difference Result 38 states and 44 transitions. [2018-11-23 12:17:46,396 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-23 12:17:46,396 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 14 [2018-11-23 12:17:46,396 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:17:46,396 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-23 12:17:46,404 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 44 transitions. [2018-11-23 12:17:46,404 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-23 12:17:46,407 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 44 transitions. [2018-11-23 12:17:46,407 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 44 transitions. [2018-11-23 12:17:46,608 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:17:46,610 INFO L225 Difference]: With dead ends: 38 [2018-11-23 12:17:46,611 INFO L226 Difference]: Without dead ends: 24 [2018-11-23 12:17:46,612 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-23 12:17:46,613 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 24 states. [2018-11-23 12:17:46,745 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 24 to 23. [2018-11-23 12:17:46,746 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:17:46,746 INFO L82 GeneralOperation]: Start isEquivalent. First operand 24 states. Second operand 23 states. [2018-11-23 12:17:46,746 INFO L74 IsIncluded]: Start isIncluded. First operand 24 states. Second operand 23 states. [2018-11-23 12:17:46,746 INFO L87 Difference]: Start difference. First operand 24 states. Second operand 23 states. [2018-11-23 12:17:46,748 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:46,749 INFO L93 Difference]: Finished difference Result 24 states and 26 transitions. [2018-11-23 12:17:46,749 INFO L276 IsEmpty]: Start isEmpty. Operand 24 states and 26 transitions. [2018-11-23 12:17:46,750 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:46,750 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:46,750 INFO L74 IsIncluded]: Start isIncluded. First operand 23 states. Second operand 24 states. [2018-11-23 12:17:46,750 INFO L87 Difference]: Start difference. First operand 23 states. Second operand 24 states. [2018-11-23 12:17:46,752 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:46,752 INFO L93 Difference]: Finished difference Result 24 states and 26 transitions. [2018-11-23 12:17:46,753 INFO L276 IsEmpty]: Start isEmpty. Operand 24 states and 26 transitions. [2018-11-23 12:17:46,753 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:46,753 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:46,754 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:17:46,754 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:17:46,754 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 23 states. [2018-11-23 12:17:46,756 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 25 transitions. [2018-11-23 12:17:46,756 INFO L78 Accepts]: Start accepts. Automaton has 23 states and 25 transitions. Word has length 14 [2018-11-23 12:17:46,756 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:17:46,756 INFO L480 AbstractCegarLoop]: Abstraction has 23 states and 25 transitions. [2018-11-23 12:17:46,757 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2018-11-23 12:17:46,757 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 25 transitions. [2018-11-23 12:17:46,757 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2018-11-23 12:17:46,758 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:17:46,758 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:17:46,758 INFO L423 AbstractCegarLoop]: === Iteration 3 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:17:46,758 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:17:46,759 INFO L82 PathProgramCache]: Analyzing trace with hash 1100225495, now seen corresponding path program 1 times [2018-11-23 12:17:46,759 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:17:46,759 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:17:46,760 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:46,760 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:17:46,760 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:46,780 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:46,983 INFO L256 TraceCheckUtils]: 0: Hoare triple {296#true} call ULTIMATE.init(); {296#true} is VALID [2018-11-23 12:17:46,984 INFO L273 TraceCheckUtils]: 1: Hoare triple {296#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {296#true} is VALID [2018-11-23 12:17:46,984 INFO L273 TraceCheckUtils]: 2: Hoare triple {296#true} assume true; {296#true} is VALID [2018-11-23 12:17:46,985 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {296#true} {296#true} #61#return; {296#true} is VALID [2018-11-23 12:17:46,985 INFO L256 TraceCheckUtils]: 4: Hoare triple {296#true} call #t~ret5 := main(); {296#true} is VALID [2018-11-23 12:17:46,986 INFO L273 TraceCheckUtils]: 5: Hoare triple {296#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {296#true} is VALID [2018-11-23 12:17:46,987 INFO L273 TraceCheckUtils]: 6: Hoare triple {296#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {298#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:17:46,991 INFO L273 TraceCheckUtils]: 7: Hoare triple {298#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} assume !!(~i~0 < ~SIZE~0); {298#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:17:46,992 INFO L273 TraceCheckUtils]: 8: Hoare triple {298#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {298#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:17:46,992 INFO L273 TraceCheckUtils]: 9: Hoare triple {298#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {299#(<= (+ main_~i~0 1) ~SIZE~0)} is VALID [2018-11-23 12:17:46,997 INFO L273 TraceCheckUtils]: 10: Hoare triple {299#(<= (+ main_~i~0 1) ~SIZE~0)} assume !(~i~0 < ~SIZE~0); {297#false} is VALID [2018-11-23 12:17:46,997 INFO L273 TraceCheckUtils]: 11: Hoare triple {297#false} ~i~0 := 0; {297#false} is VALID [2018-11-23 12:17:46,997 INFO L273 TraceCheckUtils]: 12: Hoare triple {297#false} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {297#false} is VALID [2018-11-23 12:17:46,997 INFO L256 TraceCheckUtils]: 13: Hoare triple {297#false} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {297#false} is VALID [2018-11-23 12:17:46,998 INFO L273 TraceCheckUtils]: 14: Hoare triple {297#false} ~cond := #in~cond; {297#false} is VALID [2018-11-23 12:17:46,998 INFO L273 TraceCheckUtils]: 15: Hoare triple {297#false} assume 0 == ~cond; {297#false} is VALID [2018-11-23 12:17:46,998 INFO L273 TraceCheckUtils]: 16: Hoare triple {297#false} assume !false; {297#false} is VALID [2018-11-23 12:17:47,000 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:17:47,000 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:17:47,000 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:17:47,013 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:17:47,034 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:47,060 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:47,065 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:17:47,264 INFO L256 TraceCheckUtils]: 0: Hoare triple {296#true} call ULTIMATE.init(); {296#true} is VALID [2018-11-23 12:17:47,265 INFO L273 TraceCheckUtils]: 1: Hoare triple {296#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {296#true} is VALID [2018-11-23 12:17:47,266 INFO L273 TraceCheckUtils]: 2: Hoare triple {296#true} assume true; {296#true} is VALID [2018-11-23 12:17:47,266 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {296#true} {296#true} #61#return; {296#true} is VALID [2018-11-23 12:17:47,267 INFO L256 TraceCheckUtils]: 4: Hoare triple {296#true} call #t~ret5 := main(); {296#true} is VALID [2018-11-23 12:17:47,267 INFO L273 TraceCheckUtils]: 5: Hoare triple {296#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {296#true} is VALID [2018-11-23 12:17:47,274 INFO L273 TraceCheckUtils]: 6: Hoare triple {296#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {321#(and (< 1 ~SIZE~0) (<= main_~i~0 0))} is VALID [2018-11-23 12:17:47,275 INFO L273 TraceCheckUtils]: 7: Hoare triple {321#(and (< 1 ~SIZE~0) (<= main_~i~0 0))} assume !!(~i~0 < ~SIZE~0); {321#(and (< 1 ~SIZE~0) (<= main_~i~0 0))} is VALID [2018-11-23 12:17:47,276 INFO L273 TraceCheckUtils]: 8: Hoare triple {321#(and (< 1 ~SIZE~0) (<= main_~i~0 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {321#(and (< 1 ~SIZE~0) (<= main_~i~0 0))} is VALID [2018-11-23 12:17:47,276 INFO L273 TraceCheckUtils]: 9: Hoare triple {321#(and (< 1 ~SIZE~0) (<= main_~i~0 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {331#(and (< 1 ~SIZE~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:17:47,278 INFO L273 TraceCheckUtils]: 10: Hoare triple {331#(and (< 1 ~SIZE~0) (<= main_~i~0 1))} assume !(~i~0 < ~SIZE~0); {297#false} is VALID [2018-11-23 12:17:47,278 INFO L273 TraceCheckUtils]: 11: Hoare triple {297#false} ~i~0 := 0; {297#false} is VALID [2018-11-23 12:17:47,279 INFO L273 TraceCheckUtils]: 12: Hoare triple {297#false} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {297#false} is VALID [2018-11-23 12:17:47,279 INFO L256 TraceCheckUtils]: 13: Hoare triple {297#false} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {297#false} is VALID [2018-11-23 12:17:47,280 INFO L273 TraceCheckUtils]: 14: Hoare triple {297#false} ~cond := #in~cond; {297#false} is VALID [2018-11-23 12:17:47,280 INFO L273 TraceCheckUtils]: 15: Hoare triple {297#false} assume 0 == ~cond; {297#false} is VALID [2018-11-23 12:17:47,280 INFO L273 TraceCheckUtils]: 16: Hoare triple {297#false} assume !false; {297#false} is VALID [2018-11-23 12:17:47,282 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:17:47,302 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:17:47,302 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4] total 6 [2018-11-23 12:17:47,302 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 17 [2018-11-23 12:17:47,303 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:17:47,303 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2018-11-23 12:17:47,387 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:17:47,387 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2018-11-23 12:17:47,388 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2018-11-23 12:17:47,388 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2018-11-23 12:17:47,388 INFO L87 Difference]: Start difference. First operand 23 states and 25 transitions. Second operand 6 states. [2018-11-23 12:17:47,689 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:47,689 INFO L93 Difference]: Finished difference Result 41 states and 47 transitions. [2018-11-23 12:17:47,689 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-23 12:17:47,690 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 17 [2018-11-23 12:17:47,690 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:17:47,690 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 12:17:47,693 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 47 transitions. [2018-11-23 12:17:47,693 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 12:17:47,696 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 47 transitions. [2018-11-23 12:17:47,696 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 47 transitions. [2018-11-23 12:17:47,801 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:17:47,804 INFO L225 Difference]: With dead ends: 41 [2018-11-23 12:17:47,804 INFO L226 Difference]: Without dead ends: 27 [2018-11-23 12:17:47,805 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 20 GetRequests, 16 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:17:47,805 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2018-11-23 12:17:47,825 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 26. [2018-11-23 12:17:47,826 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:17:47,826 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand 26 states. [2018-11-23 12:17:47,826 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand 26 states. [2018-11-23 12:17:47,827 INFO L87 Difference]: Start difference. First operand 27 states. Second operand 26 states. [2018-11-23 12:17:47,829 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:47,829 INFO L93 Difference]: Finished difference Result 27 states and 29 transitions. [2018-11-23 12:17:47,829 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 29 transitions. [2018-11-23 12:17:47,829 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:47,829 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:47,830 INFO L74 IsIncluded]: Start isIncluded. First operand 26 states. Second operand 27 states. [2018-11-23 12:17:47,830 INFO L87 Difference]: Start difference. First operand 26 states. Second operand 27 states. [2018-11-23 12:17:47,832 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:47,832 INFO L93 Difference]: Finished difference Result 27 states and 29 transitions. [2018-11-23 12:17:47,832 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 29 transitions. [2018-11-23 12:17:47,833 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:47,833 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:47,833 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:17:47,833 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:17:47,834 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 26 states. [2018-11-23 12:17:47,835 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 28 transitions. [2018-11-23 12:17:47,836 INFO L78 Accepts]: Start accepts. Automaton has 26 states and 28 transitions. Word has length 17 [2018-11-23 12:17:47,836 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:17:47,836 INFO L480 AbstractCegarLoop]: Abstraction has 26 states and 28 transitions. [2018-11-23 12:17:47,836 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2018-11-23 12:17:47,836 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 28 transitions. [2018-11-23 12:17:47,837 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2018-11-23 12:17:47,837 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:17:47,837 INFO L402 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:17:47,838 INFO L423 AbstractCegarLoop]: === Iteration 4 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:17:47,838 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:17:47,838 INFO L82 PathProgramCache]: Analyzing trace with hash -2020509495, now seen corresponding path program 2 times [2018-11-23 12:17:47,838 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:17:47,838 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:17:47,839 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:47,840 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:17:47,840 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:47,881 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:48,680 INFO L256 TraceCheckUtils]: 0: Hoare triple {497#true} call ULTIMATE.init(); {497#true} is VALID [2018-11-23 12:17:48,681 INFO L273 TraceCheckUtils]: 1: Hoare triple {497#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {497#true} is VALID [2018-11-23 12:17:48,682 INFO L273 TraceCheckUtils]: 2: Hoare triple {497#true} assume true; {497#true} is VALID [2018-11-23 12:17:48,682 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {497#true} {497#true} #61#return; {497#true} is VALID [2018-11-23 12:17:48,682 INFO L256 TraceCheckUtils]: 4: Hoare triple {497#true} call #t~ret5 := main(); {497#true} is VALID [2018-11-23 12:17:48,683 INFO L273 TraceCheckUtils]: 5: Hoare triple {497#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {497#true} is VALID [2018-11-23 12:17:48,684 INFO L273 TraceCheckUtils]: 6: Hoare triple {497#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {499#(and (<= 2 ~SIZE~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:48,684 INFO L273 TraceCheckUtils]: 7: Hoare triple {499#(and (<= 2 ~SIZE~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {499#(and (<= 2 ~SIZE~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:48,685 INFO L273 TraceCheckUtils]: 8: Hoare triple {499#(and (<= 2 ~SIZE~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {500#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0)))) (<= 2 ~SIZE~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:48,686 INFO L273 TraceCheckUtils]: 9: Hoare triple {500#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0)))) (<= 2 ~SIZE~0) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {501#(and (or (= 0 (select (store (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0)) 0) 0)) (<= (+ (* 4 main_~i~0) |main_~#a~0.offset| 5) (* 4 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:48,687 INFO L273 TraceCheckUtils]: 10: Hoare triple {501#(and (or (= 0 (select (store (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0)) 0) 0)) (<= (+ (* 4 main_~i~0) |main_~#a~0.offset| 5) (* 4 ~SIZE~0))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {501#(and (or (= 0 (select (store (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0)) 0) 0)) (<= (+ (* 4 main_~i~0) |main_~#a~0.offset| 5) (* 4 ~SIZE~0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:48,689 INFO L273 TraceCheckUtils]: 11: Hoare triple {501#(and (or (= 0 (select (store (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0)) 0) 0)) (<= (+ (* 4 main_~i~0) |main_~#a~0.offset| 5) (* 4 ~SIZE~0))) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {502#(and (or (<= (+ (* 4 main_~i~0) |main_~#a~0.offset| 5) (* 4 ~SIZE~0)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) 0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:48,694 INFO L273 TraceCheckUtils]: 12: Hoare triple {502#(and (or (<= (+ (* 4 main_~i~0) |main_~#a~0.offset| 5) (* 4 ~SIZE~0)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) 0))) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {503#(and (or (<= (+ (* 4 main_~i~0) |main_~#a~0.offset| 4) (* 4 ~SIZE~0)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) 0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:48,695 INFO L273 TraceCheckUtils]: 13: Hoare triple {503#(and (or (<= (+ (* 4 main_~i~0) |main_~#a~0.offset| 4) (* 4 ~SIZE~0)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) 0))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {504#(and (= |main_~#a~0.offset| 0) (= 0 (select (select |#memory_int| |main_~#a~0.base|) 0)))} is VALID [2018-11-23 12:17:48,696 INFO L273 TraceCheckUtils]: 14: Hoare triple {504#(and (= |main_~#a~0.offset| 0) (= 0 (select (select |#memory_int| |main_~#a~0.base|) 0)))} ~i~0 := 0; {505#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:48,697 INFO L273 TraceCheckUtils]: 15: Hoare triple {505#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {506#(= |main_#t~mem4| 0)} is VALID [2018-11-23 12:17:48,697 INFO L256 TraceCheckUtils]: 16: Hoare triple {506#(= |main_#t~mem4| 0)} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {507#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:17:48,704 INFO L273 TraceCheckUtils]: 17: Hoare triple {507#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {508#(= __VERIFIER_assert_~cond 1)} is VALID [2018-11-23 12:17:48,704 INFO L273 TraceCheckUtils]: 18: Hoare triple {508#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {498#false} is VALID [2018-11-23 12:17:48,705 INFO L273 TraceCheckUtils]: 19: Hoare triple {498#false} assume !false; {498#false} is VALID [2018-11-23 12:17:48,707 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:17:48,708 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:17:48,708 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 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:17:48,717 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:17:48,737 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:17:48,738 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:17:48,754 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:48,755 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:17:48,855 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 12 [2018-11-23 12:17:48,859 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 11 [2018-11-23 12:17:48,866 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:17:48,873 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:17:48,880 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:17:48,880 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:22, output treesize:18 [2018-11-23 12:17:48,966 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 18 [2018-11-23 12:17:48,979 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:17:48,980 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 27 [2018-11-23 12:17:48,986 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:17:48,996 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:17:49,008 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 12:17:49,009 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:29, output treesize:25 [2018-11-23 12:17:49,013 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:17:49,013 WARN L384 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_9|, main_~i~0]. (let ((.cse0 (select |v_#memory_int_9| |main_~#a~0.base|))) (and (<= 1 main_~i~0) (= (select .cse0 |main_~#a~0.offset|) 0) (= (store |v_#memory_int_9| |main_~#a~0.base| (store .cse0 (+ (* 4 main_~i~0) |main_~#a~0.offset|) 0)) |#memory_int|) (= |main_~#a~0.offset| 0))) [2018-11-23 12:17:49,013 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ [main_~i~0]. (let ((.cse0 (select |#memory_int| |main_~#a~0.base|))) (and (= 0 (select .cse0 (+ (* 4 main_~i~0) |main_~#a~0.offset|))) (<= 1 main_~i~0) (= 0 (select .cse0 |main_~#a~0.offset|)) (= |main_~#a~0.offset| 0))) [2018-11-23 12:17:49,247 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 24 treesize of output 18 [2018-11-23 12:17:49,261 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:17:49,264 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 10 [2018-11-23 12:17:49,266 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:17:49,272 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:17:49,279 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:17:49,279 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 3 variables, input treesize:27, output treesize:3 [2018-11-23 12:17:49,281 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:17:49,281 WARN L384 uantifierElimination]: Input elimination task: ∃ [|#memory_int|, |main_~#a~0.base|, v_prenex_1]. (let ((.cse1 (select |#memory_int| |main_~#a~0.base|))) (let ((.cse0 (select .cse1 0))) (and (<= 1 v_prenex_1) (= .cse0 |main_#t~mem4|) (= (select .cse1 (* 4 v_prenex_1)) 0) (= .cse0 0)))) [2018-11-23 12:17:49,282 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (= 0 |main_#t~mem4|) [2018-11-23 12:17:49,310 INFO L256 TraceCheckUtils]: 0: Hoare triple {497#true} call ULTIMATE.init(); {497#true} is VALID [2018-11-23 12:17:49,310 INFO L273 TraceCheckUtils]: 1: Hoare triple {497#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {497#true} is VALID [2018-11-23 12:17:49,310 INFO L273 TraceCheckUtils]: 2: Hoare triple {497#true} assume true; {497#true} is VALID [2018-11-23 12:17:49,310 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {497#true} {497#true} #61#return; {497#true} is VALID [2018-11-23 12:17:49,311 INFO L256 TraceCheckUtils]: 4: Hoare triple {497#true} call #t~ret5 := main(); {497#true} is VALID [2018-11-23 12:17:49,311 INFO L273 TraceCheckUtils]: 5: Hoare triple {497#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {497#true} is VALID [2018-11-23 12:17:49,312 INFO L273 TraceCheckUtils]: 6: Hoare triple {497#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {530#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:49,317 INFO L273 TraceCheckUtils]: 7: Hoare triple {530#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {530#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:49,318 INFO L273 TraceCheckUtils]: 8: Hoare triple {530#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {505#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:49,319 INFO L273 TraceCheckUtils]: 9: Hoare triple {505#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0)))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {540#(and (<= 1 main_~i~0) (= 0 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:49,325 INFO L273 TraceCheckUtils]: 10: Hoare triple {540#(and (<= 1 main_~i~0) (= 0 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {540#(and (<= 1 main_~i~0) (= 0 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:49,327 INFO L273 TraceCheckUtils]: 11: Hoare triple {540#(and (<= 1 main_~i~0) (= 0 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {547#(and (exists ((main_~i~0 Int)) (and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~i~0) |main_~#a~0.offset|))) (<= 1 main_~i~0))) (= 0 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:49,329 INFO L273 TraceCheckUtils]: 12: Hoare triple {547#(and (exists ((main_~i~0 Int)) (and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~i~0) |main_~#a~0.offset|))) (<= 1 main_~i~0))) (= 0 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {547#(and (exists ((main_~i~0 Int)) (and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~i~0) |main_~#a~0.offset|))) (<= 1 main_~i~0))) (= 0 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:49,330 INFO L273 TraceCheckUtils]: 13: Hoare triple {547#(and (exists ((main_~i~0 Int)) (and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~i~0) |main_~#a~0.offset|))) (<= 1 main_~i~0))) (= 0 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {547#(and (exists ((main_~i~0 Int)) (and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~i~0) |main_~#a~0.offset|))) (<= 1 main_~i~0))) (= 0 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:49,333 INFO L273 TraceCheckUtils]: 14: Hoare triple {547#(and (exists ((main_~i~0 Int)) (and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~i~0) |main_~#a~0.offset|))) (<= 1 main_~i~0))) (= 0 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {557#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (exists ((v_prenex_1 Int)) (and (<= 1 v_prenex_1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_prenex_1) |main_~#a~0.offset|))))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:49,348 INFO L273 TraceCheckUtils]: 15: Hoare triple {557#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (exists ((v_prenex_1 Int)) (and (<= 1 v_prenex_1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_prenex_1) |main_~#a~0.offset|))))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {506#(= |main_#t~mem4| 0)} is VALID [2018-11-23 12:17:49,361 INFO L256 TraceCheckUtils]: 16: Hoare triple {506#(= |main_#t~mem4| 0)} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {507#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:17:49,374 INFO L273 TraceCheckUtils]: 17: Hoare triple {507#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {508#(= __VERIFIER_assert_~cond 1)} is VALID [2018-11-23 12:17:49,386 INFO L273 TraceCheckUtils]: 18: Hoare triple {508#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {498#false} is VALID [2018-11-23 12:17:49,387 INFO L273 TraceCheckUtils]: 19: Hoare triple {498#false} assume !false; {498#false} is VALID [2018-11-23 12:17:49,390 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:17:49,420 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:17:49,420 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 10] total 16 [2018-11-23 12:17:49,421 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 20 [2018-11-23 12:17:49,421 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:17:49,422 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states. [2018-11-23 12:17:49,594 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:17:49,594 INFO L459 AbstractCegarLoop]: Interpolant automaton has 16 states [2018-11-23 12:17:49,595 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2018-11-23 12:17:49,595 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=66, Invalid=174, Unknown=0, NotChecked=0, Total=240 [2018-11-23 12:17:49,595 INFO L87 Difference]: Start difference. First operand 26 states and 28 transitions. Second operand 16 states. [2018-11-23 12:17:51,981 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:51,982 INFO L93 Difference]: Finished difference Result 48 states and 54 transitions. [2018-11-23 12:17:51,982 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2018-11-23 12:17:51,982 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 20 [2018-11-23 12:17:51,983 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:17:51,983 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-23 12:17:51,986 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 52 transitions. [2018-11-23 12:17:51,986 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-23 12:17:51,990 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 52 transitions. [2018-11-23 12:17:51,990 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 52 transitions. [2018-11-23 12:17:52,073 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:17:52,077 INFO L225 Difference]: With dead ends: 48 [2018-11-23 12:17:52,078 INFO L226 Difference]: Without dead ends: 46 [2018-11-23 12:17:52,079 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 35 GetRequests, 14 SyntacticMatches, 3 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 129 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=99, Invalid=281, Unknown=0, NotChecked=0, Total=380 [2018-11-23 12:17:52,079 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 46 states. [2018-11-23 12:17:52,179 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 46 to 32. [2018-11-23 12:17:52,180 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:17:52,180 INFO L82 GeneralOperation]: Start isEquivalent. First operand 46 states. Second operand 32 states. [2018-11-23 12:17:52,180 INFO L74 IsIncluded]: Start isIncluded. First operand 46 states. Second operand 32 states. [2018-11-23 12:17:52,180 INFO L87 Difference]: Start difference. First operand 46 states. Second operand 32 states. [2018-11-23 12:17:52,185 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:52,185 INFO L93 Difference]: Finished difference Result 46 states and 52 transitions. [2018-11-23 12:17:52,186 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 52 transitions. [2018-11-23 12:17:52,187 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:52,187 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:52,187 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand 46 states. [2018-11-23 12:17:52,187 INFO L87 Difference]: Start difference. First operand 32 states. Second operand 46 states. [2018-11-23 12:17:52,191 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:52,191 INFO L93 Difference]: Finished difference Result 46 states and 52 transitions. [2018-11-23 12:17:52,191 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 52 transitions. [2018-11-23 12:17:52,192 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:52,192 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:52,193 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:17:52,193 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:17:52,193 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 32 states. [2018-11-23 12:17:52,195 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 34 transitions. [2018-11-23 12:17:52,195 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 34 transitions. Word has length 20 [2018-11-23 12:17:52,196 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:17:52,196 INFO L480 AbstractCegarLoop]: Abstraction has 32 states and 34 transitions. [2018-11-23 12:17:52,196 INFO L481 AbstractCegarLoop]: Interpolant automaton has 16 states. [2018-11-23 12:17:52,196 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 34 transitions. [2018-11-23 12:17:52,197 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2018-11-23 12:17:52,197 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:17:52,197 INFO L402 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:17:52,198 INFO L423 AbstractCegarLoop]: === Iteration 5 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:17:52,198 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:17:52,198 INFO L82 PathProgramCache]: Analyzing trace with hash -651885956, now seen corresponding path program 1 times [2018-11-23 12:17:52,198 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:17:52,198 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:17:52,200 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:52,200 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:17:52,200 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:52,218 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:52,768 INFO L256 TraceCheckUtils]: 0: Hoare triple {783#true} call ULTIMATE.init(); {783#true} is VALID [2018-11-23 12:17:52,769 INFO L273 TraceCheckUtils]: 1: Hoare triple {783#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {783#true} is VALID [2018-11-23 12:17:52,769 INFO L273 TraceCheckUtils]: 2: Hoare triple {783#true} assume true; {783#true} is VALID [2018-11-23 12:17:52,769 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {783#true} {783#true} #61#return; {783#true} is VALID [2018-11-23 12:17:52,770 INFO L256 TraceCheckUtils]: 4: Hoare triple {783#true} call #t~ret5 := main(); {783#true} is VALID [2018-11-23 12:17:52,770 INFO L273 TraceCheckUtils]: 5: Hoare triple {783#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {783#true} is VALID [2018-11-23 12:17:52,777 INFO L273 TraceCheckUtils]: 6: Hoare triple {783#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {785#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:17:52,777 INFO L273 TraceCheckUtils]: 7: Hoare triple {785#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} assume !!(~i~0 < ~SIZE~0); {785#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:17:52,778 INFO L273 TraceCheckUtils]: 8: Hoare triple {785#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {785#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} is VALID [2018-11-23 12:17:52,779 INFO L273 TraceCheckUtils]: 9: Hoare triple {785#(and (<= 2 ~SIZE~0) (= main_~i~0 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {786#(and (<= main_~i~0 1) (<= 2 ~SIZE~0))} is VALID [2018-11-23 12:17:52,779 INFO L273 TraceCheckUtils]: 10: Hoare triple {786#(and (<= main_~i~0 1) (<= 2 ~SIZE~0))} assume !!(~i~0 < ~SIZE~0); {786#(and (<= main_~i~0 1) (<= 2 ~SIZE~0))} is VALID [2018-11-23 12:17:52,780 INFO L273 TraceCheckUtils]: 11: Hoare triple {786#(and (<= main_~i~0 1) (<= 2 ~SIZE~0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {787#(and (<= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0)))) (<= 2 ~SIZE~0))} is VALID [2018-11-23 12:17:52,798 INFO L273 TraceCheckUtils]: 12: Hoare triple {787#(and (<= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0)))) (<= 2 ~SIZE~0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {788#(and (or (<= (+ main_~i~0 1) ~SIZE~0) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 (+ (- ~SIZE~0) 1))))))) (<= main_~i~0 ~SIZE~0))} is VALID [2018-11-23 12:17:52,813 INFO L273 TraceCheckUtils]: 13: Hoare triple {788#(and (or (<= (+ main_~i~0 1) ~SIZE~0) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 (+ (- ~SIZE~0) 1))))))) (<= main_~i~0 ~SIZE~0))} assume !(~i~0 < ~SIZE~0); {789#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 1))))} is VALID [2018-11-23 12:17:52,829 INFO L273 TraceCheckUtils]: 14: Hoare triple {789#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 1))))} ~i~0 := 0; {790#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 1)))) (= main_~i~0 0))} is VALID [2018-11-23 12:17:52,834 INFO L273 TraceCheckUtils]: 15: Hoare triple {790#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 1)))) (= main_~i~0 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {790#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 1)))) (= main_~i~0 0))} is VALID [2018-11-23 12:17:52,835 INFO L256 TraceCheckUtils]: 16: Hoare triple {790#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 1)))) (= main_~i~0 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {783#true} is VALID [2018-11-23 12:17:52,835 INFO L273 TraceCheckUtils]: 17: Hoare triple {783#true} ~cond := #in~cond; {791#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} is VALID [2018-11-23 12:17:52,836 INFO L273 TraceCheckUtils]: 18: Hoare triple {791#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} assume !(0 == ~cond); {792#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:17:52,850 INFO L273 TraceCheckUtils]: 19: Hoare triple {792#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {792#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:17:52,851 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {792#(not (= |__VERIFIER_assert_#in~cond| 0))} {790#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 1)))) (= main_~i~0 0))} #65#return; {790#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 1)))) (= main_~i~0 0))} is VALID [2018-11-23 12:17:52,852 INFO L273 TraceCheckUtils]: 21: Hoare triple {790#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 1)))) (= main_~i~0 0))} havoc #t~mem4; {790#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 1)))) (= main_~i~0 0))} is VALID [2018-11-23 12:17:52,854 INFO L273 TraceCheckUtils]: 22: Hoare triple {790#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 1)))) (= main_~i~0 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {793#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0))))} is VALID [2018-11-23 12:17:52,854 INFO L273 TraceCheckUtils]: 23: Hoare triple {793#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {794#(= |main_#t~mem4| 0)} is VALID [2018-11-23 12:17:52,856 INFO L256 TraceCheckUtils]: 24: Hoare triple {794#(= |main_#t~mem4| 0)} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {792#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:17:52,858 INFO L273 TraceCheckUtils]: 25: Hoare triple {792#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {795#(not (= __VERIFIER_assert_~cond 0))} is VALID [2018-11-23 12:17:52,862 INFO L273 TraceCheckUtils]: 26: Hoare triple {795#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {784#false} is VALID [2018-11-23 12:17:52,862 INFO L273 TraceCheckUtils]: 27: Hoare triple {784#false} assume !false; {784#false} is VALID [2018-11-23 12:17:52,865 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 1 proven. 8 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:17:52,865 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:17:52,865 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:17:52,881 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:17:52,904 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:52,927 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:52,929 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:17:53,046 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 10 [2018-11-23 12:17:53,051 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 10 treesize of output 9 [2018-11-23 12:17:53,053 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:17:53,055 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:17:53,061 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:17:53,062 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:17, output treesize:13 [2018-11-23 12:17:53,272 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 15 treesize of output 11 [2018-11-23 12:17:53,302 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 3 [2018-11-23 12:17:53,314 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:17:53,316 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:17:53,318 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:17:53,318 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:15, output treesize:3 [2018-11-23 12:17:53,320 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:17:53,320 WARN L384 uantifierElimination]: Input elimination task: ∃ [|#memory_int|, |main_~#a~0.base|]. (let ((.cse0 (select (select |#memory_int| |main_~#a~0.base|) 4))) (and (= .cse0 |main_#t~mem4|) (= .cse0 0))) [2018-11-23 12:17:53,321 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (= 0 |main_#t~mem4|) [2018-11-23 12:17:53,409 INFO L256 TraceCheckUtils]: 0: Hoare triple {783#true} call ULTIMATE.init(); {783#true} is VALID [2018-11-23 12:17:53,410 INFO L273 TraceCheckUtils]: 1: Hoare triple {783#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {783#true} is VALID [2018-11-23 12:17:53,410 INFO L273 TraceCheckUtils]: 2: Hoare triple {783#true} assume true; {783#true} is VALID [2018-11-23 12:17:53,410 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {783#true} {783#true} #61#return; {783#true} is VALID [2018-11-23 12:17:53,411 INFO L256 TraceCheckUtils]: 4: Hoare triple {783#true} call #t~ret5 := main(); {783#true} is VALID [2018-11-23 12:17:53,411 INFO L273 TraceCheckUtils]: 5: Hoare triple {783#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {783#true} is VALID [2018-11-23 12:17:53,412 INFO L273 TraceCheckUtils]: 6: Hoare triple {783#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {817#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:53,413 INFO L273 TraceCheckUtils]: 7: Hoare triple {817#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {817#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:53,413 INFO L273 TraceCheckUtils]: 8: Hoare triple {817#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {817#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:53,414 INFO L273 TraceCheckUtils]: 9: Hoare triple {817#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {827#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:53,414 INFO L273 TraceCheckUtils]: 10: Hoare triple {827#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {827#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:53,415 INFO L273 TraceCheckUtils]: 11: Hoare triple {827#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {834#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:53,416 INFO L273 TraceCheckUtils]: 12: Hoare triple {834#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {834#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:53,417 INFO L273 TraceCheckUtils]: 13: Hoare triple {834#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {834#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:53,418 INFO L273 TraceCheckUtils]: 14: Hoare triple {834#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {844#(and (= main_~i~0 0) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:53,419 INFO L273 TraceCheckUtils]: 15: Hoare triple {844#(and (= main_~i~0 0) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {844#(and (= main_~i~0 0) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:53,421 INFO L256 TraceCheckUtils]: 16: Hoare triple {844#(and (= main_~i~0 0) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {851#(exists ((|v_main_~#a~0.base_BEFORE_CALL_1| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_1|) 4)))} is VALID [2018-11-23 12:17:53,422 INFO L273 TraceCheckUtils]: 17: Hoare triple {851#(exists ((|v_main_~#a~0.base_BEFORE_CALL_1| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_1|) 4)))} ~cond := #in~cond; {851#(exists ((|v_main_~#a~0.base_BEFORE_CALL_1| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_1|) 4)))} is VALID [2018-11-23 12:17:53,422 INFO L273 TraceCheckUtils]: 18: Hoare triple {851#(exists ((|v_main_~#a~0.base_BEFORE_CALL_1| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_1|) 4)))} assume !(0 == ~cond); {851#(exists ((|v_main_~#a~0.base_BEFORE_CALL_1| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_1|) 4)))} is VALID [2018-11-23 12:17:53,423 INFO L273 TraceCheckUtils]: 19: Hoare triple {851#(exists ((|v_main_~#a~0.base_BEFORE_CALL_1| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_1|) 4)))} assume true; {851#(exists ((|v_main_~#a~0.base_BEFORE_CALL_1| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_1|) 4)))} is VALID [2018-11-23 12:17:53,424 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {851#(exists ((|v_main_~#a~0.base_BEFORE_CALL_1| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_1|) 4)))} {844#(and (= main_~i~0 0) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} #65#return; {844#(and (= main_~i~0 0) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:53,425 INFO L273 TraceCheckUtils]: 21: Hoare triple {844#(and (= main_~i~0 0) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {844#(and (= main_~i~0 0) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:53,426 INFO L273 TraceCheckUtils]: 22: Hoare triple {844#(and (= main_~i~0 0) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {870#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:53,428 INFO L273 TraceCheckUtils]: 23: Hoare triple {870#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {794#(= |main_#t~mem4| 0)} is VALID [2018-11-23 12:17:53,429 INFO L256 TraceCheckUtils]: 24: Hoare triple {794#(= |main_#t~mem4| 0)} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {877#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:17:53,430 INFO L273 TraceCheckUtils]: 25: Hoare triple {877#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {881#(= 1 __VERIFIER_assert_~cond)} is VALID [2018-11-23 12:17:53,433 INFO L273 TraceCheckUtils]: 26: Hoare triple {881#(= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {784#false} is VALID [2018-11-23 12:17:53,434 INFO L273 TraceCheckUtils]: 27: Hoare triple {784#false} assume !false; {784#false} is VALID [2018-11-23 12:17:53,436 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 12:17:53,455 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:17:53,455 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 11] total 21 [2018-11-23 12:17:53,456 INFO L78 Accepts]: Start accepts. Automaton has 21 states. Word has length 28 [2018-11-23 12:17:53,456 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:17:53,456 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 21 states. [2018-11-23 12:17:53,560 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:17:53,560 INFO L459 AbstractCegarLoop]: Interpolant automaton has 21 states [2018-11-23 12:17:53,560 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2018-11-23 12:17:53,561 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=60, Invalid=360, Unknown=0, NotChecked=0, Total=420 [2018-11-23 12:17:53,561 INFO L87 Difference]: Start difference. First operand 32 states and 34 transitions. Second operand 21 states. [2018-11-23 12:17:55,910 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:55,910 INFO L93 Difference]: Finished difference Result 49 states and 52 transitions. [2018-11-23 12:17:55,911 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2018-11-23 12:17:55,911 INFO L78 Accepts]: Start accepts. Automaton has 21 states. Word has length 28 [2018-11-23 12:17:55,911 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:17:55,911 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 21 states. [2018-11-23 12:17:55,914 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 49 transitions. [2018-11-23 12:17:55,915 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 21 states. [2018-11-23 12:17:55,917 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 49 transitions. [2018-11-23 12:17:55,917 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states and 49 transitions. [2018-11-23 12:17:56,028 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:17:56,030 INFO L225 Difference]: With dead ends: 49 [2018-11-23 12:17:56,030 INFO L226 Difference]: Without dead ends: 47 [2018-11-23 12:17:56,032 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 56 GetRequests, 20 SyntacticMatches, 3 SemanticMatches, 33 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 248 ImplicationChecksByTransitivity, 1.1s TimeCoverageRelationStatistics Valid=183, Invalid=1007, Unknown=0, NotChecked=0, Total=1190 [2018-11-23 12:17:56,032 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 47 states. [2018-11-23 12:17:56,102 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 47 to 40. [2018-11-23 12:17:56,102 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:17:56,103 INFO L82 GeneralOperation]: Start isEquivalent. First operand 47 states. Second operand 40 states. [2018-11-23 12:17:56,103 INFO L74 IsIncluded]: Start isIncluded. First operand 47 states. Second operand 40 states. [2018-11-23 12:17:56,103 INFO L87 Difference]: Start difference. First operand 47 states. Second operand 40 states. [2018-11-23 12:17:56,106 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:56,106 INFO L93 Difference]: Finished difference Result 47 states and 50 transitions. [2018-11-23 12:17:56,107 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 50 transitions. [2018-11-23 12:17:56,107 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:56,107 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:56,108 INFO L74 IsIncluded]: Start isIncluded. First operand 40 states. Second operand 47 states. [2018-11-23 12:17:56,108 INFO L87 Difference]: Start difference. First operand 40 states. Second operand 47 states. [2018-11-23 12:17:56,110 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:56,110 INFO L93 Difference]: Finished difference Result 47 states and 50 transitions. [2018-11-23 12:17:56,110 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 50 transitions. [2018-11-23 12:17:56,111 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:56,111 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:56,111 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:17:56,112 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:17:56,112 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 40 states. [2018-11-23 12:17:56,114 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 42 transitions. [2018-11-23 12:17:56,114 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 42 transitions. Word has length 28 [2018-11-23 12:17:56,114 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:17:56,114 INFO L480 AbstractCegarLoop]: Abstraction has 40 states and 42 transitions. [2018-11-23 12:17:56,114 INFO L481 AbstractCegarLoop]: Interpolant automaton has 21 states. [2018-11-23 12:17:56,114 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 42 transitions. [2018-11-23 12:17:56,115 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2018-11-23 12:17:56,115 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:17:56,116 INFO L402 BasicCegarLoop]: trace histogram [3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:17:56,116 INFO L423 AbstractCegarLoop]: === Iteration 6 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:17:56,116 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:17:56,116 INFO L82 PathProgramCache]: Analyzing trace with hash 855189807, now seen corresponding path program 2 times [2018-11-23 12:17:56,116 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:17:56,117 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:17:56,118 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:56,118 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:17:56,118 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:56,132 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:56,314 INFO L256 TraceCheckUtils]: 0: Hoare triple {1132#true} call ULTIMATE.init(); {1132#true} is VALID [2018-11-23 12:17:56,314 INFO L273 TraceCheckUtils]: 1: Hoare triple {1132#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {1132#true} is VALID [2018-11-23 12:17:56,314 INFO L273 TraceCheckUtils]: 2: Hoare triple {1132#true} assume true; {1132#true} is VALID [2018-11-23 12:17:56,315 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1132#true} {1132#true} #61#return; {1132#true} is VALID [2018-11-23 12:17:56,315 INFO L256 TraceCheckUtils]: 4: Hoare triple {1132#true} call #t~ret5 := main(); {1132#true} is VALID [2018-11-23 12:17:56,315 INFO L273 TraceCheckUtils]: 5: Hoare triple {1132#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {1132#true} is VALID [2018-11-23 12:17:56,316 INFO L273 TraceCheckUtils]: 6: Hoare triple {1132#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {1134#(= main_~i~0 0)} is VALID [2018-11-23 12:17:56,317 INFO L273 TraceCheckUtils]: 7: Hoare triple {1134#(= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0); {1134#(= main_~i~0 0)} is VALID [2018-11-23 12:17:56,317 INFO L273 TraceCheckUtils]: 8: Hoare triple {1134#(= main_~i~0 0)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1134#(= main_~i~0 0)} is VALID [2018-11-23 12:17:56,318 INFO L273 TraceCheckUtils]: 9: Hoare triple {1134#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1135#(<= main_~i~0 1)} is VALID [2018-11-23 12:17:56,319 INFO L273 TraceCheckUtils]: 10: Hoare triple {1135#(<= main_~i~0 1)} assume !!(~i~0 < ~SIZE~0); {1135#(<= main_~i~0 1)} is VALID [2018-11-23 12:17:56,319 INFO L273 TraceCheckUtils]: 11: Hoare triple {1135#(<= main_~i~0 1)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1135#(<= main_~i~0 1)} is VALID [2018-11-23 12:17:56,320 INFO L273 TraceCheckUtils]: 12: Hoare triple {1135#(<= main_~i~0 1)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1136#(<= main_~i~0 2)} is VALID [2018-11-23 12:17:56,321 INFO L273 TraceCheckUtils]: 13: Hoare triple {1136#(<= main_~i~0 2)} assume !(~i~0 < ~SIZE~0); {1137#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:17:56,322 INFO L273 TraceCheckUtils]: 14: Hoare triple {1137#(<= ~SIZE~0 2)} ~i~0 := 0; {1138#(and (<= ~SIZE~0 2) (= main_~i~0 0))} is VALID [2018-11-23 12:17:56,332 INFO L273 TraceCheckUtils]: 15: Hoare triple {1138#(and (<= ~SIZE~0 2) (= main_~i~0 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1138#(and (<= ~SIZE~0 2) (= main_~i~0 0))} is VALID [2018-11-23 12:17:56,333 INFO L256 TraceCheckUtils]: 16: Hoare triple {1138#(and (<= ~SIZE~0 2) (= main_~i~0 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {1132#true} is VALID [2018-11-23 12:17:56,333 INFO L273 TraceCheckUtils]: 17: Hoare triple {1132#true} ~cond := #in~cond; {1132#true} is VALID [2018-11-23 12:17:56,333 INFO L273 TraceCheckUtils]: 18: Hoare triple {1132#true} assume !(0 == ~cond); {1132#true} is VALID [2018-11-23 12:17:56,333 INFO L273 TraceCheckUtils]: 19: Hoare triple {1132#true} assume true; {1132#true} is VALID [2018-11-23 12:17:56,334 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {1132#true} {1138#(and (<= ~SIZE~0 2) (= main_~i~0 0))} #65#return; {1138#(and (<= ~SIZE~0 2) (= main_~i~0 0))} is VALID [2018-11-23 12:17:56,335 INFO L273 TraceCheckUtils]: 21: Hoare triple {1138#(and (<= ~SIZE~0 2) (= main_~i~0 0))} havoc #t~mem4; {1138#(and (<= ~SIZE~0 2) (= main_~i~0 0))} is VALID [2018-11-23 12:17:56,335 INFO L273 TraceCheckUtils]: 22: Hoare triple {1138#(and (<= ~SIZE~0 2) (= main_~i~0 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {1139#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:17:56,336 INFO L273 TraceCheckUtils]: 23: Hoare triple {1139#(<= ~SIZE~0 (+ main_~i~0 1))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1139#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:17:56,336 INFO L256 TraceCheckUtils]: 24: Hoare triple {1139#(<= ~SIZE~0 (+ main_~i~0 1))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {1132#true} is VALID [2018-11-23 12:17:56,336 INFO L273 TraceCheckUtils]: 25: Hoare triple {1132#true} ~cond := #in~cond; {1132#true} is VALID [2018-11-23 12:17:56,336 INFO L273 TraceCheckUtils]: 26: Hoare triple {1132#true} assume !(0 == ~cond); {1132#true} is VALID [2018-11-23 12:17:56,336 INFO L273 TraceCheckUtils]: 27: Hoare triple {1132#true} assume true; {1132#true} is VALID [2018-11-23 12:17:56,338 INFO L268 TraceCheckUtils]: 28: Hoare quadruple {1132#true} {1139#(<= ~SIZE~0 (+ main_~i~0 1))} #65#return; {1139#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:17:56,339 INFO L273 TraceCheckUtils]: 29: Hoare triple {1139#(<= ~SIZE~0 (+ main_~i~0 1))} havoc #t~mem4; {1139#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:17:56,340 INFO L273 TraceCheckUtils]: 30: Hoare triple {1139#(<= ~SIZE~0 (+ main_~i~0 1))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {1140#(<= ~SIZE~0 main_~i~0)} is VALID [2018-11-23 12:17:56,340 INFO L273 TraceCheckUtils]: 31: Hoare triple {1140#(<= ~SIZE~0 main_~i~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1133#false} is VALID [2018-11-23 12:17:56,341 INFO L256 TraceCheckUtils]: 32: Hoare triple {1133#false} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {1133#false} is VALID [2018-11-23 12:17:56,341 INFO L273 TraceCheckUtils]: 33: Hoare triple {1133#false} ~cond := #in~cond; {1133#false} is VALID [2018-11-23 12:17:56,341 INFO L273 TraceCheckUtils]: 34: Hoare triple {1133#false} assume 0 == ~cond; {1133#false} is VALID [2018-11-23 12:17:56,342 INFO L273 TraceCheckUtils]: 35: Hoare triple {1133#false} assume !false; {1133#false} is VALID [2018-11-23 12:17:56,344 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 7 proven. 10 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2018-11-23 12:17:56,344 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:17:56,344 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:17:56,352 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:17:56,370 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:17:56,370 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:17:56,399 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:56,400 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:17:56,621 INFO L256 TraceCheckUtils]: 0: Hoare triple {1132#true} call ULTIMATE.init(); {1132#true} is VALID [2018-11-23 12:17:56,621 INFO L273 TraceCheckUtils]: 1: Hoare triple {1132#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {1132#true} is VALID [2018-11-23 12:17:56,622 INFO L273 TraceCheckUtils]: 2: Hoare triple {1132#true} assume true; {1132#true} is VALID [2018-11-23 12:17:56,622 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1132#true} {1132#true} #61#return; {1132#true} is VALID [2018-11-23 12:17:56,622 INFO L256 TraceCheckUtils]: 4: Hoare triple {1132#true} call #t~ret5 := main(); {1132#true} is VALID [2018-11-23 12:17:56,622 INFO L273 TraceCheckUtils]: 5: Hoare triple {1132#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {1132#true} is VALID [2018-11-23 12:17:56,624 INFO L273 TraceCheckUtils]: 6: Hoare triple {1132#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {1162#(<= main_~i~0 0)} is VALID [2018-11-23 12:17:56,625 INFO L273 TraceCheckUtils]: 7: Hoare triple {1162#(<= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0); {1162#(<= main_~i~0 0)} is VALID [2018-11-23 12:17:56,630 INFO L273 TraceCheckUtils]: 8: Hoare triple {1162#(<= main_~i~0 0)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1162#(<= main_~i~0 0)} is VALID [2018-11-23 12:17:56,631 INFO L273 TraceCheckUtils]: 9: Hoare triple {1162#(<= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1135#(<= main_~i~0 1)} is VALID [2018-11-23 12:17:56,631 INFO L273 TraceCheckUtils]: 10: Hoare triple {1135#(<= main_~i~0 1)} assume !!(~i~0 < ~SIZE~0); {1135#(<= main_~i~0 1)} is VALID [2018-11-23 12:17:56,632 INFO L273 TraceCheckUtils]: 11: Hoare triple {1135#(<= main_~i~0 1)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1135#(<= main_~i~0 1)} is VALID [2018-11-23 12:17:56,632 INFO L273 TraceCheckUtils]: 12: Hoare triple {1135#(<= main_~i~0 1)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1136#(<= main_~i~0 2)} is VALID [2018-11-23 12:17:56,633 INFO L273 TraceCheckUtils]: 13: Hoare triple {1136#(<= main_~i~0 2)} assume !(~i~0 < ~SIZE~0); {1137#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:17:56,634 INFO L273 TraceCheckUtils]: 14: Hoare triple {1137#(<= ~SIZE~0 2)} ~i~0 := 0; {1187#(and (<= 0 main_~i~0) (<= ~SIZE~0 2))} is VALID [2018-11-23 12:17:56,635 INFO L273 TraceCheckUtils]: 15: Hoare triple {1187#(and (<= 0 main_~i~0) (<= ~SIZE~0 2))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1187#(and (<= 0 main_~i~0) (<= ~SIZE~0 2))} is VALID [2018-11-23 12:17:56,636 INFO L256 TraceCheckUtils]: 16: Hoare triple {1187#(and (<= 0 main_~i~0) (<= ~SIZE~0 2))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {1137#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:17:56,636 INFO L273 TraceCheckUtils]: 17: Hoare triple {1137#(<= ~SIZE~0 2)} ~cond := #in~cond; {1137#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:17:56,637 INFO L273 TraceCheckUtils]: 18: Hoare triple {1137#(<= ~SIZE~0 2)} assume !(0 == ~cond); {1137#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:17:56,638 INFO L273 TraceCheckUtils]: 19: Hoare triple {1137#(<= ~SIZE~0 2)} assume true; {1137#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:17:56,638 INFO L268 TraceCheckUtils]: 20: Hoare quadruple {1137#(<= ~SIZE~0 2)} {1187#(and (<= 0 main_~i~0) (<= ~SIZE~0 2))} #65#return; {1187#(and (<= 0 main_~i~0) (<= ~SIZE~0 2))} is VALID [2018-11-23 12:17:56,639 INFO L273 TraceCheckUtils]: 21: Hoare triple {1187#(and (<= 0 main_~i~0) (<= ~SIZE~0 2))} havoc #t~mem4; {1187#(and (<= 0 main_~i~0) (<= ~SIZE~0 2))} is VALID [2018-11-23 12:17:56,640 INFO L273 TraceCheckUtils]: 22: Hoare triple {1187#(and (<= 0 main_~i~0) (<= ~SIZE~0 2))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {1212#(and (<= 1 main_~i~0) (<= ~SIZE~0 2))} is VALID [2018-11-23 12:17:56,641 INFO L273 TraceCheckUtils]: 23: Hoare triple {1212#(and (<= 1 main_~i~0) (<= ~SIZE~0 2))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1212#(and (<= 1 main_~i~0) (<= ~SIZE~0 2))} is VALID [2018-11-23 12:17:56,642 INFO L256 TraceCheckUtils]: 24: Hoare triple {1212#(and (<= 1 main_~i~0) (<= ~SIZE~0 2))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {1137#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:17:56,643 INFO L273 TraceCheckUtils]: 25: Hoare triple {1137#(<= ~SIZE~0 2)} ~cond := #in~cond; {1137#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:17:56,643 INFO L273 TraceCheckUtils]: 26: Hoare triple {1137#(<= ~SIZE~0 2)} assume !(0 == ~cond); {1137#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:17:56,644 INFO L273 TraceCheckUtils]: 27: Hoare triple {1137#(<= ~SIZE~0 2)} assume true; {1137#(<= ~SIZE~0 2)} is VALID [2018-11-23 12:17:56,645 INFO L268 TraceCheckUtils]: 28: Hoare quadruple {1137#(<= ~SIZE~0 2)} {1212#(and (<= 1 main_~i~0) (<= ~SIZE~0 2))} #65#return; {1212#(and (<= 1 main_~i~0) (<= ~SIZE~0 2))} is VALID [2018-11-23 12:17:56,650 INFO L273 TraceCheckUtils]: 29: Hoare triple {1212#(and (<= 1 main_~i~0) (<= ~SIZE~0 2))} havoc #t~mem4; {1212#(and (<= 1 main_~i~0) (<= ~SIZE~0 2))} is VALID [2018-11-23 12:17:56,651 INFO L273 TraceCheckUtils]: 30: Hoare triple {1212#(and (<= 1 main_~i~0) (<= ~SIZE~0 2))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {1237#(and (<= 2 main_~i~0) (<= ~SIZE~0 2))} is VALID [2018-11-23 12:17:56,651 INFO L273 TraceCheckUtils]: 31: Hoare triple {1237#(and (<= 2 main_~i~0) (<= ~SIZE~0 2))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1133#false} is VALID [2018-11-23 12:17:56,652 INFO L256 TraceCheckUtils]: 32: Hoare triple {1133#false} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {1133#false} is VALID [2018-11-23 12:17:56,652 INFO L273 TraceCheckUtils]: 33: Hoare triple {1133#false} ~cond := #in~cond; {1133#false} is VALID [2018-11-23 12:17:56,652 INFO L273 TraceCheckUtils]: 34: Hoare triple {1133#false} assume 0 == ~cond; {1133#false} is VALID [2018-11-23 12:17:56,652 INFO L273 TraceCheckUtils]: 35: Hoare triple {1133#false} assume !false; {1133#false} is VALID [2018-11-23 12:17:56,655 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 12 proven. 5 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2018-11-23 12:17:56,673 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:17:56,673 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 13 [2018-11-23 12:17:56,674 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 36 [2018-11-23 12:17:56,674 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:17:56,675 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states. [2018-11-23 12:17:56,733 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:17:56,733 INFO L459 AbstractCegarLoop]: Interpolant automaton has 13 states [2018-11-23 12:17:56,733 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2018-11-23 12:17:56,733 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=111, Unknown=0, NotChecked=0, Total=156 [2018-11-23 12:17:56,734 INFO L87 Difference]: Start difference. First operand 40 states and 42 transitions. Second operand 13 states. [2018-11-23 12:17:57,371 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:57,371 INFO L93 Difference]: Finished difference Result 96 states and 103 transitions. [2018-11-23 12:17:57,371 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-23 12:17:57,371 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 36 [2018-11-23 12:17:57,372 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:17:57,372 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-23 12:17:57,380 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 80 transitions. [2018-11-23 12:17:57,380 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-23 12:17:57,386 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 80 transitions. [2018-11-23 12:17:57,386 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 80 transitions. [2018-11-23 12:17:57,516 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:17:57,518 INFO L225 Difference]: With dead ends: 96 [2018-11-23 12:17:57,518 INFO L226 Difference]: Without dead ends: 50 [2018-11-23 12:17:57,519 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 47 GetRequests, 33 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 45 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=69, Invalid=171, Unknown=0, NotChecked=0, Total=240 [2018-11-23 12:17:57,520 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2018-11-23 12:17:57,584 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 43. [2018-11-23 12:17:57,584 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:17:57,584 INFO L82 GeneralOperation]: Start isEquivalent. First operand 50 states. Second operand 43 states. [2018-11-23 12:17:57,584 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand 43 states. [2018-11-23 12:17:57,585 INFO L87 Difference]: Start difference. First operand 50 states. Second operand 43 states. [2018-11-23 12:17:57,587 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:57,588 INFO L93 Difference]: Finished difference Result 50 states and 53 transitions. [2018-11-23 12:17:57,588 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 53 transitions. [2018-11-23 12:17:57,589 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:57,589 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:57,589 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand 50 states. [2018-11-23 12:17:57,589 INFO L87 Difference]: Start difference. First operand 43 states. Second operand 50 states. [2018-11-23 12:17:57,591 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:17:57,591 INFO L93 Difference]: Finished difference Result 50 states and 53 transitions. [2018-11-23 12:17:57,592 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 53 transitions. [2018-11-23 12:17:57,592 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:17:57,592 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:17:57,593 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:17:57,593 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:17:57,593 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 43 states. [2018-11-23 12:17:57,594 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 45 transitions. [2018-11-23 12:17:57,595 INFO L78 Accepts]: Start accepts. Automaton has 43 states and 45 transitions. Word has length 36 [2018-11-23 12:17:57,595 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:17:57,595 INFO L480 AbstractCegarLoop]: Abstraction has 43 states and 45 transitions. [2018-11-23 12:17:57,595 INFO L481 AbstractCegarLoop]: Interpolant automaton has 13 states. [2018-11-23 12:17:57,595 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 45 transitions. [2018-11-23 12:17:57,596 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2018-11-23 12:17:57,596 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:17:57,596 INFO L402 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:17:57,597 INFO L423 AbstractCegarLoop]: === Iteration 7 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:17:57,597 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:17:57,597 INFO L82 PathProgramCache]: Analyzing trace with hash -907873539, now seen corresponding path program 3 times [2018-11-23 12:17:57,597 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:17:57,597 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:17:57,598 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:57,598 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:17:57,598 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:17:57,616 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:57,880 INFO L256 TraceCheckUtils]: 0: Hoare triple {1550#true} call ULTIMATE.init(); {1550#true} is VALID [2018-11-23 12:17:57,881 INFO L273 TraceCheckUtils]: 1: Hoare triple {1550#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {1550#true} is VALID [2018-11-23 12:17:57,881 INFO L273 TraceCheckUtils]: 2: Hoare triple {1550#true} assume true; {1550#true} is VALID [2018-11-23 12:17:57,882 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1550#true} {1550#true} #61#return; {1550#true} is VALID [2018-11-23 12:17:57,882 INFO L256 TraceCheckUtils]: 4: Hoare triple {1550#true} call #t~ret5 := main(); {1550#true} is VALID [2018-11-23 12:17:57,882 INFO L273 TraceCheckUtils]: 5: Hoare triple {1550#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {1550#true} is VALID [2018-11-23 12:17:57,883 INFO L273 TraceCheckUtils]: 6: Hoare triple {1550#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {1552#(= main_~i~0 0)} is VALID [2018-11-23 12:17:57,884 INFO L273 TraceCheckUtils]: 7: Hoare triple {1552#(= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0); {1552#(= main_~i~0 0)} is VALID [2018-11-23 12:17:57,884 INFO L273 TraceCheckUtils]: 8: Hoare triple {1552#(= main_~i~0 0)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1552#(= main_~i~0 0)} is VALID [2018-11-23 12:17:57,885 INFO L273 TraceCheckUtils]: 9: Hoare triple {1552#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1553#(and (<= 1 main_~i~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:17:57,885 INFO L273 TraceCheckUtils]: 10: Hoare triple {1553#(and (<= 1 main_~i~0) (<= main_~i~0 1))} assume !!(~i~0 < ~SIZE~0); {1553#(and (<= 1 main_~i~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:17:57,886 INFO L273 TraceCheckUtils]: 11: Hoare triple {1553#(and (<= 1 main_~i~0) (<= main_~i~0 1))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1553#(and (<= 1 main_~i~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:17:57,887 INFO L273 TraceCheckUtils]: 12: Hoare triple {1553#(and (<= 1 main_~i~0) (<= main_~i~0 1))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1554#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:17:57,888 INFO L273 TraceCheckUtils]: 13: Hoare triple {1554#(and (<= 2 main_~i~0) (<= main_~i~0 2))} assume !!(~i~0 < ~SIZE~0); {1554#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:17:57,889 INFO L273 TraceCheckUtils]: 14: Hoare triple {1554#(and (<= 2 main_~i~0) (<= main_~i~0 2))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1555#(and (<= 2 main_~i~0) (<= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0)))))} is VALID [2018-11-23 12:17:57,890 INFO L273 TraceCheckUtils]: 15: Hoare triple {1555#(and (<= 2 main_~i~0) (<= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0)))))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1556#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 2))))} is VALID [2018-11-23 12:17:57,891 INFO L273 TraceCheckUtils]: 16: Hoare triple {1556#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 2))))} assume !(~i~0 < ~SIZE~0); {1556#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 2))))} is VALID [2018-11-23 12:17:57,892 INFO L273 TraceCheckUtils]: 17: Hoare triple {1556#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 2))))} ~i~0 := 0; {1557#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 2)))) (= main_~i~0 0))} is VALID [2018-11-23 12:17:57,893 INFO L273 TraceCheckUtils]: 18: Hoare triple {1557#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 2)))) (= main_~i~0 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1557#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 2)))) (= main_~i~0 0))} is VALID [2018-11-23 12:17:57,894 INFO L256 TraceCheckUtils]: 19: Hoare triple {1557#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 2)))) (= main_~i~0 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {1550#true} is VALID [2018-11-23 12:17:57,895 INFO L273 TraceCheckUtils]: 20: Hoare triple {1550#true} ~cond := #in~cond; {1558#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} is VALID [2018-11-23 12:17:57,896 INFO L273 TraceCheckUtils]: 21: Hoare triple {1558#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} assume !(0 == ~cond); {1559#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:17:57,897 INFO L273 TraceCheckUtils]: 22: Hoare triple {1559#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1559#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:17:57,899 INFO L268 TraceCheckUtils]: 23: Hoare quadruple {1559#(not (= |__VERIFIER_assert_#in~cond| 0))} {1557#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 2)))) (= main_~i~0 0))} #65#return; {1557#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 2)))) (= main_~i~0 0))} is VALID [2018-11-23 12:17:57,902 INFO L273 TraceCheckUtils]: 24: Hoare triple {1557#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 2)))) (= main_~i~0 0))} havoc #t~mem4; {1557#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 2)))) (= main_~i~0 0))} is VALID [2018-11-23 12:17:57,906 INFO L273 TraceCheckUtils]: 25: Hoare triple {1557#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 2)))) (= main_~i~0 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {1560#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:17:57,908 INFO L273 TraceCheckUtils]: 26: Hoare triple {1560#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1560#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:17:57,908 INFO L256 TraceCheckUtils]: 27: Hoare triple {1560#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {1550#true} is VALID [2018-11-23 12:17:57,908 INFO L273 TraceCheckUtils]: 28: Hoare triple {1550#true} ~cond := #in~cond; {1550#true} is VALID [2018-11-23 12:17:57,908 INFO L273 TraceCheckUtils]: 29: Hoare triple {1550#true} assume !(0 == ~cond); {1550#true} is VALID [2018-11-23 12:17:57,908 INFO L273 TraceCheckUtils]: 30: Hoare triple {1550#true} assume true; {1550#true} is VALID [2018-11-23 12:17:57,910 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {1550#true} {1560#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} #65#return; {1560#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:17:57,911 INFO L273 TraceCheckUtils]: 32: Hoare triple {1560#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} havoc #t~mem4; {1560#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:17:57,912 INFO L273 TraceCheckUtils]: 33: Hoare triple {1560#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {1561#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0))))} is VALID [2018-11-23 12:17:57,913 INFO L273 TraceCheckUtils]: 34: Hoare triple {1561#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1562#(= |main_#t~mem4| 0)} is VALID [2018-11-23 12:17:57,914 INFO L256 TraceCheckUtils]: 35: Hoare triple {1562#(= |main_#t~mem4| 0)} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {1559#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:17:57,915 INFO L273 TraceCheckUtils]: 36: Hoare triple {1559#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {1563#(not (= __VERIFIER_assert_~cond 0))} is VALID [2018-11-23 12:17:57,915 INFO L273 TraceCheckUtils]: 37: Hoare triple {1563#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {1551#false} is VALID [2018-11-23 12:17:57,916 INFO L273 TraceCheckUtils]: 38: Hoare triple {1551#false} assume !false; {1551#false} is VALID [2018-11-23 12:17:57,920 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 3 proven. 24 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2018-11-23 12:17:57,920 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:17:57,921 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:17:57,936 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:17:57,998 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2018-11-23 12:17:57,998 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:17:58,012 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:17:58,013 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:17:58,320 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 10 [2018-11-23 12:17:58,325 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 10 treesize of output 9 [2018-11-23 12:17:58,335 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:17:58,338 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:17:58,342 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:17:58,342 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:17, output treesize:13 [2018-11-23 12:17:58,639 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 15 treesize of output 11 [2018-11-23 12:17:58,643 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 3 [2018-11-23 12:17:58,646 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:17:58,650 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:17:58,652 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:17:58,652 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:15, output treesize:3 [2018-11-23 12:17:58,653 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:17:58,654 WARN L384 uantifierElimination]: Input elimination task: ∃ [|#memory_int|, |main_~#a~0.base|]. (let ((.cse0 (select (select |#memory_int| |main_~#a~0.base|) 8))) (and (= 0 .cse0) (= .cse0 |main_#t~mem4|))) [2018-11-23 12:17:58,654 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (= 0 |main_#t~mem4|) [2018-11-23 12:17:58,704 INFO L256 TraceCheckUtils]: 0: Hoare triple {1550#true} call ULTIMATE.init(); {1550#true} is VALID [2018-11-23 12:17:58,704 INFO L273 TraceCheckUtils]: 1: Hoare triple {1550#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {1550#true} is VALID [2018-11-23 12:17:58,704 INFO L273 TraceCheckUtils]: 2: Hoare triple {1550#true} assume true; {1550#true} is VALID [2018-11-23 12:17:58,705 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1550#true} {1550#true} #61#return; {1550#true} is VALID [2018-11-23 12:17:58,705 INFO L256 TraceCheckUtils]: 4: Hoare triple {1550#true} call #t~ret5 := main(); {1550#true} is VALID [2018-11-23 12:17:58,705 INFO L273 TraceCheckUtils]: 5: Hoare triple {1550#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {1550#true} is VALID [2018-11-23 12:17:58,706 INFO L273 TraceCheckUtils]: 6: Hoare triple {1550#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {1585#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:58,707 INFO L273 TraceCheckUtils]: 7: Hoare triple {1585#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {1585#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:58,707 INFO L273 TraceCheckUtils]: 8: Hoare triple {1585#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1585#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:58,708 INFO L273 TraceCheckUtils]: 9: Hoare triple {1585#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1595#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:58,709 INFO L273 TraceCheckUtils]: 10: Hoare triple {1595#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {1595#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:58,710 INFO L273 TraceCheckUtils]: 11: Hoare triple {1595#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1595#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:58,711 INFO L273 TraceCheckUtils]: 12: Hoare triple {1595#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1605#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:58,712 INFO L273 TraceCheckUtils]: 13: Hoare triple {1605#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {1605#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:58,714 INFO L273 TraceCheckUtils]: 14: Hoare triple {1605#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1612#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:58,715 INFO L273 TraceCheckUtils]: 15: Hoare triple {1612#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1612#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:58,716 INFO L273 TraceCheckUtils]: 16: Hoare triple {1612#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {1612#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:58,723 INFO L273 TraceCheckUtils]: 17: Hoare triple {1612#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {1622#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:58,723 INFO L273 TraceCheckUtils]: 18: Hoare triple {1622#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1622#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:58,725 INFO L256 TraceCheckUtils]: 19: Hoare triple {1622#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {1629#(exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8)))} is VALID [2018-11-23 12:17:58,725 INFO L273 TraceCheckUtils]: 20: Hoare triple {1629#(exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8)))} ~cond := #in~cond; {1629#(exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8)))} is VALID [2018-11-23 12:17:58,733 INFO L273 TraceCheckUtils]: 21: Hoare triple {1629#(exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8)))} assume !(0 == ~cond); {1629#(exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8)))} is VALID [2018-11-23 12:17:58,734 INFO L273 TraceCheckUtils]: 22: Hoare triple {1629#(exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8)))} assume true; {1629#(exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8)))} is VALID [2018-11-23 12:17:58,734 INFO L268 TraceCheckUtils]: 23: Hoare quadruple {1629#(exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8)))} {1622#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #65#return; {1622#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:58,736 INFO L273 TraceCheckUtils]: 24: Hoare triple {1622#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {1622#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:58,736 INFO L273 TraceCheckUtils]: 25: Hoare triple {1622#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {1648#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:58,744 INFO L273 TraceCheckUtils]: 26: Hoare triple {1648#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1648#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:58,745 INFO L256 TraceCheckUtils]: 27: Hoare triple {1648#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {1629#(exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8)))} is VALID [2018-11-23 12:17:58,745 INFO L273 TraceCheckUtils]: 28: Hoare triple {1629#(exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8)))} ~cond := #in~cond; {1629#(exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8)))} is VALID [2018-11-23 12:17:58,746 INFO L273 TraceCheckUtils]: 29: Hoare triple {1629#(exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8)))} assume !(0 == ~cond); {1629#(exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8)))} is VALID [2018-11-23 12:17:58,746 INFO L273 TraceCheckUtils]: 30: Hoare triple {1629#(exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8)))} assume true; {1629#(exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8)))} is VALID [2018-11-23 12:17:58,747 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {1629#(exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8)))} {1648#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} #65#return; {1648#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:58,747 INFO L273 TraceCheckUtils]: 32: Hoare triple {1648#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {1648#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:58,748 INFO L273 TraceCheckUtils]: 33: Hoare triple {1648#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {1673#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:17:58,749 INFO L273 TraceCheckUtils]: 34: Hoare triple {1673#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1562#(= |main_#t~mem4| 0)} is VALID [2018-11-23 12:17:58,750 INFO L256 TraceCheckUtils]: 35: Hoare triple {1562#(= |main_#t~mem4| 0)} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {1680#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:17:58,751 INFO L273 TraceCheckUtils]: 36: Hoare triple {1680#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {1684#(= 1 __VERIFIER_assert_~cond)} is VALID [2018-11-23 12:17:58,752 INFO L273 TraceCheckUtils]: 37: Hoare triple {1684#(= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1551#false} is VALID [2018-11-23 12:17:58,752 INFO L273 TraceCheckUtils]: 38: Hoare triple {1551#false} assume !false; {1551#false} is VALID [2018-11-23 12:17:58,757 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 0 proven. 24 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2018-11-23 12:17:58,777 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:17:58,777 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 13] total 24 [2018-11-23 12:17:58,778 INFO L78 Accepts]: Start accepts. Automaton has 24 states. Word has length 39 [2018-11-23 12:17:58,778 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:17:58,778 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 24 states. [2018-11-23 12:17:58,876 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:17:58,876 INFO L459 AbstractCegarLoop]: Interpolant automaton has 24 states [2018-11-23 12:17:58,877 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2018-11-23 12:17:58,877 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=76, Invalid=476, Unknown=0, NotChecked=0, Total=552 [2018-11-23 12:17:58,877 INFO L87 Difference]: Start difference. First operand 43 states and 45 transitions. Second operand 24 states. [2018-11-23 12:18:00,997 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:00,997 INFO L93 Difference]: Finished difference Result 57 states and 59 transitions. [2018-11-23 12:18:00,997 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2018-11-23 12:18:00,998 INFO L78 Accepts]: Start accepts. Automaton has 24 states. Word has length 39 [2018-11-23 12:18:00,998 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:18:00,998 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 24 states. [2018-11-23 12:18:01,000 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 53 transitions. [2018-11-23 12:18:01,000 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 24 states. [2018-11-23 12:18:01,002 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 53 transitions. [2018-11-23 12:18:01,003 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 21 states and 53 transitions. [2018-11-23 12:18:01,068 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:18:01,070 INFO L225 Difference]: With dead ends: 57 [2018-11-23 12:18:01,071 INFO L226 Difference]: Without dead ends: 55 [2018-11-23 12:18:01,072 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 66 GetRequests, 28 SyntacticMatches, 5 SemanticMatches, 33 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 295 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=161, Invalid=1029, Unknown=0, NotChecked=0, Total=1190 [2018-11-23 12:18:01,072 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2018-11-23 12:18:01,192 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 51. [2018-11-23 12:18:01,192 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:18:01,192 INFO L82 GeneralOperation]: Start isEquivalent. First operand 55 states. Second operand 51 states. [2018-11-23 12:18:01,193 INFO L74 IsIncluded]: Start isIncluded. First operand 55 states. Second operand 51 states. [2018-11-23 12:18:01,193 INFO L87 Difference]: Start difference. First operand 55 states. Second operand 51 states. [2018-11-23 12:18:01,196 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:01,196 INFO L93 Difference]: Finished difference Result 55 states and 57 transitions. [2018-11-23 12:18:01,197 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 57 transitions. [2018-11-23 12:18:01,197 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:01,197 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:01,197 INFO L74 IsIncluded]: Start isIncluded. First operand 51 states. Second operand 55 states. [2018-11-23 12:18:01,197 INFO L87 Difference]: Start difference. First operand 51 states. Second operand 55 states. [2018-11-23 12:18:01,200 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:01,200 INFO L93 Difference]: Finished difference Result 55 states and 57 transitions. [2018-11-23 12:18:01,200 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 57 transitions. [2018-11-23 12:18:01,200 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:01,200 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:01,200 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:18:01,201 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:18:01,201 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 51 states. [2018-11-23 12:18:01,203 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 53 transitions. [2018-11-23 12:18:01,203 INFO L78 Accepts]: Start accepts. Automaton has 51 states and 53 transitions. Word has length 39 [2018-11-23 12:18:01,203 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:18:01,203 INFO L480 AbstractCegarLoop]: Abstraction has 51 states and 53 transitions. [2018-11-23 12:18:01,203 INFO L481 AbstractCegarLoop]: Interpolant automaton has 24 states. [2018-11-23 12:18:01,204 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 53 transitions. [2018-11-23 12:18:01,205 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2018-11-23 12:18:01,205 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:18:01,205 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:18:01,205 INFO L423 AbstractCegarLoop]: === Iteration 8 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:18:01,206 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:18:01,206 INFO L82 PathProgramCache]: Analyzing trace with hash -180156240, now seen corresponding path program 4 times [2018-11-23 12:18:01,206 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:18:01,206 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:18:01,207 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:01,207 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:18:01,207 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:01,225 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:01,530 INFO L256 TraceCheckUtils]: 0: Hoare triple {1971#true} call ULTIMATE.init(); {1971#true} is VALID [2018-11-23 12:18:01,530 INFO L273 TraceCheckUtils]: 1: Hoare triple {1971#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {1971#true} is VALID [2018-11-23 12:18:01,531 INFO L273 TraceCheckUtils]: 2: Hoare triple {1971#true} assume true; {1971#true} is VALID [2018-11-23 12:18:01,531 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1971#true} {1971#true} #61#return; {1971#true} is VALID [2018-11-23 12:18:01,531 INFO L256 TraceCheckUtils]: 4: Hoare triple {1971#true} call #t~ret5 := main(); {1971#true} is VALID [2018-11-23 12:18:01,532 INFO L273 TraceCheckUtils]: 5: Hoare triple {1971#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {1971#true} is VALID [2018-11-23 12:18:01,532 INFO L273 TraceCheckUtils]: 6: Hoare triple {1971#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {1973#(= main_~i~0 0)} is VALID [2018-11-23 12:18:01,533 INFO L273 TraceCheckUtils]: 7: Hoare triple {1973#(= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0); {1973#(= main_~i~0 0)} is VALID [2018-11-23 12:18:01,533 INFO L273 TraceCheckUtils]: 8: Hoare triple {1973#(= main_~i~0 0)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1973#(= main_~i~0 0)} is VALID [2018-11-23 12:18:01,534 INFO L273 TraceCheckUtils]: 9: Hoare triple {1973#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1974#(<= main_~i~0 1)} is VALID [2018-11-23 12:18:01,534 INFO L273 TraceCheckUtils]: 10: Hoare triple {1974#(<= main_~i~0 1)} assume !!(~i~0 < ~SIZE~0); {1974#(<= main_~i~0 1)} is VALID [2018-11-23 12:18:01,534 INFO L273 TraceCheckUtils]: 11: Hoare triple {1974#(<= main_~i~0 1)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1974#(<= main_~i~0 1)} is VALID [2018-11-23 12:18:01,535 INFO L273 TraceCheckUtils]: 12: Hoare triple {1974#(<= main_~i~0 1)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1975#(<= main_~i~0 2)} is VALID [2018-11-23 12:18:01,535 INFO L273 TraceCheckUtils]: 13: Hoare triple {1975#(<= main_~i~0 2)} assume !!(~i~0 < ~SIZE~0); {1975#(<= main_~i~0 2)} is VALID [2018-11-23 12:18:01,536 INFO L273 TraceCheckUtils]: 14: Hoare triple {1975#(<= main_~i~0 2)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1975#(<= main_~i~0 2)} is VALID [2018-11-23 12:18:01,537 INFO L273 TraceCheckUtils]: 15: Hoare triple {1975#(<= main_~i~0 2)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1976#(<= main_~i~0 3)} is VALID [2018-11-23 12:18:01,537 INFO L273 TraceCheckUtils]: 16: Hoare triple {1976#(<= main_~i~0 3)} assume !(~i~0 < ~SIZE~0); {1977#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:18:01,538 INFO L273 TraceCheckUtils]: 17: Hoare triple {1977#(<= ~SIZE~0 3)} ~i~0 := 0; {1978#(and (<= ~SIZE~0 3) (= main_~i~0 0))} is VALID [2018-11-23 12:18:01,539 INFO L273 TraceCheckUtils]: 18: Hoare triple {1978#(and (<= ~SIZE~0 3) (= main_~i~0 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1978#(and (<= ~SIZE~0 3) (= main_~i~0 0))} is VALID [2018-11-23 12:18:01,539 INFO L256 TraceCheckUtils]: 19: Hoare triple {1978#(and (<= ~SIZE~0 3) (= main_~i~0 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {1971#true} is VALID [2018-11-23 12:18:01,540 INFO L273 TraceCheckUtils]: 20: Hoare triple {1971#true} ~cond := #in~cond; {1971#true} is VALID [2018-11-23 12:18:01,540 INFO L273 TraceCheckUtils]: 21: Hoare triple {1971#true} assume !(0 == ~cond); {1971#true} is VALID [2018-11-23 12:18:01,540 INFO L273 TraceCheckUtils]: 22: Hoare triple {1971#true} assume true; {1971#true} is VALID [2018-11-23 12:18:01,542 INFO L268 TraceCheckUtils]: 23: Hoare quadruple {1971#true} {1978#(and (<= ~SIZE~0 3) (= main_~i~0 0))} #65#return; {1978#(and (<= ~SIZE~0 3) (= main_~i~0 0))} is VALID [2018-11-23 12:18:01,543 INFO L273 TraceCheckUtils]: 24: Hoare triple {1978#(and (<= ~SIZE~0 3) (= main_~i~0 0))} havoc #t~mem4; {1978#(and (<= ~SIZE~0 3) (= main_~i~0 0))} is VALID [2018-11-23 12:18:01,543 INFO L273 TraceCheckUtils]: 25: Hoare triple {1978#(and (<= ~SIZE~0 3) (= main_~i~0 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {1979#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:18:01,543 INFO L273 TraceCheckUtils]: 26: Hoare triple {1979#(<= ~SIZE~0 (+ main_~i~0 2))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1979#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:18:01,544 INFO L256 TraceCheckUtils]: 27: Hoare triple {1979#(<= ~SIZE~0 (+ main_~i~0 2))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {1971#true} is VALID [2018-11-23 12:18:01,544 INFO L273 TraceCheckUtils]: 28: Hoare triple {1971#true} ~cond := #in~cond; {1971#true} is VALID [2018-11-23 12:18:01,544 INFO L273 TraceCheckUtils]: 29: Hoare triple {1971#true} assume !(0 == ~cond); {1971#true} is VALID [2018-11-23 12:18:01,544 INFO L273 TraceCheckUtils]: 30: Hoare triple {1971#true} assume true; {1971#true} is VALID [2018-11-23 12:18:01,545 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {1971#true} {1979#(<= ~SIZE~0 (+ main_~i~0 2))} #65#return; {1979#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:18:01,546 INFO L273 TraceCheckUtils]: 32: Hoare triple {1979#(<= ~SIZE~0 (+ main_~i~0 2))} havoc #t~mem4; {1979#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:18:01,546 INFO L273 TraceCheckUtils]: 33: Hoare triple {1979#(<= ~SIZE~0 (+ main_~i~0 2))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {1980#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:18:01,547 INFO L273 TraceCheckUtils]: 34: Hoare triple {1980#(<= ~SIZE~0 (+ main_~i~0 1))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1980#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:18:01,547 INFO L256 TraceCheckUtils]: 35: Hoare triple {1980#(<= ~SIZE~0 (+ main_~i~0 1))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {1971#true} is VALID [2018-11-23 12:18:01,548 INFO L273 TraceCheckUtils]: 36: Hoare triple {1971#true} ~cond := #in~cond; {1971#true} is VALID [2018-11-23 12:18:01,548 INFO L273 TraceCheckUtils]: 37: Hoare triple {1971#true} assume !(0 == ~cond); {1971#true} is VALID [2018-11-23 12:18:01,548 INFO L273 TraceCheckUtils]: 38: Hoare triple {1971#true} assume true; {1971#true} is VALID [2018-11-23 12:18:01,548 INFO L268 TraceCheckUtils]: 39: Hoare quadruple {1971#true} {1980#(<= ~SIZE~0 (+ main_~i~0 1))} #65#return; {1980#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:18:01,549 INFO L273 TraceCheckUtils]: 40: Hoare triple {1980#(<= ~SIZE~0 (+ main_~i~0 1))} havoc #t~mem4; {1980#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:18:01,549 INFO L273 TraceCheckUtils]: 41: Hoare triple {1980#(<= ~SIZE~0 (+ main_~i~0 1))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {1981#(<= ~SIZE~0 main_~i~0)} is VALID [2018-11-23 12:18:01,550 INFO L273 TraceCheckUtils]: 42: Hoare triple {1981#(<= ~SIZE~0 main_~i~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1972#false} is VALID [2018-11-23 12:18:01,550 INFO L256 TraceCheckUtils]: 43: Hoare triple {1972#false} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {1972#false} is VALID [2018-11-23 12:18:01,550 INFO L273 TraceCheckUtils]: 44: Hoare triple {1972#false} ~cond := #in~cond; {1972#false} is VALID [2018-11-23 12:18:01,551 INFO L273 TraceCheckUtils]: 45: Hoare triple {1972#false} assume 0 == ~cond; {1972#false} is VALID [2018-11-23 12:18:01,551 INFO L273 TraceCheckUtils]: 46: Hoare triple {1972#false} assume !false; {1972#false} is VALID [2018-11-23 12:18:01,554 INFO L134 CoverageAnalysis]: Checked inductivity of 48 backedges. 15 proven. 21 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2018-11-23 12:18:01,554 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:18:01,554 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:18:01,564 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 12:18:01,593 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 12:18:01,593 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:18:01,619 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:01,621 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:18:01,960 INFO L256 TraceCheckUtils]: 0: Hoare triple {1971#true} call ULTIMATE.init(); {1971#true} is VALID [2018-11-23 12:18:01,960 INFO L273 TraceCheckUtils]: 1: Hoare triple {1971#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {1971#true} is VALID [2018-11-23 12:18:01,960 INFO L273 TraceCheckUtils]: 2: Hoare triple {1971#true} assume true; {1971#true} is VALID [2018-11-23 12:18:01,961 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1971#true} {1971#true} #61#return; {1971#true} is VALID [2018-11-23 12:18:01,961 INFO L256 TraceCheckUtils]: 4: Hoare triple {1971#true} call #t~ret5 := main(); {1971#true} is VALID [2018-11-23 12:18:01,961 INFO L273 TraceCheckUtils]: 5: Hoare triple {1971#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {1971#true} is VALID [2018-11-23 12:18:01,962 INFO L273 TraceCheckUtils]: 6: Hoare triple {1971#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {2003#(<= main_~i~0 0)} is VALID [2018-11-23 12:18:01,963 INFO L273 TraceCheckUtils]: 7: Hoare triple {2003#(<= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0); {2003#(<= main_~i~0 0)} is VALID [2018-11-23 12:18:01,963 INFO L273 TraceCheckUtils]: 8: Hoare triple {2003#(<= main_~i~0 0)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2003#(<= main_~i~0 0)} is VALID [2018-11-23 12:18:01,982 INFO L273 TraceCheckUtils]: 9: Hoare triple {2003#(<= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1974#(<= main_~i~0 1)} is VALID [2018-11-23 12:18:01,995 INFO L273 TraceCheckUtils]: 10: Hoare triple {1974#(<= main_~i~0 1)} assume !!(~i~0 < ~SIZE~0); {1974#(<= main_~i~0 1)} is VALID [2018-11-23 12:18:02,004 INFO L273 TraceCheckUtils]: 11: Hoare triple {1974#(<= main_~i~0 1)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1974#(<= main_~i~0 1)} is VALID [2018-11-23 12:18:02,018 INFO L273 TraceCheckUtils]: 12: Hoare triple {1974#(<= main_~i~0 1)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1975#(<= main_~i~0 2)} is VALID [2018-11-23 12:18:02,026 INFO L273 TraceCheckUtils]: 13: Hoare triple {1975#(<= main_~i~0 2)} assume !!(~i~0 < ~SIZE~0); {1975#(<= main_~i~0 2)} is VALID [2018-11-23 12:18:02,027 INFO L273 TraceCheckUtils]: 14: Hoare triple {1975#(<= main_~i~0 2)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1975#(<= main_~i~0 2)} is VALID [2018-11-23 12:18:02,028 INFO L273 TraceCheckUtils]: 15: Hoare triple {1975#(<= main_~i~0 2)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {1976#(<= main_~i~0 3)} is VALID [2018-11-23 12:18:02,028 INFO L273 TraceCheckUtils]: 16: Hoare triple {1976#(<= main_~i~0 3)} assume !(~i~0 < ~SIZE~0); {1977#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:18:02,029 INFO L273 TraceCheckUtils]: 17: Hoare triple {1977#(<= ~SIZE~0 3)} ~i~0 := 0; {2037#(and (<= 0 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:18:02,029 INFO L273 TraceCheckUtils]: 18: Hoare triple {2037#(and (<= 0 main_~i~0) (<= ~SIZE~0 3))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2037#(and (<= 0 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:18:02,030 INFO L256 TraceCheckUtils]: 19: Hoare triple {2037#(and (<= 0 main_~i~0) (<= ~SIZE~0 3))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {1977#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:18:02,030 INFO L273 TraceCheckUtils]: 20: Hoare triple {1977#(<= ~SIZE~0 3)} ~cond := #in~cond; {1977#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:18:02,030 INFO L273 TraceCheckUtils]: 21: Hoare triple {1977#(<= ~SIZE~0 3)} assume !(0 == ~cond); {1977#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:18:02,033 INFO L273 TraceCheckUtils]: 22: Hoare triple {1977#(<= ~SIZE~0 3)} assume true; {1977#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:18:02,034 INFO L268 TraceCheckUtils]: 23: Hoare quadruple {1977#(<= ~SIZE~0 3)} {2037#(and (<= 0 main_~i~0) (<= ~SIZE~0 3))} #65#return; {2037#(and (<= 0 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:18:02,034 INFO L273 TraceCheckUtils]: 24: Hoare triple {2037#(and (<= 0 main_~i~0) (<= ~SIZE~0 3))} havoc #t~mem4; {2037#(and (<= 0 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:18:02,035 INFO L273 TraceCheckUtils]: 25: Hoare triple {2037#(and (<= 0 main_~i~0) (<= ~SIZE~0 3))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {2062#(and (<= 1 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:18:02,036 INFO L273 TraceCheckUtils]: 26: Hoare triple {2062#(and (<= 1 main_~i~0) (<= ~SIZE~0 3))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2062#(and (<= 1 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:18:02,036 INFO L256 TraceCheckUtils]: 27: Hoare triple {2062#(and (<= 1 main_~i~0) (<= ~SIZE~0 3))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {1977#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:18:02,037 INFO L273 TraceCheckUtils]: 28: Hoare triple {1977#(<= ~SIZE~0 3)} ~cond := #in~cond; {1977#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:18:02,052 INFO L273 TraceCheckUtils]: 29: Hoare triple {1977#(<= ~SIZE~0 3)} assume !(0 == ~cond); {1977#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:18:02,053 INFO L273 TraceCheckUtils]: 30: Hoare triple {1977#(<= ~SIZE~0 3)} assume true; {1977#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:18:02,053 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {1977#(<= ~SIZE~0 3)} {2062#(and (<= 1 main_~i~0) (<= ~SIZE~0 3))} #65#return; {2062#(and (<= 1 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:18:02,054 INFO L273 TraceCheckUtils]: 32: Hoare triple {2062#(and (<= 1 main_~i~0) (<= ~SIZE~0 3))} havoc #t~mem4; {2062#(and (<= 1 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:18:02,054 INFO L273 TraceCheckUtils]: 33: Hoare triple {2062#(and (<= 1 main_~i~0) (<= ~SIZE~0 3))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {2087#(and (<= 2 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:18:02,055 INFO L273 TraceCheckUtils]: 34: Hoare triple {2087#(and (<= 2 main_~i~0) (<= ~SIZE~0 3))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2087#(and (<= 2 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:18:02,056 INFO L256 TraceCheckUtils]: 35: Hoare triple {2087#(and (<= 2 main_~i~0) (<= ~SIZE~0 3))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {1977#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:18:02,056 INFO L273 TraceCheckUtils]: 36: Hoare triple {1977#(<= ~SIZE~0 3)} ~cond := #in~cond; {1977#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:18:02,057 INFO L273 TraceCheckUtils]: 37: Hoare triple {1977#(<= ~SIZE~0 3)} assume !(0 == ~cond); {1977#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:18:02,057 INFO L273 TraceCheckUtils]: 38: Hoare triple {1977#(<= ~SIZE~0 3)} assume true; {1977#(<= ~SIZE~0 3)} is VALID [2018-11-23 12:18:02,058 INFO L268 TraceCheckUtils]: 39: Hoare quadruple {1977#(<= ~SIZE~0 3)} {2087#(and (<= 2 main_~i~0) (<= ~SIZE~0 3))} #65#return; {2087#(and (<= 2 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:18:02,059 INFO L273 TraceCheckUtils]: 40: Hoare triple {2087#(and (<= 2 main_~i~0) (<= ~SIZE~0 3))} havoc #t~mem4; {2087#(and (<= 2 main_~i~0) (<= ~SIZE~0 3))} is VALID [2018-11-23 12:18:02,059 INFO L273 TraceCheckUtils]: 41: Hoare triple {2087#(and (<= 2 main_~i~0) (<= ~SIZE~0 3))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {2112#(and (<= ~SIZE~0 3) (<= 3 main_~i~0))} is VALID [2018-11-23 12:18:02,060 INFO L273 TraceCheckUtils]: 42: Hoare triple {2112#(and (<= ~SIZE~0 3) (<= 3 main_~i~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1972#false} is VALID [2018-11-23 12:18:02,061 INFO L256 TraceCheckUtils]: 43: Hoare triple {1972#false} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {1972#false} is VALID [2018-11-23 12:18:02,061 INFO L273 TraceCheckUtils]: 44: Hoare triple {1972#false} ~cond := #in~cond; {1972#false} is VALID [2018-11-23 12:18:02,061 INFO L273 TraceCheckUtils]: 45: Hoare triple {1972#false} assume 0 == ~cond; {1972#false} is VALID [2018-11-23 12:18:02,061 INFO L273 TraceCheckUtils]: 46: Hoare triple {1972#false} assume !false; {1972#false} is VALID [2018-11-23 12:18:02,064 INFO L134 CoverageAnalysis]: Checked inductivity of 48 backedges. 24 proven. 12 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2018-11-23 12:18:02,082 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:18:02,083 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 16 [2018-11-23 12:18:02,083 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 47 [2018-11-23 12:18:02,083 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:18:02,084 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states. [2018-11-23 12:18:02,138 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:18:02,138 INFO L459 AbstractCegarLoop]: Interpolant automaton has 16 states [2018-11-23 12:18:02,139 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2018-11-23 12:18:02,139 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=65, Invalid=175, Unknown=0, NotChecked=0, Total=240 [2018-11-23 12:18:02,139 INFO L87 Difference]: Start difference. First operand 51 states and 53 transitions. Second operand 16 states. [2018-11-23 12:18:02,976 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:02,976 INFO L93 Difference]: Finished difference Result 123 states and 130 transitions. [2018-11-23 12:18:02,976 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2018-11-23 12:18:02,976 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 47 [2018-11-23 12:18:02,977 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:18:02,977 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-23 12:18:02,980 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 93 transitions. [2018-11-23 12:18:02,980 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-23 12:18:02,983 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 93 transitions. [2018-11-23 12:18:02,983 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 93 transitions. [2018-11-23 12:18:03,115 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 93 edges. 93 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:18:03,116 INFO L225 Difference]: With dead ends: 123 [2018-11-23 12:18:03,117 INFO L226 Difference]: Without dead ends: 61 [2018-11-23 12:18:03,118 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 61 GetRequests, 43 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 78 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=103, Invalid=277, Unknown=0, NotChecked=0, Total=380 [2018-11-23 12:18:03,118 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 61 states. [2018-11-23 12:18:03,228 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 61 to 54. [2018-11-23 12:18:03,228 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:18:03,228 INFO L82 GeneralOperation]: Start isEquivalent. First operand 61 states. Second operand 54 states. [2018-11-23 12:18:03,228 INFO L74 IsIncluded]: Start isIncluded. First operand 61 states. Second operand 54 states. [2018-11-23 12:18:03,228 INFO L87 Difference]: Start difference. First operand 61 states. Second operand 54 states. [2018-11-23 12:18:03,232 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:03,232 INFO L93 Difference]: Finished difference Result 61 states and 64 transitions. [2018-11-23 12:18:03,232 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 64 transitions. [2018-11-23 12:18:03,232 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:03,232 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:03,232 INFO L74 IsIncluded]: Start isIncluded. First operand 54 states. Second operand 61 states. [2018-11-23 12:18:03,233 INFO L87 Difference]: Start difference. First operand 54 states. Second operand 61 states. [2018-11-23 12:18:03,235 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:03,235 INFO L93 Difference]: Finished difference Result 61 states and 64 transitions. [2018-11-23 12:18:03,235 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 64 transitions. [2018-11-23 12:18:03,236 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:03,236 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:03,236 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:18:03,236 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:18:03,236 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 54 states. [2018-11-23 12:18:03,238 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 54 states to 54 states and 56 transitions. [2018-11-23 12:18:03,238 INFO L78 Accepts]: Start accepts. Automaton has 54 states and 56 transitions. Word has length 47 [2018-11-23 12:18:03,238 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:18:03,238 INFO L480 AbstractCegarLoop]: Abstraction has 54 states and 56 transitions. [2018-11-23 12:18:03,238 INFO L481 AbstractCegarLoop]: Interpolant automaton has 16 states. [2018-11-23 12:18:03,239 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 56 transitions. [2018-11-23 12:18:03,239 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2018-11-23 12:18:03,239 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:18:03,239 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:18:03,240 INFO L423 AbstractCegarLoop]: === Iteration 9 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:18:03,240 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:18:03,240 INFO L82 PathProgramCache]: Analyzing trace with hash -830164446, now seen corresponding path program 5 times [2018-11-23 12:18:03,240 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:18:03,240 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:18:03,241 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:03,241 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:18:03,241 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:03,260 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:03,659 INFO L256 TraceCheckUtils]: 0: Hoare triple {2501#true} call ULTIMATE.init(); {2501#true} is VALID [2018-11-23 12:18:03,659 INFO L273 TraceCheckUtils]: 1: Hoare triple {2501#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {2501#true} is VALID [2018-11-23 12:18:03,659 INFO L273 TraceCheckUtils]: 2: Hoare triple {2501#true} assume true; {2501#true} is VALID [2018-11-23 12:18:03,659 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2501#true} {2501#true} #61#return; {2501#true} is VALID [2018-11-23 12:18:03,659 INFO L256 TraceCheckUtils]: 4: Hoare triple {2501#true} call #t~ret5 := main(); {2501#true} is VALID [2018-11-23 12:18:03,660 INFO L273 TraceCheckUtils]: 5: Hoare triple {2501#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {2501#true} is VALID [2018-11-23 12:18:03,660 INFO L273 TraceCheckUtils]: 6: Hoare triple {2501#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {2503#(= main_~i~0 0)} is VALID [2018-11-23 12:18:03,660 INFO L273 TraceCheckUtils]: 7: Hoare triple {2503#(= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0); {2503#(= main_~i~0 0)} is VALID [2018-11-23 12:18:03,661 INFO L273 TraceCheckUtils]: 8: Hoare triple {2503#(= main_~i~0 0)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2503#(= main_~i~0 0)} is VALID [2018-11-23 12:18:03,661 INFO L273 TraceCheckUtils]: 9: Hoare triple {2503#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2504#(and (<= 1 main_~i~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:18:03,662 INFO L273 TraceCheckUtils]: 10: Hoare triple {2504#(and (<= 1 main_~i~0) (<= main_~i~0 1))} assume !!(~i~0 < ~SIZE~0); {2504#(and (<= 1 main_~i~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:18:03,663 INFO L273 TraceCheckUtils]: 11: Hoare triple {2504#(and (<= 1 main_~i~0) (<= main_~i~0 1))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2504#(and (<= 1 main_~i~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:18:03,663 INFO L273 TraceCheckUtils]: 12: Hoare triple {2504#(and (<= 1 main_~i~0) (<= main_~i~0 1))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2505#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:18:03,664 INFO L273 TraceCheckUtils]: 13: Hoare triple {2505#(and (<= 2 main_~i~0) (<= main_~i~0 2))} assume !!(~i~0 < ~SIZE~0); {2505#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:18:03,665 INFO L273 TraceCheckUtils]: 14: Hoare triple {2505#(and (<= 2 main_~i~0) (<= main_~i~0 2))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2505#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:18:03,666 INFO L273 TraceCheckUtils]: 15: Hoare triple {2505#(and (<= 2 main_~i~0) (<= main_~i~0 2))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2506#(and (<= main_~i~0 3) (<= 3 main_~i~0))} is VALID [2018-11-23 12:18:03,666 INFO L273 TraceCheckUtils]: 16: Hoare triple {2506#(and (<= main_~i~0 3) (<= 3 main_~i~0))} assume !!(~i~0 < ~SIZE~0); {2506#(and (<= main_~i~0 3) (<= 3 main_~i~0))} is VALID [2018-11-23 12:18:03,667 INFO L273 TraceCheckUtils]: 17: Hoare triple {2506#(and (<= main_~i~0 3) (<= 3 main_~i~0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2507#(and (<= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0)))) (<= 3 main_~i~0))} is VALID [2018-11-23 12:18:03,668 INFO L273 TraceCheckUtils]: 18: Hoare triple {2507#(and (<= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0)))) (<= 3 main_~i~0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2508#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 3))))} is VALID [2018-11-23 12:18:03,669 INFO L273 TraceCheckUtils]: 19: Hoare triple {2508#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 3))))} assume !(~i~0 < ~SIZE~0); {2508#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 3))))} is VALID [2018-11-23 12:18:03,670 INFO L273 TraceCheckUtils]: 20: Hoare triple {2508#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 3))))} ~i~0 := 0; {2509#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 3)))) (= main_~i~0 0))} is VALID [2018-11-23 12:18:03,670 INFO L273 TraceCheckUtils]: 21: Hoare triple {2509#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 3)))) (= main_~i~0 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2509#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 3)))) (= main_~i~0 0))} is VALID [2018-11-23 12:18:03,671 INFO L256 TraceCheckUtils]: 22: Hoare triple {2509#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 3)))) (= main_~i~0 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {2501#true} is VALID [2018-11-23 12:18:03,671 INFO L273 TraceCheckUtils]: 23: Hoare triple {2501#true} ~cond := #in~cond; {2510#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} is VALID [2018-11-23 12:18:03,672 INFO L273 TraceCheckUtils]: 24: Hoare triple {2510#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} assume !(0 == ~cond); {2511#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:18:03,672 INFO L273 TraceCheckUtils]: 25: Hoare triple {2511#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2511#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:18:03,673 INFO L268 TraceCheckUtils]: 26: Hoare quadruple {2511#(not (= |__VERIFIER_assert_#in~cond| 0))} {2509#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 3)))) (= main_~i~0 0))} #65#return; {2509#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 3)))) (= main_~i~0 0))} is VALID [2018-11-23 12:18:03,674 INFO L273 TraceCheckUtils]: 27: Hoare triple {2509#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 3)))) (= main_~i~0 0))} havoc #t~mem4; {2509#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 3)))) (= main_~i~0 0))} is VALID [2018-11-23 12:18:03,675 INFO L273 TraceCheckUtils]: 28: Hoare triple {2509#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 3)))) (= main_~i~0 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {2512#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} is VALID [2018-11-23 12:18:03,675 INFO L273 TraceCheckUtils]: 29: Hoare triple {2512#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2512#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} is VALID [2018-11-23 12:18:03,676 INFO L256 TraceCheckUtils]: 30: Hoare triple {2512#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {2501#true} is VALID [2018-11-23 12:18:03,676 INFO L273 TraceCheckUtils]: 31: Hoare triple {2501#true} ~cond := #in~cond; {2501#true} is VALID [2018-11-23 12:18:03,676 INFO L273 TraceCheckUtils]: 32: Hoare triple {2501#true} assume !(0 == ~cond); {2501#true} is VALID [2018-11-23 12:18:03,676 INFO L273 TraceCheckUtils]: 33: Hoare triple {2501#true} assume true; {2501#true} is VALID [2018-11-23 12:18:03,677 INFO L268 TraceCheckUtils]: 34: Hoare quadruple {2501#true} {2512#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} #65#return; {2512#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} is VALID [2018-11-23 12:18:03,678 INFO L273 TraceCheckUtils]: 35: Hoare triple {2512#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} havoc #t~mem4; {2512#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} is VALID [2018-11-23 12:18:03,679 INFO L273 TraceCheckUtils]: 36: Hoare triple {2512#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {2513#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:18:03,679 INFO L273 TraceCheckUtils]: 37: Hoare triple {2513#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2513#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:18:03,680 INFO L256 TraceCheckUtils]: 38: Hoare triple {2513#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {2501#true} is VALID [2018-11-23 12:18:03,680 INFO L273 TraceCheckUtils]: 39: Hoare triple {2501#true} ~cond := #in~cond; {2501#true} is VALID [2018-11-23 12:18:03,680 INFO L273 TraceCheckUtils]: 40: Hoare triple {2501#true} assume !(0 == ~cond); {2501#true} is VALID [2018-11-23 12:18:03,680 INFO L273 TraceCheckUtils]: 41: Hoare triple {2501#true} assume true; {2501#true} is VALID [2018-11-23 12:18:03,681 INFO L268 TraceCheckUtils]: 42: Hoare quadruple {2501#true} {2513#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} #65#return; {2513#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:18:03,682 INFO L273 TraceCheckUtils]: 43: Hoare triple {2513#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} havoc #t~mem4; {2513#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:18:03,682 INFO L273 TraceCheckUtils]: 44: Hoare triple {2513#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {2514#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0))))} is VALID [2018-11-23 12:18:03,683 INFO L273 TraceCheckUtils]: 45: Hoare triple {2514#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2515#(= |main_#t~mem4| 0)} is VALID [2018-11-23 12:18:03,684 INFO L256 TraceCheckUtils]: 46: Hoare triple {2515#(= |main_#t~mem4| 0)} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {2511#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:18:03,685 INFO L273 TraceCheckUtils]: 47: Hoare triple {2511#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {2516#(not (= __VERIFIER_assert_~cond 0))} is VALID [2018-11-23 12:18:03,685 INFO L273 TraceCheckUtils]: 48: Hoare triple {2516#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {2502#false} is VALID [2018-11-23 12:18:03,686 INFO L273 TraceCheckUtils]: 49: Hoare triple {2502#false} assume !false; {2502#false} is VALID [2018-11-23 12:18:03,690 INFO L134 CoverageAnalysis]: Checked inductivity of 58 backedges. 5 proven. 47 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2018-11-23 12:18:03,690 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:18:03,690 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:18:03,699 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 12:18:03,737 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 5 check-sat command(s) [2018-11-23 12:18:03,737 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:18:03,750 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:03,751 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:18:03,902 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 10 [2018-11-23 12:18:03,909 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 10 treesize of output 9 [2018-11-23 12:18:03,911 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:18:03,912 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:03,916 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:03,916 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:17, output treesize:13 [2018-11-23 12:18:04,473 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 15 treesize of output 11 [2018-11-23 12:18:04,501 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 3 [2018-11-23 12:18:04,504 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:18:04,505 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:04,506 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:04,506 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:15, output treesize:3 [2018-11-23 12:18:04,508 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:18:04,508 WARN L384 uantifierElimination]: Input elimination task: ∃ [|#memory_int|, |main_~#a~0.base|]. (let ((.cse0 (select (select |#memory_int| |main_~#a~0.base|) 12))) (and (= .cse0 0) (= .cse0 |main_#t~mem4|))) [2018-11-23 12:18:04,508 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (= 0 |main_#t~mem4|) [2018-11-23 12:18:04,635 INFO L256 TraceCheckUtils]: 0: Hoare triple {2501#true} call ULTIMATE.init(); {2501#true} is VALID [2018-11-23 12:18:04,635 INFO L273 TraceCheckUtils]: 1: Hoare triple {2501#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {2501#true} is VALID [2018-11-23 12:18:04,635 INFO L273 TraceCheckUtils]: 2: Hoare triple {2501#true} assume true; {2501#true} is VALID [2018-11-23 12:18:04,635 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2501#true} {2501#true} #61#return; {2501#true} is VALID [2018-11-23 12:18:04,636 INFO L256 TraceCheckUtils]: 4: Hoare triple {2501#true} call #t~ret5 := main(); {2501#true} is VALID [2018-11-23 12:18:04,636 INFO L273 TraceCheckUtils]: 5: Hoare triple {2501#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {2501#true} is VALID [2018-11-23 12:18:04,640 INFO L273 TraceCheckUtils]: 6: Hoare triple {2501#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {2538#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:04,640 INFO L273 TraceCheckUtils]: 7: Hoare triple {2538#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {2538#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:04,642 INFO L273 TraceCheckUtils]: 8: Hoare triple {2538#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2538#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:04,642 INFO L273 TraceCheckUtils]: 9: Hoare triple {2538#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2548#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:04,644 INFO L273 TraceCheckUtils]: 10: Hoare triple {2548#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {2548#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:04,644 INFO L273 TraceCheckUtils]: 11: Hoare triple {2548#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2548#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:04,646 INFO L273 TraceCheckUtils]: 12: Hoare triple {2548#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2558#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:04,646 INFO L273 TraceCheckUtils]: 13: Hoare triple {2558#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {2558#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:04,648 INFO L273 TraceCheckUtils]: 14: Hoare triple {2558#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2558#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:04,648 INFO L273 TraceCheckUtils]: 15: Hoare triple {2558#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2568#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:04,650 INFO L273 TraceCheckUtils]: 16: Hoare triple {2568#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {2568#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:04,650 INFO L273 TraceCheckUtils]: 17: Hoare triple {2568#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2575#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:04,652 INFO L273 TraceCheckUtils]: 18: Hoare triple {2575#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {2575#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:04,652 INFO L273 TraceCheckUtils]: 19: Hoare triple {2575#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {2575#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:04,654 INFO L273 TraceCheckUtils]: 20: Hoare triple {2575#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {2585#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:04,655 INFO L273 TraceCheckUtils]: 21: Hoare triple {2585#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2585#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:04,660 INFO L256 TraceCheckUtils]: 22: Hoare triple {2585#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {2592#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12)))} is VALID [2018-11-23 12:18:04,663 INFO L273 TraceCheckUtils]: 23: Hoare triple {2592#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12)))} ~cond := #in~cond; {2592#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12)))} is VALID [2018-11-23 12:18:04,663 INFO L273 TraceCheckUtils]: 24: Hoare triple {2592#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12)))} assume !(0 == ~cond); {2592#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12)))} is VALID [2018-11-23 12:18:04,667 INFO L273 TraceCheckUtils]: 25: Hoare triple {2592#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12)))} assume true; {2592#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12)))} is VALID [2018-11-23 12:18:04,667 INFO L268 TraceCheckUtils]: 26: Hoare quadruple {2592#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12)))} {2585#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #65#return; {2585#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:04,671 INFO L273 TraceCheckUtils]: 27: Hoare triple {2585#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {2585#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:04,672 INFO L273 TraceCheckUtils]: 28: Hoare triple {2585#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {2611#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:04,673 INFO L273 TraceCheckUtils]: 29: Hoare triple {2611#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2611#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:04,674 INFO L256 TraceCheckUtils]: 30: Hoare triple {2611#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {2592#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12)))} is VALID [2018-11-23 12:18:04,675 INFO L273 TraceCheckUtils]: 31: Hoare triple {2592#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12)))} ~cond := #in~cond; {2592#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12)))} is VALID [2018-11-23 12:18:04,675 INFO L273 TraceCheckUtils]: 32: Hoare triple {2592#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12)))} assume !(0 == ~cond); {2592#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12)))} is VALID [2018-11-23 12:18:04,677 INFO L273 TraceCheckUtils]: 33: Hoare triple {2592#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12)))} assume true; {2592#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12)))} is VALID [2018-11-23 12:18:04,678 INFO L268 TraceCheckUtils]: 34: Hoare quadruple {2592#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12)))} {2611#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} #65#return; {2611#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:04,679 INFO L273 TraceCheckUtils]: 35: Hoare triple {2611#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {2611#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:04,679 INFO L273 TraceCheckUtils]: 36: Hoare triple {2611#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {2636#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:04,681 INFO L273 TraceCheckUtils]: 37: Hoare triple {2636#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2636#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:04,682 INFO L256 TraceCheckUtils]: 38: Hoare triple {2636#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {2592#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12)))} is VALID [2018-11-23 12:18:04,684 INFO L273 TraceCheckUtils]: 39: Hoare triple {2592#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12)))} ~cond := #in~cond; {2592#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12)))} is VALID [2018-11-23 12:18:04,684 INFO L273 TraceCheckUtils]: 40: Hoare triple {2592#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12)))} assume !(0 == ~cond); {2592#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12)))} is VALID [2018-11-23 12:18:04,686 INFO L273 TraceCheckUtils]: 41: Hoare triple {2592#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12)))} assume true; {2592#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12)))} is VALID [2018-11-23 12:18:04,687 INFO L268 TraceCheckUtils]: 42: Hoare quadruple {2592#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12)))} {2636#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} #65#return; {2636#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:04,688 INFO L273 TraceCheckUtils]: 43: Hoare triple {2636#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {2636#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:04,689 INFO L273 TraceCheckUtils]: 44: Hoare triple {2636#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {2661#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:04,690 INFO L273 TraceCheckUtils]: 45: Hoare triple {2661#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2515#(= |main_#t~mem4| 0)} is VALID [2018-11-23 12:18:04,691 INFO L256 TraceCheckUtils]: 46: Hoare triple {2515#(= |main_#t~mem4| 0)} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {2668#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:18:04,692 INFO L273 TraceCheckUtils]: 47: Hoare triple {2668#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {2672#(= 1 __VERIFIER_assert_~cond)} is VALID [2018-11-23 12:18:04,692 INFO L273 TraceCheckUtils]: 48: Hoare triple {2672#(= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2502#false} is VALID [2018-11-23 12:18:04,693 INFO L273 TraceCheckUtils]: 49: Hoare triple {2502#false} assume !false; {2502#false} is VALID [2018-11-23 12:18:04,700 INFO L134 CoverageAnalysis]: Checked inductivity of 58 backedges. 0 proven. 46 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2018-11-23 12:18:04,719 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:18:04,719 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 15] total 28 [2018-11-23 12:18:04,720 INFO L78 Accepts]: Start accepts. Automaton has 28 states. Word has length 50 [2018-11-23 12:18:04,720 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:18:04,720 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 28 states. [2018-11-23 12:18:04,846 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:18:04,847 INFO L459 AbstractCegarLoop]: Interpolant automaton has 28 states [2018-11-23 12:18:04,847 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2018-11-23 12:18:04,847 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=91, Invalid=665, Unknown=0, NotChecked=0, Total=756 [2018-11-23 12:18:04,848 INFO L87 Difference]: Start difference. First operand 54 states and 56 transitions. Second operand 28 states. [2018-11-23 12:18:07,042 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:07,042 INFO L93 Difference]: Finished difference Result 68 states and 70 transitions. [2018-11-23 12:18:07,042 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2018-11-23 12:18:07,042 INFO L78 Accepts]: Start accepts. Automaton has 28 states. Word has length 50 [2018-11-23 12:18:07,043 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:18:07,043 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 28 states. [2018-11-23 12:18:07,046 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 61 transitions. [2018-11-23 12:18:07,046 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 28 states. [2018-11-23 12:18:07,048 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 61 transitions. [2018-11-23 12:18:07,049 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 25 states and 61 transitions. [2018-11-23 12:18:07,141 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:18:07,143 INFO L225 Difference]: With dead ends: 68 [2018-11-23 12:18:07,143 INFO L226 Difference]: Without dead ends: 66 [2018-11-23 12:18:07,144 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 81 GetRequests, 35 SyntacticMatches, 7 SemanticMatches, 39 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 424 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=192, Invalid=1448, Unknown=0, NotChecked=0, Total=1640 [2018-11-23 12:18:07,144 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 66 states. [2018-11-23 12:18:07,338 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 66 to 62. [2018-11-23 12:18:07,338 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:18:07,338 INFO L82 GeneralOperation]: Start isEquivalent. First operand 66 states. Second operand 62 states. [2018-11-23 12:18:07,339 INFO L74 IsIncluded]: Start isIncluded. First operand 66 states. Second operand 62 states. [2018-11-23 12:18:07,339 INFO L87 Difference]: Start difference. First operand 66 states. Second operand 62 states. [2018-11-23 12:18:07,342 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:07,342 INFO L93 Difference]: Finished difference Result 66 states and 68 transitions. [2018-11-23 12:18:07,342 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 68 transitions. [2018-11-23 12:18:07,343 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:07,343 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:07,343 INFO L74 IsIncluded]: Start isIncluded. First operand 62 states. Second operand 66 states. [2018-11-23 12:18:07,343 INFO L87 Difference]: Start difference. First operand 62 states. Second operand 66 states. [2018-11-23 12:18:07,345 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:07,345 INFO L93 Difference]: Finished difference Result 66 states and 68 transitions. [2018-11-23 12:18:07,346 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 68 transitions. [2018-11-23 12:18:07,346 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:07,346 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:07,346 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:18:07,347 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:18:07,347 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 62 states. [2018-11-23 12:18:07,348 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 62 states to 62 states and 64 transitions. [2018-11-23 12:18:07,349 INFO L78 Accepts]: Start accepts. Automaton has 62 states and 64 transitions. Word has length 50 [2018-11-23 12:18:07,349 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:18:07,349 INFO L480 AbstractCegarLoop]: Abstraction has 62 states and 64 transitions. [2018-11-23 12:18:07,349 INFO L481 AbstractCegarLoop]: Interpolant automaton has 28 states. [2018-11-23 12:18:07,349 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 64 transitions. [2018-11-23 12:18:07,350 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2018-11-23 12:18:07,350 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:18:07,350 INFO L402 BasicCegarLoop]: trace histogram [5, 5, 5, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:18:07,351 INFO L423 AbstractCegarLoop]: === Iteration 10 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:18:07,351 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:18:07,351 INFO L82 PathProgramCache]: Analyzing trace with hash 1167708885, now seen corresponding path program 6 times [2018-11-23 12:18:07,351 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:18:07,351 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:18:07,352 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:07,352 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:18:07,352 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:07,365 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:07,602 INFO L256 TraceCheckUtils]: 0: Hoare triple {3015#true} call ULTIMATE.init(); {3015#true} is VALID [2018-11-23 12:18:07,602 INFO L273 TraceCheckUtils]: 1: Hoare triple {3015#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {3015#true} is VALID [2018-11-23 12:18:07,603 INFO L273 TraceCheckUtils]: 2: Hoare triple {3015#true} assume true; {3015#true} is VALID [2018-11-23 12:18:07,603 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3015#true} {3015#true} #61#return; {3015#true} is VALID [2018-11-23 12:18:07,603 INFO L256 TraceCheckUtils]: 4: Hoare triple {3015#true} call #t~ret5 := main(); {3015#true} is VALID [2018-11-23 12:18:07,603 INFO L273 TraceCheckUtils]: 5: Hoare triple {3015#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {3015#true} is VALID [2018-11-23 12:18:07,604 INFO L273 TraceCheckUtils]: 6: Hoare triple {3015#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {3017#(= main_~i~0 0)} is VALID [2018-11-23 12:18:07,604 INFO L273 TraceCheckUtils]: 7: Hoare triple {3017#(= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0); {3017#(= main_~i~0 0)} is VALID [2018-11-23 12:18:07,605 INFO L273 TraceCheckUtils]: 8: Hoare triple {3017#(= main_~i~0 0)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3017#(= main_~i~0 0)} is VALID [2018-11-23 12:18:07,605 INFO L273 TraceCheckUtils]: 9: Hoare triple {3017#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3018#(<= main_~i~0 1)} is VALID [2018-11-23 12:18:07,606 INFO L273 TraceCheckUtils]: 10: Hoare triple {3018#(<= main_~i~0 1)} assume !!(~i~0 < ~SIZE~0); {3018#(<= main_~i~0 1)} is VALID [2018-11-23 12:18:07,606 INFO L273 TraceCheckUtils]: 11: Hoare triple {3018#(<= main_~i~0 1)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3018#(<= main_~i~0 1)} is VALID [2018-11-23 12:18:07,606 INFO L273 TraceCheckUtils]: 12: Hoare triple {3018#(<= main_~i~0 1)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3019#(<= main_~i~0 2)} is VALID [2018-11-23 12:18:07,607 INFO L273 TraceCheckUtils]: 13: Hoare triple {3019#(<= main_~i~0 2)} assume !!(~i~0 < ~SIZE~0); {3019#(<= main_~i~0 2)} is VALID [2018-11-23 12:18:07,607 INFO L273 TraceCheckUtils]: 14: Hoare triple {3019#(<= main_~i~0 2)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3019#(<= main_~i~0 2)} is VALID [2018-11-23 12:18:07,608 INFO L273 TraceCheckUtils]: 15: Hoare triple {3019#(<= main_~i~0 2)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3020#(<= main_~i~0 3)} is VALID [2018-11-23 12:18:07,609 INFO L273 TraceCheckUtils]: 16: Hoare triple {3020#(<= main_~i~0 3)} assume !!(~i~0 < ~SIZE~0); {3020#(<= main_~i~0 3)} is VALID [2018-11-23 12:18:07,610 INFO L273 TraceCheckUtils]: 17: Hoare triple {3020#(<= main_~i~0 3)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3020#(<= main_~i~0 3)} is VALID [2018-11-23 12:18:07,610 INFO L273 TraceCheckUtils]: 18: Hoare triple {3020#(<= main_~i~0 3)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3021#(<= main_~i~0 4)} is VALID [2018-11-23 12:18:07,611 INFO L273 TraceCheckUtils]: 19: Hoare triple {3021#(<= main_~i~0 4)} assume !(~i~0 < ~SIZE~0); {3022#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:18:07,612 INFO L273 TraceCheckUtils]: 20: Hoare triple {3022#(<= ~SIZE~0 4)} ~i~0 := 0; {3023#(and (<= ~SIZE~0 4) (= main_~i~0 0))} is VALID [2018-11-23 12:18:07,613 INFO L273 TraceCheckUtils]: 21: Hoare triple {3023#(and (<= ~SIZE~0 4) (= main_~i~0 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3023#(and (<= ~SIZE~0 4) (= main_~i~0 0))} is VALID [2018-11-23 12:18:07,613 INFO L256 TraceCheckUtils]: 22: Hoare triple {3023#(and (<= ~SIZE~0 4) (= main_~i~0 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {3015#true} is VALID [2018-11-23 12:18:07,614 INFO L273 TraceCheckUtils]: 23: Hoare triple {3015#true} ~cond := #in~cond; {3015#true} is VALID [2018-11-23 12:18:07,614 INFO L273 TraceCheckUtils]: 24: Hoare triple {3015#true} assume !(0 == ~cond); {3015#true} is VALID [2018-11-23 12:18:07,614 INFO L273 TraceCheckUtils]: 25: Hoare triple {3015#true} assume true; {3015#true} is VALID [2018-11-23 12:18:07,615 INFO L268 TraceCheckUtils]: 26: Hoare quadruple {3015#true} {3023#(and (<= ~SIZE~0 4) (= main_~i~0 0))} #65#return; {3023#(and (<= ~SIZE~0 4) (= main_~i~0 0))} is VALID [2018-11-23 12:18:07,616 INFO L273 TraceCheckUtils]: 27: Hoare triple {3023#(and (<= ~SIZE~0 4) (= main_~i~0 0))} havoc #t~mem4; {3023#(and (<= ~SIZE~0 4) (= main_~i~0 0))} is VALID [2018-11-23 12:18:07,617 INFO L273 TraceCheckUtils]: 28: Hoare triple {3023#(and (<= ~SIZE~0 4) (= main_~i~0 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {3024#(<= ~SIZE~0 (+ main_~i~0 3))} is VALID [2018-11-23 12:18:07,617 INFO L273 TraceCheckUtils]: 29: Hoare triple {3024#(<= ~SIZE~0 (+ main_~i~0 3))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3024#(<= ~SIZE~0 (+ main_~i~0 3))} is VALID [2018-11-23 12:18:07,617 INFO L256 TraceCheckUtils]: 30: Hoare triple {3024#(<= ~SIZE~0 (+ main_~i~0 3))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {3015#true} is VALID [2018-11-23 12:18:07,617 INFO L273 TraceCheckUtils]: 31: Hoare triple {3015#true} ~cond := #in~cond; {3015#true} is VALID [2018-11-23 12:18:07,618 INFO L273 TraceCheckUtils]: 32: Hoare triple {3015#true} assume !(0 == ~cond); {3015#true} is VALID [2018-11-23 12:18:07,618 INFO L273 TraceCheckUtils]: 33: Hoare triple {3015#true} assume true; {3015#true} is VALID [2018-11-23 12:18:07,618 INFO L268 TraceCheckUtils]: 34: Hoare quadruple {3015#true} {3024#(<= ~SIZE~0 (+ main_~i~0 3))} #65#return; {3024#(<= ~SIZE~0 (+ main_~i~0 3))} is VALID [2018-11-23 12:18:07,619 INFO L273 TraceCheckUtils]: 35: Hoare triple {3024#(<= ~SIZE~0 (+ main_~i~0 3))} havoc #t~mem4; {3024#(<= ~SIZE~0 (+ main_~i~0 3))} is VALID [2018-11-23 12:18:07,620 INFO L273 TraceCheckUtils]: 36: Hoare triple {3024#(<= ~SIZE~0 (+ main_~i~0 3))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {3025#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:18:07,620 INFO L273 TraceCheckUtils]: 37: Hoare triple {3025#(<= ~SIZE~0 (+ main_~i~0 2))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3025#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:18:07,621 INFO L256 TraceCheckUtils]: 38: Hoare triple {3025#(<= ~SIZE~0 (+ main_~i~0 2))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {3015#true} is VALID [2018-11-23 12:18:07,621 INFO L273 TraceCheckUtils]: 39: Hoare triple {3015#true} ~cond := #in~cond; {3015#true} is VALID [2018-11-23 12:18:07,621 INFO L273 TraceCheckUtils]: 40: Hoare triple {3015#true} assume !(0 == ~cond); {3015#true} is VALID [2018-11-23 12:18:07,621 INFO L273 TraceCheckUtils]: 41: Hoare triple {3015#true} assume true; {3015#true} is VALID [2018-11-23 12:18:07,622 INFO L268 TraceCheckUtils]: 42: Hoare quadruple {3015#true} {3025#(<= ~SIZE~0 (+ main_~i~0 2))} #65#return; {3025#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:18:07,623 INFO L273 TraceCheckUtils]: 43: Hoare triple {3025#(<= ~SIZE~0 (+ main_~i~0 2))} havoc #t~mem4; {3025#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:18:07,623 INFO L273 TraceCheckUtils]: 44: Hoare triple {3025#(<= ~SIZE~0 (+ main_~i~0 2))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {3026#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:18:07,624 INFO L273 TraceCheckUtils]: 45: Hoare triple {3026#(<= ~SIZE~0 (+ main_~i~0 1))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3026#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:18:07,624 INFO L256 TraceCheckUtils]: 46: Hoare triple {3026#(<= ~SIZE~0 (+ main_~i~0 1))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {3015#true} is VALID [2018-11-23 12:18:07,624 INFO L273 TraceCheckUtils]: 47: Hoare triple {3015#true} ~cond := #in~cond; {3015#true} is VALID [2018-11-23 12:18:07,624 INFO L273 TraceCheckUtils]: 48: Hoare triple {3015#true} assume !(0 == ~cond); {3015#true} is VALID [2018-11-23 12:18:07,624 INFO L273 TraceCheckUtils]: 49: Hoare triple {3015#true} assume true; {3015#true} is VALID [2018-11-23 12:18:07,625 INFO L268 TraceCheckUtils]: 50: Hoare quadruple {3015#true} {3026#(<= ~SIZE~0 (+ main_~i~0 1))} #65#return; {3026#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:18:07,626 INFO L273 TraceCheckUtils]: 51: Hoare triple {3026#(<= ~SIZE~0 (+ main_~i~0 1))} havoc #t~mem4; {3026#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:18:07,627 INFO L273 TraceCheckUtils]: 52: Hoare triple {3026#(<= ~SIZE~0 (+ main_~i~0 1))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {3027#(<= ~SIZE~0 main_~i~0)} is VALID [2018-11-23 12:18:07,627 INFO L273 TraceCheckUtils]: 53: Hoare triple {3027#(<= ~SIZE~0 main_~i~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3016#false} is VALID [2018-11-23 12:18:07,628 INFO L256 TraceCheckUtils]: 54: Hoare triple {3016#false} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {3016#false} is VALID [2018-11-23 12:18:07,628 INFO L273 TraceCheckUtils]: 55: Hoare triple {3016#false} ~cond := #in~cond; {3016#false} is VALID [2018-11-23 12:18:07,628 INFO L273 TraceCheckUtils]: 56: Hoare triple {3016#false} assume 0 == ~cond; {3016#false} is VALID [2018-11-23 12:18:07,629 INFO L273 TraceCheckUtils]: 57: Hoare triple {3016#false} assume !false; {3016#false} is VALID [2018-11-23 12:18:07,652 INFO L134 CoverageAnalysis]: Checked inductivity of 86 backedges. 27 proven. 35 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2018-11-23 12:18:07,652 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:18:07,652 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:18:07,665 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 12:18:07,689 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2018-11-23 12:18:07,690 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:18:07,702 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:07,704 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:18:07,908 INFO L256 TraceCheckUtils]: 0: Hoare triple {3015#true} call ULTIMATE.init(); {3015#true} is VALID [2018-11-23 12:18:07,909 INFO L273 TraceCheckUtils]: 1: Hoare triple {3015#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {3015#true} is VALID [2018-11-23 12:18:07,909 INFO L273 TraceCheckUtils]: 2: Hoare triple {3015#true} assume true; {3015#true} is VALID [2018-11-23 12:18:07,909 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3015#true} {3015#true} #61#return; {3015#true} is VALID [2018-11-23 12:18:07,909 INFO L256 TraceCheckUtils]: 4: Hoare triple {3015#true} call #t~ret5 := main(); {3015#true} is VALID [2018-11-23 12:18:07,910 INFO L273 TraceCheckUtils]: 5: Hoare triple {3015#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {3015#true} is VALID [2018-11-23 12:18:07,911 INFO L273 TraceCheckUtils]: 6: Hoare triple {3015#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {3049#(<= main_~i~0 0)} is VALID [2018-11-23 12:18:07,911 INFO L273 TraceCheckUtils]: 7: Hoare triple {3049#(<= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0); {3049#(<= main_~i~0 0)} is VALID [2018-11-23 12:18:07,911 INFO L273 TraceCheckUtils]: 8: Hoare triple {3049#(<= main_~i~0 0)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3049#(<= main_~i~0 0)} is VALID [2018-11-23 12:18:07,912 INFO L273 TraceCheckUtils]: 9: Hoare triple {3049#(<= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3018#(<= main_~i~0 1)} is VALID [2018-11-23 12:18:07,912 INFO L273 TraceCheckUtils]: 10: Hoare triple {3018#(<= main_~i~0 1)} assume !!(~i~0 < ~SIZE~0); {3018#(<= main_~i~0 1)} is VALID [2018-11-23 12:18:07,912 INFO L273 TraceCheckUtils]: 11: Hoare triple {3018#(<= main_~i~0 1)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3018#(<= main_~i~0 1)} is VALID [2018-11-23 12:18:07,913 INFO L273 TraceCheckUtils]: 12: Hoare triple {3018#(<= main_~i~0 1)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3019#(<= main_~i~0 2)} is VALID [2018-11-23 12:18:07,914 INFO L273 TraceCheckUtils]: 13: Hoare triple {3019#(<= main_~i~0 2)} assume !!(~i~0 < ~SIZE~0); {3019#(<= main_~i~0 2)} is VALID [2018-11-23 12:18:07,914 INFO L273 TraceCheckUtils]: 14: Hoare triple {3019#(<= main_~i~0 2)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3019#(<= main_~i~0 2)} is VALID [2018-11-23 12:18:07,915 INFO L273 TraceCheckUtils]: 15: Hoare triple {3019#(<= main_~i~0 2)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3020#(<= main_~i~0 3)} is VALID [2018-11-23 12:18:07,916 INFO L273 TraceCheckUtils]: 16: Hoare triple {3020#(<= main_~i~0 3)} assume !!(~i~0 < ~SIZE~0); {3020#(<= main_~i~0 3)} is VALID [2018-11-23 12:18:07,916 INFO L273 TraceCheckUtils]: 17: Hoare triple {3020#(<= main_~i~0 3)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3020#(<= main_~i~0 3)} is VALID [2018-11-23 12:18:07,917 INFO L273 TraceCheckUtils]: 18: Hoare triple {3020#(<= main_~i~0 3)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3021#(<= main_~i~0 4)} is VALID [2018-11-23 12:18:07,918 INFO L273 TraceCheckUtils]: 19: Hoare triple {3021#(<= main_~i~0 4)} assume !(~i~0 < ~SIZE~0); {3022#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:18:07,918 INFO L273 TraceCheckUtils]: 20: Hoare triple {3022#(<= ~SIZE~0 4)} ~i~0 := 0; {3092#(and (<= 0 main_~i~0) (<= ~SIZE~0 4))} is VALID [2018-11-23 12:18:07,919 INFO L273 TraceCheckUtils]: 21: Hoare triple {3092#(and (<= 0 main_~i~0) (<= ~SIZE~0 4))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3092#(and (<= 0 main_~i~0) (<= ~SIZE~0 4))} is VALID [2018-11-23 12:18:07,920 INFO L256 TraceCheckUtils]: 22: Hoare triple {3092#(and (<= 0 main_~i~0) (<= ~SIZE~0 4))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {3022#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:18:07,921 INFO L273 TraceCheckUtils]: 23: Hoare triple {3022#(<= ~SIZE~0 4)} ~cond := #in~cond; {3022#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:18:07,921 INFO L273 TraceCheckUtils]: 24: Hoare triple {3022#(<= ~SIZE~0 4)} assume !(0 == ~cond); {3022#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:18:07,922 INFO L273 TraceCheckUtils]: 25: Hoare triple {3022#(<= ~SIZE~0 4)} assume true; {3022#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:18:07,922 INFO L268 TraceCheckUtils]: 26: Hoare quadruple {3022#(<= ~SIZE~0 4)} {3092#(and (<= 0 main_~i~0) (<= ~SIZE~0 4))} #65#return; {3092#(and (<= 0 main_~i~0) (<= ~SIZE~0 4))} is VALID [2018-11-23 12:18:07,923 INFO L273 TraceCheckUtils]: 27: Hoare triple {3092#(and (<= 0 main_~i~0) (<= ~SIZE~0 4))} havoc #t~mem4; {3092#(and (<= 0 main_~i~0) (<= ~SIZE~0 4))} is VALID [2018-11-23 12:18:07,924 INFO L273 TraceCheckUtils]: 28: Hoare triple {3092#(and (<= 0 main_~i~0) (<= ~SIZE~0 4))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {3117#(and (<= 1 main_~i~0) (<= ~SIZE~0 4))} is VALID [2018-11-23 12:18:07,925 INFO L273 TraceCheckUtils]: 29: Hoare triple {3117#(and (<= 1 main_~i~0) (<= ~SIZE~0 4))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3117#(and (<= 1 main_~i~0) (<= ~SIZE~0 4))} is VALID [2018-11-23 12:18:07,926 INFO L256 TraceCheckUtils]: 30: Hoare triple {3117#(and (<= 1 main_~i~0) (<= ~SIZE~0 4))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {3022#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:18:07,926 INFO L273 TraceCheckUtils]: 31: Hoare triple {3022#(<= ~SIZE~0 4)} ~cond := #in~cond; {3022#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:18:07,927 INFO L273 TraceCheckUtils]: 32: Hoare triple {3022#(<= ~SIZE~0 4)} assume !(0 == ~cond); {3022#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:18:07,927 INFO L273 TraceCheckUtils]: 33: Hoare triple {3022#(<= ~SIZE~0 4)} assume true; {3022#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:18:07,928 INFO L268 TraceCheckUtils]: 34: Hoare quadruple {3022#(<= ~SIZE~0 4)} {3117#(and (<= 1 main_~i~0) (<= ~SIZE~0 4))} #65#return; {3117#(and (<= 1 main_~i~0) (<= ~SIZE~0 4))} is VALID [2018-11-23 12:18:07,929 INFO L273 TraceCheckUtils]: 35: Hoare triple {3117#(and (<= 1 main_~i~0) (<= ~SIZE~0 4))} havoc #t~mem4; {3117#(and (<= 1 main_~i~0) (<= ~SIZE~0 4))} is VALID [2018-11-23 12:18:07,930 INFO L273 TraceCheckUtils]: 36: Hoare triple {3117#(and (<= 1 main_~i~0) (<= ~SIZE~0 4))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {3142#(and (<= 2 main_~i~0) (<= ~SIZE~0 4))} is VALID [2018-11-23 12:18:07,930 INFO L273 TraceCheckUtils]: 37: Hoare triple {3142#(and (<= 2 main_~i~0) (<= ~SIZE~0 4))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3142#(and (<= 2 main_~i~0) (<= ~SIZE~0 4))} is VALID [2018-11-23 12:18:07,931 INFO L256 TraceCheckUtils]: 38: Hoare triple {3142#(and (<= 2 main_~i~0) (<= ~SIZE~0 4))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {3022#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:18:07,932 INFO L273 TraceCheckUtils]: 39: Hoare triple {3022#(<= ~SIZE~0 4)} ~cond := #in~cond; {3022#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:18:07,932 INFO L273 TraceCheckUtils]: 40: Hoare triple {3022#(<= ~SIZE~0 4)} assume !(0 == ~cond); {3022#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:18:07,933 INFO L273 TraceCheckUtils]: 41: Hoare triple {3022#(<= ~SIZE~0 4)} assume true; {3022#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:18:07,934 INFO L268 TraceCheckUtils]: 42: Hoare quadruple {3022#(<= ~SIZE~0 4)} {3142#(and (<= 2 main_~i~0) (<= ~SIZE~0 4))} #65#return; {3142#(and (<= 2 main_~i~0) (<= ~SIZE~0 4))} is VALID [2018-11-23 12:18:07,934 INFO L273 TraceCheckUtils]: 43: Hoare triple {3142#(and (<= 2 main_~i~0) (<= ~SIZE~0 4))} havoc #t~mem4; {3142#(and (<= 2 main_~i~0) (<= ~SIZE~0 4))} is VALID [2018-11-23 12:18:07,935 INFO L273 TraceCheckUtils]: 44: Hoare triple {3142#(and (<= 2 main_~i~0) (<= ~SIZE~0 4))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {3167#(and (<= ~SIZE~0 4) (<= 3 main_~i~0))} is VALID [2018-11-23 12:18:07,936 INFO L273 TraceCheckUtils]: 45: Hoare triple {3167#(and (<= ~SIZE~0 4) (<= 3 main_~i~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3167#(and (<= ~SIZE~0 4) (<= 3 main_~i~0))} is VALID [2018-11-23 12:18:07,937 INFO L256 TraceCheckUtils]: 46: Hoare triple {3167#(and (<= ~SIZE~0 4) (<= 3 main_~i~0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {3022#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:18:07,937 INFO L273 TraceCheckUtils]: 47: Hoare triple {3022#(<= ~SIZE~0 4)} ~cond := #in~cond; {3022#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:18:07,938 INFO L273 TraceCheckUtils]: 48: Hoare triple {3022#(<= ~SIZE~0 4)} assume !(0 == ~cond); {3022#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:18:07,938 INFO L273 TraceCheckUtils]: 49: Hoare triple {3022#(<= ~SIZE~0 4)} assume true; {3022#(<= ~SIZE~0 4)} is VALID [2018-11-23 12:18:07,939 INFO L268 TraceCheckUtils]: 50: Hoare quadruple {3022#(<= ~SIZE~0 4)} {3167#(and (<= ~SIZE~0 4) (<= 3 main_~i~0))} #65#return; {3167#(and (<= ~SIZE~0 4) (<= 3 main_~i~0))} is VALID [2018-11-23 12:18:07,940 INFO L273 TraceCheckUtils]: 51: Hoare triple {3167#(and (<= ~SIZE~0 4) (<= 3 main_~i~0))} havoc #t~mem4; {3167#(and (<= ~SIZE~0 4) (<= 3 main_~i~0))} is VALID [2018-11-23 12:18:07,941 INFO L273 TraceCheckUtils]: 52: Hoare triple {3167#(and (<= ~SIZE~0 4) (<= 3 main_~i~0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {3192#(and (<= 4 main_~i~0) (<= ~SIZE~0 4))} is VALID [2018-11-23 12:18:07,942 INFO L273 TraceCheckUtils]: 53: Hoare triple {3192#(and (<= 4 main_~i~0) (<= ~SIZE~0 4))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3016#false} is VALID [2018-11-23 12:18:07,942 INFO L256 TraceCheckUtils]: 54: Hoare triple {3016#false} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {3016#false} is VALID [2018-11-23 12:18:07,942 INFO L273 TraceCheckUtils]: 55: Hoare triple {3016#false} ~cond := #in~cond; {3016#false} is VALID [2018-11-23 12:18:07,942 INFO L273 TraceCheckUtils]: 56: Hoare triple {3016#false} assume 0 == ~cond; {3016#false} is VALID [2018-11-23 12:18:07,943 INFO L273 TraceCheckUtils]: 57: Hoare triple {3016#false} assume !false; {3016#false} is VALID [2018-11-23 12:18:07,947 INFO L134 CoverageAnalysis]: Checked inductivity of 86 backedges. 40 proven. 22 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2018-11-23 12:18:07,966 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:18:07,966 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 19 [2018-11-23 12:18:07,967 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 58 [2018-11-23 12:18:07,967 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:18:07,968 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states. [2018-11-23 12:18:08,041 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:18:08,041 INFO L459 AbstractCegarLoop]: Interpolant automaton has 19 states [2018-11-23 12:18:08,042 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2018-11-23 12:18:08,042 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=89, Invalid=253, Unknown=0, NotChecked=0, Total=342 [2018-11-23 12:18:08,043 INFO L87 Difference]: Start difference. First operand 62 states and 64 transitions. Second operand 19 states. [2018-11-23 12:18:09,510 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:09,510 INFO L93 Difference]: Finished difference Result 150 states and 157 transitions. [2018-11-23 12:18:09,510 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2018-11-23 12:18:09,510 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 58 [2018-11-23 12:18:09,511 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:18:09,511 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-23 12:18:09,514 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 106 transitions. [2018-11-23 12:18:09,514 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-23 12:18:09,517 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 106 transitions. [2018-11-23 12:18:09,517 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 106 transitions. [2018-11-23 12:18:09,623 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 106 edges. 106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:18:09,625 INFO L225 Difference]: With dead ends: 150 [2018-11-23 12:18:09,625 INFO L226 Difference]: Without dead ends: 72 [2018-11-23 12:18:09,626 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 75 GetRequests, 53 SyntacticMatches, 0 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 119 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=144, Invalid=408, Unknown=0, NotChecked=0, Total=552 [2018-11-23 12:18:09,626 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 72 states. [2018-11-23 12:18:09,941 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 72 to 65. [2018-11-23 12:18:09,941 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:18:09,941 INFO L82 GeneralOperation]: Start isEquivalent. First operand 72 states. Second operand 65 states. [2018-11-23 12:18:09,941 INFO L74 IsIncluded]: Start isIncluded. First operand 72 states. Second operand 65 states. [2018-11-23 12:18:09,941 INFO L87 Difference]: Start difference. First operand 72 states. Second operand 65 states. [2018-11-23 12:18:09,943 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:09,944 INFO L93 Difference]: Finished difference Result 72 states and 75 transitions. [2018-11-23 12:18:09,944 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 75 transitions. [2018-11-23 12:18:09,944 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:09,944 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:09,944 INFO L74 IsIncluded]: Start isIncluded. First operand 65 states. Second operand 72 states. [2018-11-23 12:18:09,944 INFO L87 Difference]: Start difference. First operand 65 states. Second operand 72 states. [2018-11-23 12:18:09,946 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:09,946 INFO L93 Difference]: Finished difference Result 72 states and 75 transitions. [2018-11-23 12:18:09,947 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 75 transitions. [2018-11-23 12:18:09,947 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:09,947 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:09,947 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:18:09,947 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:18:09,947 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 65 states. [2018-11-23 12:18:09,949 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 65 states to 65 states and 67 transitions. [2018-11-23 12:18:09,949 INFO L78 Accepts]: Start accepts. Automaton has 65 states and 67 transitions. Word has length 58 [2018-11-23 12:18:09,949 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:18:09,949 INFO L480 AbstractCegarLoop]: Abstraction has 65 states and 67 transitions. [2018-11-23 12:18:09,950 INFO L481 AbstractCegarLoop]: Interpolant automaton has 19 states. [2018-11-23 12:18:09,950 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 67 transitions. [2018-11-23 12:18:09,950 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2018-11-23 12:18:09,950 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:18:09,951 INFO L402 BasicCegarLoop]: trace histogram [5, 5, 5, 5, 5, 5, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:18:09,951 INFO L423 AbstractCegarLoop]: === Iteration 11 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:18:09,951 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:18:09,951 INFO L82 PathProgramCache]: Analyzing trace with hash 2097163811, now seen corresponding path program 7 times [2018-11-23 12:18:09,951 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:18:09,952 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:18:09,952 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:09,952 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:18:09,953 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:09,969 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:10,400 INFO L256 TraceCheckUtils]: 0: Hoare triple {3657#true} call ULTIMATE.init(); {3657#true} is VALID [2018-11-23 12:18:10,400 INFO L273 TraceCheckUtils]: 1: Hoare triple {3657#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {3657#true} is VALID [2018-11-23 12:18:10,400 INFO L273 TraceCheckUtils]: 2: Hoare triple {3657#true} assume true; {3657#true} is VALID [2018-11-23 12:18:10,401 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3657#true} {3657#true} #61#return; {3657#true} is VALID [2018-11-23 12:18:10,401 INFO L256 TraceCheckUtils]: 4: Hoare triple {3657#true} call #t~ret5 := main(); {3657#true} is VALID [2018-11-23 12:18:10,401 INFO L273 TraceCheckUtils]: 5: Hoare triple {3657#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {3657#true} is VALID [2018-11-23 12:18:10,402 INFO L273 TraceCheckUtils]: 6: Hoare triple {3657#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {3659#(= main_~i~0 0)} is VALID [2018-11-23 12:18:10,402 INFO L273 TraceCheckUtils]: 7: Hoare triple {3659#(= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0); {3659#(= main_~i~0 0)} is VALID [2018-11-23 12:18:10,403 INFO L273 TraceCheckUtils]: 8: Hoare triple {3659#(= main_~i~0 0)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3659#(= main_~i~0 0)} is VALID [2018-11-23 12:18:10,404 INFO L273 TraceCheckUtils]: 9: Hoare triple {3659#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3660#(and (<= 1 main_~i~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:18:10,404 INFO L273 TraceCheckUtils]: 10: Hoare triple {3660#(and (<= 1 main_~i~0) (<= main_~i~0 1))} assume !!(~i~0 < ~SIZE~0); {3660#(and (<= 1 main_~i~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:18:10,404 INFO L273 TraceCheckUtils]: 11: Hoare triple {3660#(and (<= 1 main_~i~0) (<= main_~i~0 1))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3660#(and (<= 1 main_~i~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:18:10,405 INFO L273 TraceCheckUtils]: 12: Hoare triple {3660#(and (<= 1 main_~i~0) (<= main_~i~0 1))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3661#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:18:10,405 INFO L273 TraceCheckUtils]: 13: Hoare triple {3661#(and (<= 2 main_~i~0) (<= main_~i~0 2))} assume !!(~i~0 < ~SIZE~0); {3661#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:18:10,406 INFO L273 TraceCheckUtils]: 14: Hoare triple {3661#(and (<= 2 main_~i~0) (<= main_~i~0 2))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3661#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:18:10,407 INFO L273 TraceCheckUtils]: 15: Hoare triple {3661#(and (<= 2 main_~i~0) (<= main_~i~0 2))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3662#(and (<= main_~i~0 3) (<= 3 main_~i~0))} is VALID [2018-11-23 12:18:10,408 INFO L273 TraceCheckUtils]: 16: Hoare triple {3662#(and (<= main_~i~0 3) (<= 3 main_~i~0))} assume !!(~i~0 < ~SIZE~0); {3662#(and (<= main_~i~0 3) (<= 3 main_~i~0))} is VALID [2018-11-23 12:18:10,409 INFO L273 TraceCheckUtils]: 17: Hoare triple {3662#(and (<= main_~i~0 3) (<= 3 main_~i~0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3662#(and (<= main_~i~0 3) (<= 3 main_~i~0))} is VALID [2018-11-23 12:18:10,409 INFO L273 TraceCheckUtils]: 18: Hoare triple {3662#(and (<= main_~i~0 3) (<= 3 main_~i~0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3663#(and (<= 4 main_~i~0) (<= main_~i~0 4))} is VALID [2018-11-23 12:18:10,410 INFO L273 TraceCheckUtils]: 19: Hoare triple {3663#(and (<= 4 main_~i~0) (<= main_~i~0 4))} assume !!(~i~0 < ~SIZE~0); {3663#(and (<= 4 main_~i~0) (<= main_~i~0 4))} is VALID [2018-11-23 12:18:10,411 INFO L273 TraceCheckUtils]: 20: Hoare triple {3663#(and (<= 4 main_~i~0) (<= main_~i~0 4))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3664#(and (<= 4 main_~i~0) (<= main_~i~0 4) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0)))))} is VALID [2018-11-23 12:18:10,412 INFO L273 TraceCheckUtils]: 21: Hoare triple {3664#(and (<= 4 main_~i~0) (<= main_~i~0 4) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0)))))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3665#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 4))))} is VALID [2018-11-23 12:18:10,413 INFO L273 TraceCheckUtils]: 22: Hoare triple {3665#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 4))))} assume !(~i~0 < ~SIZE~0); {3665#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 4))))} is VALID [2018-11-23 12:18:10,414 INFO L273 TraceCheckUtils]: 23: Hoare triple {3665#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 4))))} ~i~0 := 0; {3666#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 4)))) (= main_~i~0 0))} is VALID [2018-11-23 12:18:10,414 INFO L273 TraceCheckUtils]: 24: Hoare triple {3666#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 4)))) (= main_~i~0 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3666#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 4)))) (= main_~i~0 0))} is VALID [2018-11-23 12:18:10,415 INFO L256 TraceCheckUtils]: 25: Hoare triple {3666#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 4)))) (= main_~i~0 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {3657#true} is VALID [2018-11-23 12:18:10,415 INFO L273 TraceCheckUtils]: 26: Hoare triple {3657#true} ~cond := #in~cond; {3667#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} is VALID [2018-11-23 12:18:10,416 INFO L273 TraceCheckUtils]: 27: Hoare triple {3667#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} assume !(0 == ~cond); {3668#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:18:10,416 INFO L273 TraceCheckUtils]: 28: Hoare triple {3668#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {3668#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:18:10,417 INFO L268 TraceCheckUtils]: 29: Hoare quadruple {3668#(not (= |__VERIFIER_assert_#in~cond| 0))} {3666#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 4)))) (= main_~i~0 0))} #65#return; {3666#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 4)))) (= main_~i~0 0))} is VALID [2018-11-23 12:18:10,418 INFO L273 TraceCheckUtils]: 30: Hoare triple {3666#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 4)))) (= main_~i~0 0))} havoc #t~mem4; {3666#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 4)))) (= main_~i~0 0))} is VALID [2018-11-23 12:18:10,419 INFO L273 TraceCheckUtils]: 31: Hoare triple {3666#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 4)))) (= main_~i~0 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {3669#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} is VALID [2018-11-23 12:18:10,420 INFO L273 TraceCheckUtils]: 32: Hoare triple {3669#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3669#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} is VALID [2018-11-23 12:18:10,420 INFO L256 TraceCheckUtils]: 33: Hoare triple {3669#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {3657#true} is VALID [2018-11-23 12:18:10,420 INFO L273 TraceCheckUtils]: 34: Hoare triple {3657#true} ~cond := #in~cond; {3657#true} is VALID [2018-11-23 12:18:10,420 INFO L273 TraceCheckUtils]: 35: Hoare triple {3657#true} assume !(0 == ~cond); {3657#true} is VALID [2018-11-23 12:18:10,421 INFO L273 TraceCheckUtils]: 36: Hoare triple {3657#true} assume true; {3657#true} is VALID [2018-11-23 12:18:10,421 INFO L268 TraceCheckUtils]: 37: Hoare quadruple {3657#true} {3669#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} #65#return; {3669#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} is VALID [2018-11-23 12:18:10,441 INFO L273 TraceCheckUtils]: 38: Hoare triple {3669#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} havoc #t~mem4; {3669#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} is VALID [2018-11-23 12:18:10,444 INFO L273 TraceCheckUtils]: 39: Hoare triple {3669#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {3670#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} is VALID [2018-11-23 12:18:10,444 INFO L273 TraceCheckUtils]: 40: Hoare triple {3670#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3670#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} is VALID [2018-11-23 12:18:10,444 INFO L256 TraceCheckUtils]: 41: Hoare triple {3670#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {3657#true} is VALID [2018-11-23 12:18:10,444 INFO L273 TraceCheckUtils]: 42: Hoare triple {3657#true} ~cond := #in~cond; {3657#true} is VALID [2018-11-23 12:18:10,444 INFO L273 TraceCheckUtils]: 43: Hoare triple {3657#true} assume !(0 == ~cond); {3657#true} is VALID [2018-11-23 12:18:10,445 INFO L273 TraceCheckUtils]: 44: Hoare triple {3657#true} assume true; {3657#true} is VALID [2018-11-23 12:18:10,445 INFO L268 TraceCheckUtils]: 45: Hoare quadruple {3657#true} {3670#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} #65#return; {3670#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} is VALID [2018-11-23 12:18:10,446 INFO L273 TraceCheckUtils]: 46: Hoare triple {3670#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} havoc #t~mem4; {3670#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} is VALID [2018-11-23 12:18:10,447 INFO L273 TraceCheckUtils]: 47: Hoare triple {3670#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {3671#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:18:10,447 INFO L273 TraceCheckUtils]: 48: Hoare triple {3671#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3671#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:18:10,448 INFO L256 TraceCheckUtils]: 49: Hoare triple {3671#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {3657#true} is VALID [2018-11-23 12:18:10,448 INFO L273 TraceCheckUtils]: 50: Hoare triple {3657#true} ~cond := #in~cond; {3657#true} is VALID [2018-11-23 12:18:10,448 INFO L273 TraceCheckUtils]: 51: Hoare triple {3657#true} assume !(0 == ~cond); {3657#true} is VALID [2018-11-23 12:18:10,448 INFO L273 TraceCheckUtils]: 52: Hoare triple {3657#true} assume true; {3657#true} is VALID [2018-11-23 12:18:10,449 INFO L268 TraceCheckUtils]: 53: Hoare quadruple {3657#true} {3671#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} #65#return; {3671#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:18:10,450 INFO L273 TraceCheckUtils]: 54: Hoare triple {3671#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} havoc #t~mem4; {3671#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:18:10,451 INFO L273 TraceCheckUtils]: 55: Hoare triple {3671#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {3672#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0))))} is VALID [2018-11-23 12:18:10,451 INFO L273 TraceCheckUtils]: 56: Hoare triple {3672#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3673#(= |main_#t~mem4| 0)} is VALID [2018-11-23 12:18:10,452 INFO L256 TraceCheckUtils]: 57: Hoare triple {3673#(= |main_#t~mem4| 0)} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {3668#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:18:10,453 INFO L273 TraceCheckUtils]: 58: Hoare triple {3668#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {3674#(not (= __VERIFIER_assert_~cond 0))} is VALID [2018-11-23 12:18:10,454 INFO L273 TraceCheckUtils]: 59: Hoare triple {3674#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {3658#false} is VALID [2018-11-23 12:18:10,454 INFO L273 TraceCheckUtils]: 60: Hoare triple {3658#false} assume !false; {3658#false} is VALID [2018-11-23 12:18:10,461 INFO L134 CoverageAnalysis]: Checked inductivity of 99 backedges. 7 proven. 77 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2018-11-23 12:18:10,461 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:18:10,461 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:18:10,469 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:18:10,491 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:10,510 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:10,513 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:18:10,707 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 10 [2018-11-23 12:18:10,710 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 10 treesize of output 9 [2018-11-23 12:18:10,711 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:18:10,713 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:10,719 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:10,719 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:17, output treesize:13 [2018-11-23 12:18:11,263 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 15 treesize of output 11 [2018-11-23 12:18:11,267 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 3 [2018-11-23 12:18:11,269 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:18:11,271 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:11,272 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:11,272 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:15, output treesize:3 [2018-11-23 12:18:11,274 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:18:11,274 WARN L384 uantifierElimination]: Input elimination task: ∃ [|#memory_int|, |main_~#a~0.base|]. (let ((.cse0 (select (select |#memory_int| |main_~#a~0.base|) 16))) (and (= .cse0 |main_#t~mem4|) (= 0 .cse0))) [2018-11-23 12:18:11,275 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (= 0 |main_#t~mem4|) [2018-11-23 12:18:11,329 INFO L256 TraceCheckUtils]: 0: Hoare triple {3657#true} call ULTIMATE.init(); {3657#true} is VALID [2018-11-23 12:18:11,329 INFO L273 TraceCheckUtils]: 1: Hoare triple {3657#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {3657#true} is VALID [2018-11-23 12:18:11,330 INFO L273 TraceCheckUtils]: 2: Hoare triple {3657#true} assume true; {3657#true} is VALID [2018-11-23 12:18:11,330 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3657#true} {3657#true} #61#return; {3657#true} is VALID [2018-11-23 12:18:11,330 INFO L256 TraceCheckUtils]: 4: Hoare triple {3657#true} call #t~ret5 := main(); {3657#true} is VALID [2018-11-23 12:18:11,330 INFO L273 TraceCheckUtils]: 5: Hoare triple {3657#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {3657#true} is VALID [2018-11-23 12:18:11,331 INFO L273 TraceCheckUtils]: 6: Hoare triple {3657#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {3696#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,331 INFO L273 TraceCheckUtils]: 7: Hoare triple {3696#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {3696#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,332 INFO L273 TraceCheckUtils]: 8: Hoare triple {3696#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3696#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,332 INFO L273 TraceCheckUtils]: 9: Hoare triple {3696#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3706#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,333 INFO L273 TraceCheckUtils]: 10: Hoare triple {3706#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {3706#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,334 INFO L273 TraceCheckUtils]: 11: Hoare triple {3706#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3706#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,334 INFO L273 TraceCheckUtils]: 12: Hoare triple {3706#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3716#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,335 INFO L273 TraceCheckUtils]: 13: Hoare triple {3716#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {3716#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,336 INFO L273 TraceCheckUtils]: 14: Hoare triple {3716#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3716#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,336 INFO L273 TraceCheckUtils]: 15: Hoare triple {3716#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3726#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,337 INFO L273 TraceCheckUtils]: 16: Hoare triple {3726#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {3726#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,338 INFO L273 TraceCheckUtils]: 17: Hoare triple {3726#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3726#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,339 INFO L273 TraceCheckUtils]: 18: Hoare triple {3726#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3736#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,339 INFO L273 TraceCheckUtils]: 19: Hoare triple {3736#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {3736#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,340 INFO L273 TraceCheckUtils]: 20: Hoare triple {3736#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3743#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,341 INFO L273 TraceCheckUtils]: 21: Hoare triple {3743#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {3743#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,342 INFO L273 TraceCheckUtils]: 22: Hoare triple {3743#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {3743#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,342 INFO L273 TraceCheckUtils]: 23: Hoare triple {3743#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {3753#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,343 INFO L273 TraceCheckUtils]: 24: Hoare triple {3753#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3753#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,345 INFO L256 TraceCheckUtils]: 25: Hoare triple {3753#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:18:11,346 INFO L273 TraceCheckUtils]: 26: Hoare triple {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} ~cond := #in~cond; {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:18:11,346 INFO L273 TraceCheckUtils]: 27: Hoare triple {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} assume !(0 == ~cond); {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:18:11,347 INFO L273 TraceCheckUtils]: 28: Hoare triple {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} assume true; {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:18:11,348 INFO L268 TraceCheckUtils]: 29: Hoare quadruple {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} {3753#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #65#return; {3753#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,348 INFO L273 TraceCheckUtils]: 30: Hoare triple {3753#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {3753#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,362 INFO L273 TraceCheckUtils]: 31: Hoare triple {3753#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {3779#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,363 INFO L273 TraceCheckUtils]: 32: Hoare triple {3779#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3779#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,364 INFO L256 TraceCheckUtils]: 33: Hoare triple {3779#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:18:11,364 INFO L273 TraceCheckUtils]: 34: Hoare triple {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} ~cond := #in~cond; {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:18:11,364 INFO L273 TraceCheckUtils]: 35: Hoare triple {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} assume !(0 == ~cond); {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:18:11,365 INFO L273 TraceCheckUtils]: 36: Hoare triple {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} assume true; {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:18:11,365 INFO L268 TraceCheckUtils]: 37: Hoare quadruple {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} {3779#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} #65#return; {3779#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,366 INFO L273 TraceCheckUtils]: 38: Hoare triple {3779#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {3779#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,367 INFO L273 TraceCheckUtils]: 39: Hoare triple {3779#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {3804#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,368 INFO L273 TraceCheckUtils]: 40: Hoare triple {3804#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3804#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,369 INFO L256 TraceCheckUtils]: 41: Hoare triple {3804#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:18:11,370 INFO L273 TraceCheckUtils]: 42: Hoare triple {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} ~cond := #in~cond; {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:18:11,370 INFO L273 TraceCheckUtils]: 43: Hoare triple {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} assume !(0 == ~cond); {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:18:11,371 INFO L273 TraceCheckUtils]: 44: Hoare triple {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} assume true; {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:18:11,372 INFO L268 TraceCheckUtils]: 45: Hoare quadruple {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} {3804#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} #65#return; {3804#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,373 INFO L273 TraceCheckUtils]: 46: Hoare triple {3804#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {3804#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,373 INFO L273 TraceCheckUtils]: 47: Hoare triple {3804#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {3829#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,374 INFO L273 TraceCheckUtils]: 48: Hoare triple {3829#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3829#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,376 INFO L256 TraceCheckUtils]: 49: Hoare triple {3829#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:18:11,376 INFO L273 TraceCheckUtils]: 50: Hoare triple {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} ~cond := #in~cond; {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:18:11,377 INFO L273 TraceCheckUtils]: 51: Hoare triple {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} assume !(0 == ~cond); {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:18:11,377 INFO L273 TraceCheckUtils]: 52: Hoare triple {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} assume true; {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} is VALID [2018-11-23 12:18:11,378 INFO L268 TraceCheckUtils]: 53: Hoare quadruple {3760#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) 0))} {3829#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} #65#return; {3829#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,379 INFO L273 TraceCheckUtils]: 54: Hoare triple {3829#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {3829#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,380 INFO L273 TraceCheckUtils]: 55: Hoare triple {3829#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {3854#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:18:11,381 INFO L273 TraceCheckUtils]: 56: Hoare triple {3854#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3673#(= |main_#t~mem4| 0)} is VALID [2018-11-23 12:18:11,382 INFO L256 TraceCheckUtils]: 57: Hoare triple {3673#(= |main_#t~mem4| 0)} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {3861#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:18:11,382 INFO L273 TraceCheckUtils]: 58: Hoare triple {3861#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {3865#(= 1 __VERIFIER_assert_~cond)} is VALID [2018-11-23 12:18:11,383 INFO L273 TraceCheckUtils]: 59: Hoare triple {3865#(= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3658#false} is VALID [2018-11-23 12:18:11,383 INFO L273 TraceCheckUtils]: 60: Hoare triple {3658#false} assume !false; {3658#false} is VALID [2018-11-23 12:18:11,392 INFO L134 CoverageAnalysis]: Checked inductivity of 99 backedges. 0 proven. 75 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2018-11-23 12:18:11,410 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:18:11,410 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 17] total 32 [2018-11-23 12:18:11,411 INFO L78 Accepts]: Start accepts. Automaton has 32 states. Word has length 61 [2018-11-23 12:18:11,412 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:18:11,412 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 32 states. [2018-11-23 12:18:11,521 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:18:11,522 INFO L459 AbstractCegarLoop]: Interpolant automaton has 32 states [2018-11-23 12:18:11,522 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 32 interpolants. [2018-11-23 12:18:11,523 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=106, Invalid=886, Unknown=0, NotChecked=0, Total=992 [2018-11-23 12:18:11,523 INFO L87 Difference]: Start difference. First operand 65 states and 67 transitions. Second operand 32 states. [2018-11-23 12:18:14,410 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:14,410 INFO L93 Difference]: Finished difference Result 79 states and 81 transitions. [2018-11-23 12:18:14,411 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 29 states. [2018-11-23 12:18:14,411 INFO L78 Accepts]: Start accepts. Automaton has 32 states. Word has length 61 [2018-11-23 12:18:14,411 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:18:14,412 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 32 states. [2018-11-23 12:18:14,414 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 69 transitions. [2018-11-23 12:18:14,414 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 32 states. [2018-11-23 12:18:14,416 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 69 transitions. [2018-11-23 12:18:14,416 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 29 states and 69 transitions. [2018-11-23 12:18:14,505 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:18:14,508 INFO L225 Difference]: With dead ends: 79 [2018-11-23 12:18:14,508 INFO L226 Difference]: Without dead ends: 77 [2018-11-23 12:18:14,509 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 96 GetRequests, 42 SyntacticMatches, 9 SemanticMatches, 45 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 576 ImplicationChecksByTransitivity, 1.2s TimeCoverageRelationStatistics Valid=223, Invalid=1939, Unknown=0, NotChecked=0, Total=2162 [2018-11-23 12:18:14,509 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 77 states. [2018-11-23 12:18:14,674 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 77 to 73. [2018-11-23 12:18:14,675 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:18:14,675 INFO L82 GeneralOperation]: Start isEquivalent. First operand 77 states. Second operand 73 states. [2018-11-23 12:18:14,675 INFO L74 IsIncluded]: Start isIncluded. First operand 77 states. Second operand 73 states. [2018-11-23 12:18:14,675 INFO L87 Difference]: Start difference. First operand 77 states. Second operand 73 states. [2018-11-23 12:18:14,678 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:14,679 INFO L93 Difference]: Finished difference Result 77 states and 79 transitions. [2018-11-23 12:18:14,679 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 79 transitions. [2018-11-23 12:18:14,679 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:14,679 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:14,679 INFO L74 IsIncluded]: Start isIncluded. First operand 73 states. Second operand 77 states. [2018-11-23 12:18:14,679 INFO L87 Difference]: Start difference. First operand 73 states. Second operand 77 states. [2018-11-23 12:18:14,681 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:14,681 INFO L93 Difference]: Finished difference Result 77 states and 79 transitions. [2018-11-23 12:18:14,681 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 79 transitions. [2018-11-23 12:18:14,681 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:14,682 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:14,682 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:18:14,682 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:18:14,682 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 73 states. [2018-11-23 12:18:14,683 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 73 states to 73 states and 75 transitions. [2018-11-23 12:18:14,683 INFO L78 Accepts]: Start accepts. Automaton has 73 states and 75 transitions. Word has length 61 [2018-11-23 12:18:14,683 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:18:14,683 INFO L480 AbstractCegarLoop]: Abstraction has 73 states and 75 transitions. [2018-11-23 12:18:14,684 INFO L481 AbstractCegarLoop]: Interpolant automaton has 32 states. [2018-11-23 12:18:14,684 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 75 transitions. [2018-11-23 12:18:14,684 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2018-11-23 12:18:14,684 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:18:14,685 INFO L402 BasicCegarLoop]: trace histogram [6, 6, 6, 5, 5, 5, 5, 5, 5, 5, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:18:14,685 INFO L423 AbstractCegarLoop]: === Iteration 12 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:18:14,685 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:18:14,685 INFO L82 PathProgramCache]: Analyzing trace with hash 52280790, now seen corresponding path program 8 times [2018-11-23 12:18:14,685 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:18:14,685 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:18:14,686 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:14,686 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:18:14,686 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:14,698 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:15,330 INFO L256 TraceCheckUtils]: 0: Hoare triple {4264#true} call ULTIMATE.init(); {4264#true} is VALID [2018-11-23 12:18:15,331 INFO L273 TraceCheckUtils]: 1: Hoare triple {4264#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {4264#true} is VALID [2018-11-23 12:18:15,331 INFO L273 TraceCheckUtils]: 2: Hoare triple {4264#true} assume true; {4264#true} is VALID [2018-11-23 12:18:15,331 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4264#true} {4264#true} #61#return; {4264#true} is VALID [2018-11-23 12:18:15,331 INFO L256 TraceCheckUtils]: 4: Hoare triple {4264#true} call #t~ret5 := main(); {4264#true} is VALID [2018-11-23 12:18:15,331 INFO L273 TraceCheckUtils]: 5: Hoare triple {4264#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {4264#true} is VALID [2018-11-23 12:18:15,332 INFO L273 TraceCheckUtils]: 6: Hoare triple {4264#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {4266#(= main_~i~0 0)} is VALID [2018-11-23 12:18:15,332 INFO L273 TraceCheckUtils]: 7: Hoare triple {4266#(= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0); {4266#(= main_~i~0 0)} is VALID [2018-11-23 12:18:15,333 INFO L273 TraceCheckUtils]: 8: Hoare triple {4266#(= main_~i~0 0)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4266#(= main_~i~0 0)} is VALID [2018-11-23 12:18:15,334 INFO L273 TraceCheckUtils]: 9: Hoare triple {4266#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4267#(<= main_~i~0 1)} is VALID [2018-11-23 12:18:15,334 INFO L273 TraceCheckUtils]: 10: Hoare triple {4267#(<= main_~i~0 1)} assume !!(~i~0 < ~SIZE~0); {4267#(<= main_~i~0 1)} is VALID [2018-11-23 12:18:15,334 INFO L273 TraceCheckUtils]: 11: Hoare triple {4267#(<= main_~i~0 1)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4267#(<= main_~i~0 1)} is VALID [2018-11-23 12:18:15,335 INFO L273 TraceCheckUtils]: 12: Hoare triple {4267#(<= main_~i~0 1)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4268#(<= main_~i~0 2)} is VALID [2018-11-23 12:18:15,335 INFO L273 TraceCheckUtils]: 13: Hoare triple {4268#(<= main_~i~0 2)} assume !!(~i~0 < ~SIZE~0); {4268#(<= main_~i~0 2)} is VALID [2018-11-23 12:18:15,336 INFO L273 TraceCheckUtils]: 14: Hoare triple {4268#(<= main_~i~0 2)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4268#(<= main_~i~0 2)} is VALID [2018-11-23 12:18:15,336 INFO L273 TraceCheckUtils]: 15: Hoare triple {4268#(<= main_~i~0 2)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4269#(<= main_~i~0 3)} is VALID [2018-11-23 12:18:15,336 INFO L273 TraceCheckUtils]: 16: Hoare triple {4269#(<= main_~i~0 3)} assume !!(~i~0 < ~SIZE~0); {4269#(<= main_~i~0 3)} is VALID [2018-11-23 12:18:15,337 INFO L273 TraceCheckUtils]: 17: Hoare triple {4269#(<= main_~i~0 3)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4269#(<= main_~i~0 3)} is VALID [2018-11-23 12:18:15,337 INFO L273 TraceCheckUtils]: 18: Hoare triple {4269#(<= main_~i~0 3)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4270#(<= main_~i~0 4)} is VALID [2018-11-23 12:18:15,338 INFO L273 TraceCheckUtils]: 19: Hoare triple {4270#(<= main_~i~0 4)} assume !!(~i~0 < ~SIZE~0); {4270#(<= main_~i~0 4)} is VALID [2018-11-23 12:18:15,338 INFO L273 TraceCheckUtils]: 20: Hoare triple {4270#(<= main_~i~0 4)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4270#(<= main_~i~0 4)} is VALID [2018-11-23 12:18:15,339 INFO L273 TraceCheckUtils]: 21: Hoare triple {4270#(<= main_~i~0 4)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4271#(<= main_~i~0 5)} is VALID [2018-11-23 12:18:15,340 INFO L273 TraceCheckUtils]: 22: Hoare triple {4271#(<= main_~i~0 5)} assume !(~i~0 < ~SIZE~0); {4272#(<= ~SIZE~0 5)} is VALID [2018-11-23 12:18:15,341 INFO L273 TraceCheckUtils]: 23: Hoare triple {4272#(<= ~SIZE~0 5)} ~i~0 := 0; {4273#(and (<= ~SIZE~0 5) (= main_~i~0 0))} is VALID [2018-11-23 12:18:15,341 INFO L273 TraceCheckUtils]: 24: Hoare triple {4273#(and (<= ~SIZE~0 5) (= main_~i~0 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4273#(and (<= ~SIZE~0 5) (= main_~i~0 0))} is VALID [2018-11-23 12:18:15,342 INFO L256 TraceCheckUtils]: 25: Hoare triple {4273#(and (<= ~SIZE~0 5) (= main_~i~0 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {4264#true} is VALID [2018-11-23 12:18:15,342 INFO L273 TraceCheckUtils]: 26: Hoare triple {4264#true} ~cond := #in~cond; {4264#true} is VALID [2018-11-23 12:18:15,342 INFO L273 TraceCheckUtils]: 27: Hoare triple {4264#true} assume !(0 == ~cond); {4264#true} is VALID [2018-11-23 12:18:15,342 INFO L273 TraceCheckUtils]: 28: Hoare triple {4264#true} assume true; {4264#true} is VALID [2018-11-23 12:18:15,343 INFO L268 TraceCheckUtils]: 29: Hoare quadruple {4264#true} {4273#(and (<= ~SIZE~0 5) (= main_~i~0 0))} #65#return; {4273#(and (<= ~SIZE~0 5) (= main_~i~0 0))} is VALID [2018-11-23 12:18:15,344 INFO L273 TraceCheckUtils]: 30: Hoare triple {4273#(and (<= ~SIZE~0 5) (= main_~i~0 0))} havoc #t~mem4; {4273#(and (<= ~SIZE~0 5) (= main_~i~0 0))} is VALID [2018-11-23 12:18:15,344 INFO L273 TraceCheckUtils]: 31: Hoare triple {4273#(and (<= ~SIZE~0 5) (= main_~i~0 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {4274#(<= ~SIZE~0 (+ main_~i~0 4))} is VALID [2018-11-23 12:18:15,345 INFO L273 TraceCheckUtils]: 32: Hoare triple {4274#(<= ~SIZE~0 (+ main_~i~0 4))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4274#(<= ~SIZE~0 (+ main_~i~0 4))} is VALID [2018-11-23 12:18:15,345 INFO L256 TraceCheckUtils]: 33: Hoare triple {4274#(<= ~SIZE~0 (+ main_~i~0 4))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {4264#true} is VALID [2018-11-23 12:18:15,345 INFO L273 TraceCheckUtils]: 34: Hoare triple {4264#true} ~cond := #in~cond; {4264#true} is VALID [2018-11-23 12:18:15,345 INFO L273 TraceCheckUtils]: 35: Hoare triple {4264#true} assume !(0 == ~cond); {4264#true} is VALID [2018-11-23 12:18:15,345 INFO L273 TraceCheckUtils]: 36: Hoare triple {4264#true} assume true; {4264#true} is VALID [2018-11-23 12:18:15,376 INFO L268 TraceCheckUtils]: 37: Hoare quadruple {4264#true} {4274#(<= ~SIZE~0 (+ main_~i~0 4))} #65#return; {4274#(<= ~SIZE~0 (+ main_~i~0 4))} is VALID [2018-11-23 12:18:15,391 INFO L273 TraceCheckUtils]: 38: Hoare triple {4274#(<= ~SIZE~0 (+ main_~i~0 4))} havoc #t~mem4; {4274#(<= ~SIZE~0 (+ main_~i~0 4))} is VALID [2018-11-23 12:18:15,406 INFO L273 TraceCheckUtils]: 39: Hoare triple {4274#(<= ~SIZE~0 (+ main_~i~0 4))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {4275#(<= ~SIZE~0 (+ main_~i~0 3))} is VALID [2018-11-23 12:18:15,415 INFO L273 TraceCheckUtils]: 40: Hoare triple {4275#(<= ~SIZE~0 (+ main_~i~0 3))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4275#(<= ~SIZE~0 (+ main_~i~0 3))} is VALID [2018-11-23 12:18:15,415 INFO L256 TraceCheckUtils]: 41: Hoare triple {4275#(<= ~SIZE~0 (+ main_~i~0 3))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {4264#true} is VALID [2018-11-23 12:18:15,415 INFO L273 TraceCheckUtils]: 42: Hoare triple {4264#true} ~cond := #in~cond; {4264#true} is VALID [2018-11-23 12:18:15,416 INFO L273 TraceCheckUtils]: 43: Hoare triple {4264#true} assume !(0 == ~cond); {4264#true} is VALID [2018-11-23 12:18:15,416 INFO L273 TraceCheckUtils]: 44: Hoare triple {4264#true} assume true; {4264#true} is VALID [2018-11-23 12:18:15,429 INFO L268 TraceCheckUtils]: 45: Hoare quadruple {4264#true} {4275#(<= ~SIZE~0 (+ main_~i~0 3))} #65#return; {4275#(<= ~SIZE~0 (+ main_~i~0 3))} is VALID [2018-11-23 12:18:15,438 INFO L273 TraceCheckUtils]: 46: Hoare triple {4275#(<= ~SIZE~0 (+ main_~i~0 3))} havoc #t~mem4; {4275#(<= ~SIZE~0 (+ main_~i~0 3))} is VALID [2018-11-23 12:18:15,449 INFO L273 TraceCheckUtils]: 47: Hoare triple {4275#(<= ~SIZE~0 (+ main_~i~0 3))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {4276#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:18:15,454 INFO L273 TraceCheckUtils]: 48: Hoare triple {4276#(<= ~SIZE~0 (+ main_~i~0 2))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4276#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:18:15,454 INFO L256 TraceCheckUtils]: 49: Hoare triple {4276#(<= ~SIZE~0 (+ main_~i~0 2))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {4264#true} is VALID [2018-11-23 12:18:15,454 INFO L273 TraceCheckUtils]: 50: Hoare triple {4264#true} ~cond := #in~cond; {4264#true} is VALID [2018-11-23 12:18:15,454 INFO L273 TraceCheckUtils]: 51: Hoare triple {4264#true} assume !(0 == ~cond); {4264#true} is VALID [2018-11-23 12:18:15,455 INFO L273 TraceCheckUtils]: 52: Hoare triple {4264#true} assume true; {4264#true} is VALID [2018-11-23 12:18:15,455 INFO L268 TraceCheckUtils]: 53: Hoare quadruple {4264#true} {4276#(<= ~SIZE~0 (+ main_~i~0 2))} #65#return; {4276#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:18:15,456 INFO L273 TraceCheckUtils]: 54: Hoare triple {4276#(<= ~SIZE~0 (+ main_~i~0 2))} havoc #t~mem4; {4276#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:18:15,458 INFO L273 TraceCheckUtils]: 55: Hoare triple {4276#(<= ~SIZE~0 (+ main_~i~0 2))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {4277#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:18:15,458 INFO L273 TraceCheckUtils]: 56: Hoare triple {4277#(<= ~SIZE~0 (+ main_~i~0 1))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4277#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:18:15,458 INFO L256 TraceCheckUtils]: 57: Hoare triple {4277#(<= ~SIZE~0 (+ main_~i~0 1))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {4264#true} is VALID [2018-11-23 12:18:15,458 INFO L273 TraceCheckUtils]: 58: Hoare triple {4264#true} ~cond := #in~cond; {4264#true} is VALID [2018-11-23 12:18:15,458 INFO L273 TraceCheckUtils]: 59: Hoare triple {4264#true} assume !(0 == ~cond); {4264#true} is VALID [2018-11-23 12:18:15,459 INFO L273 TraceCheckUtils]: 60: Hoare triple {4264#true} assume true; {4264#true} is VALID [2018-11-23 12:18:15,461 INFO L268 TraceCheckUtils]: 61: Hoare quadruple {4264#true} {4277#(<= ~SIZE~0 (+ main_~i~0 1))} #65#return; {4277#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:18:15,461 INFO L273 TraceCheckUtils]: 62: Hoare triple {4277#(<= ~SIZE~0 (+ main_~i~0 1))} havoc #t~mem4; {4277#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:18:15,463 INFO L273 TraceCheckUtils]: 63: Hoare triple {4277#(<= ~SIZE~0 (+ main_~i~0 1))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {4278#(<= ~SIZE~0 main_~i~0)} is VALID [2018-11-23 12:18:15,463 INFO L273 TraceCheckUtils]: 64: Hoare triple {4278#(<= ~SIZE~0 main_~i~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4265#false} is VALID [2018-11-23 12:18:15,464 INFO L256 TraceCheckUtils]: 65: Hoare triple {4265#false} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {4265#false} is VALID [2018-11-23 12:18:15,464 INFO L273 TraceCheckUtils]: 66: Hoare triple {4265#false} ~cond := #in~cond; {4265#false} is VALID [2018-11-23 12:18:15,464 INFO L273 TraceCheckUtils]: 67: Hoare triple {4265#false} assume 0 == ~cond; {4265#false} is VALID [2018-11-23 12:18:15,464 INFO L273 TraceCheckUtils]: 68: Hoare triple {4265#false} assume !false; {4265#false} is VALID [2018-11-23 12:18:15,468 INFO L134 CoverageAnalysis]: Checked inductivity of 135 backedges. 43 proven. 52 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2018-11-23 12:18:15,468 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:18:15,468 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:18:15,483 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:18:15,515 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:18:15,515 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:18:15,534 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:15,535 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:18:15,779 INFO L256 TraceCheckUtils]: 0: Hoare triple {4264#true} call ULTIMATE.init(); {4264#true} is VALID [2018-11-23 12:18:15,779 INFO L273 TraceCheckUtils]: 1: Hoare triple {4264#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {4264#true} is VALID [2018-11-23 12:18:15,779 INFO L273 TraceCheckUtils]: 2: Hoare triple {4264#true} assume true; {4264#true} is VALID [2018-11-23 12:18:15,779 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4264#true} {4264#true} #61#return; {4264#true} is VALID [2018-11-23 12:18:15,779 INFO L256 TraceCheckUtils]: 4: Hoare triple {4264#true} call #t~ret5 := main(); {4264#true} is VALID [2018-11-23 12:18:15,779 INFO L273 TraceCheckUtils]: 5: Hoare triple {4264#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {4264#true} is VALID [2018-11-23 12:18:15,780 INFO L273 TraceCheckUtils]: 6: Hoare triple {4264#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {4300#(<= main_~i~0 0)} is VALID [2018-11-23 12:18:15,780 INFO L273 TraceCheckUtils]: 7: Hoare triple {4300#(<= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0); {4300#(<= main_~i~0 0)} is VALID [2018-11-23 12:18:15,781 INFO L273 TraceCheckUtils]: 8: Hoare triple {4300#(<= main_~i~0 0)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4300#(<= main_~i~0 0)} is VALID [2018-11-23 12:18:15,781 INFO L273 TraceCheckUtils]: 9: Hoare triple {4300#(<= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4267#(<= main_~i~0 1)} is VALID [2018-11-23 12:18:15,781 INFO L273 TraceCheckUtils]: 10: Hoare triple {4267#(<= main_~i~0 1)} assume !!(~i~0 < ~SIZE~0); {4267#(<= main_~i~0 1)} is VALID [2018-11-23 12:18:15,782 INFO L273 TraceCheckUtils]: 11: Hoare triple {4267#(<= main_~i~0 1)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4267#(<= main_~i~0 1)} is VALID [2018-11-23 12:18:15,782 INFO L273 TraceCheckUtils]: 12: Hoare triple {4267#(<= main_~i~0 1)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4268#(<= main_~i~0 2)} is VALID [2018-11-23 12:18:15,782 INFO L273 TraceCheckUtils]: 13: Hoare triple {4268#(<= main_~i~0 2)} assume !!(~i~0 < ~SIZE~0); {4268#(<= main_~i~0 2)} is VALID [2018-11-23 12:18:15,783 INFO L273 TraceCheckUtils]: 14: Hoare triple {4268#(<= main_~i~0 2)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4268#(<= main_~i~0 2)} is VALID [2018-11-23 12:18:15,783 INFO L273 TraceCheckUtils]: 15: Hoare triple {4268#(<= main_~i~0 2)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4269#(<= main_~i~0 3)} is VALID [2018-11-23 12:18:15,784 INFO L273 TraceCheckUtils]: 16: Hoare triple {4269#(<= main_~i~0 3)} assume !!(~i~0 < ~SIZE~0); {4269#(<= main_~i~0 3)} is VALID [2018-11-23 12:18:15,784 INFO L273 TraceCheckUtils]: 17: Hoare triple {4269#(<= main_~i~0 3)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4269#(<= main_~i~0 3)} is VALID [2018-11-23 12:18:15,785 INFO L273 TraceCheckUtils]: 18: Hoare triple {4269#(<= main_~i~0 3)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4270#(<= main_~i~0 4)} is VALID [2018-11-23 12:18:15,785 INFO L273 TraceCheckUtils]: 19: Hoare triple {4270#(<= main_~i~0 4)} assume !!(~i~0 < ~SIZE~0); {4270#(<= main_~i~0 4)} is VALID [2018-11-23 12:18:15,786 INFO L273 TraceCheckUtils]: 20: Hoare triple {4270#(<= main_~i~0 4)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4270#(<= main_~i~0 4)} is VALID [2018-11-23 12:18:15,786 INFO L273 TraceCheckUtils]: 21: Hoare triple {4270#(<= main_~i~0 4)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {4271#(<= main_~i~0 5)} is VALID [2018-11-23 12:18:15,787 INFO L273 TraceCheckUtils]: 22: Hoare triple {4271#(<= main_~i~0 5)} assume !(~i~0 < ~SIZE~0); {4272#(<= ~SIZE~0 5)} is VALID [2018-11-23 12:18:15,788 INFO L273 TraceCheckUtils]: 23: Hoare triple {4272#(<= ~SIZE~0 5)} ~i~0 := 0; {4352#(and (<= 0 main_~i~0) (<= ~SIZE~0 5))} is VALID [2018-11-23 12:18:15,788 INFO L273 TraceCheckUtils]: 24: Hoare triple {4352#(and (<= 0 main_~i~0) (<= ~SIZE~0 5))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4352#(and (<= 0 main_~i~0) (<= ~SIZE~0 5))} is VALID [2018-11-23 12:18:15,789 INFO L256 TraceCheckUtils]: 25: Hoare triple {4352#(and (<= 0 main_~i~0) (<= ~SIZE~0 5))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {4272#(<= ~SIZE~0 5)} is VALID [2018-11-23 12:18:15,790 INFO L273 TraceCheckUtils]: 26: Hoare triple {4272#(<= ~SIZE~0 5)} ~cond := #in~cond; {4272#(<= ~SIZE~0 5)} is VALID [2018-11-23 12:18:15,790 INFO L273 TraceCheckUtils]: 27: Hoare triple {4272#(<= ~SIZE~0 5)} assume !(0 == ~cond); {4272#(<= ~SIZE~0 5)} is VALID [2018-11-23 12:18:15,791 INFO L273 TraceCheckUtils]: 28: Hoare triple {4272#(<= ~SIZE~0 5)} assume true; {4272#(<= ~SIZE~0 5)} is VALID [2018-11-23 12:18:15,792 INFO L268 TraceCheckUtils]: 29: Hoare quadruple {4272#(<= ~SIZE~0 5)} {4352#(and (<= 0 main_~i~0) (<= ~SIZE~0 5))} #65#return; {4352#(and (<= 0 main_~i~0) (<= ~SIZE~0 5))} is VALID [2018-11-23 12:18:15,792 INFO L273 TraceCheckUtils]: 30: Hoare triple {4352#(and (<= 0 main_~i~0) (<= ~SIZE~0 5))} havoc #t~mem4; {4352#(and (<= 0 main_~i~0) (<= ~SIZE~0 5))} is VALID [2018-11-23 12:18:15,793 INFO L273 TraceCheckUtils]: 31: Hoare triple {4352#(and (<= 0 main_~i~0) (<= ~SIZE~0 5))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {4377#(and (<= 1 main_~i~0) (<= ~SIZE~0 5))} is VALID [2018-11-23 12:18:15,794 INFO L273 TraceCheckUtils]: 32: Hoare triple {4377#(and (<= 1 main_~i~0) (<= ~SIZE~0 5))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4377#(and (<= 1 main_~i~0) (<= ~SIZE~0 5))} is VALID [2018-11-23 12:18:15,795 INFO L256 TraceCheckUtils]: 33: Hoare triple {4377#(and (<= 1 main_~i~0) (<= ~SIZE~0 5))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {4272#(<= ~SIZE~0 5)} is VALID [2018-11-23 12:18:15,795 INFO L273 TraceCheckUtils]: 34: Hoare triple {4272#(<= ~SIZE~0 5)} ~cond := #in~cond; {4272#(<= ~SIZE~0 5)} is VALID [2018-11-23 12:18:15,796 INFO L273 TraceCheckUtils]: 35: Hoare triple {4272#(<= ~SIZE~0 5)} assume !(0 == ~cond); {4272#(<= ~SIZE~0 5)} is VALID [2018-11-23 12:18:15,796 INFO L273 TraceCheckUtils]: 36: Hoare triple {4272#(<= ~SIZE~0 5)} assume true; {4272#(<= ~SIZE~0 5)} is VALID [2018-11-23 12:18:15,797 INFO L268 TraceCheckUtils]: 37: Hoare quadruple {4272#(<= ~SIZE~0 5)} {4377#(and (<= 1 main_~i~0) (<= ~SIZE~0 5))} #65#return; {4377#(and (<= 1 main_~i~0) (<= ~SIZE~0 5))} is VALID [2018-11-23 12:18:15,798 INFO L273 TraceCheckUtils]: 38: Hoare triple {4377#(and (<= 1 main_~i~0) (<= ~SIZE~0 5))} havoc #t~mem4; {4377#(and (<= 1 main_~i~0) (<= ~SIZE~0 5))} is VALID [2018-11-23 12:18:15,798 INFO L273 TraceCheckUtils]: 39: Hoare triple {4377#(and (<= 1 main_~i~0) (<= ~SIZE~0 5))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {4402#(and (<= 2 main_~i~0) (<= ~SIZE~0 5))} is VALID [2018-11-23 12:18:15,799 INFO L273 TraceCheckUtils]: 40: Hoare triple {4402#(and (<= 2 main_~i~0) (<= ~SIZE~0 5))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4402#(and (<= 2 main_~i~0) (<= ~SIZE~0 5))} is VALID [2018-11-23 12:18:15,800 INFO L256 TraceCheckUtils]: 41: Hoare triple {4402#(and (<= 2 main_~i~0) (<= ~SIZE~0 5))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {4272#(<= ~SIZE~0 5)} is VALID [2018-11-23 12:18:15,800 INFO L273 TraceCheckUtils]: 42: Hoare triple {4272#(<= ~SIZE~0 5)} ~cond := #in~cond; {4272#(<= ~SIZE~0 5)} is VALID [2018-11-23 12:18:15,801 INFO L273 TraceCheckUtils]: 43: Hoare triple {4272#(<= ~SIZE~0 5)} assume !(0 == ~cond); {4272#(<= ~SIZE~0 5)} is VALID [2018-11-23 12:18:15,801 INFO L273 TraceCheckUtils]: 44: Hoare triple {4272#(<= ~SIZE~0 5)} assume true; {4272#(<= ~SIZE~0 5)} is VALID [2018-11-23 12:18:15,802 INFO L268 TraceCheckUtils]: 45: Hoare quadruple {4272#(<= ~SIZE~0 5)} {4402#(and (<= 2 main_~i~0) (<= ~SIZE~0 5))} #65#return; {4402#(and (<= 2 main_~i~0) (<= ~SIZE~0 5))} is VALID [2018-11-23 12:18:15,803 INFO L273 TraceCheckUtils]: 46: Hoare triple {4402#(and (<= 2 main_~i~0) (<= ~SIZE~0 5))} havoc #t~mem4; {4402#(and (<= 2 main_~i~0) (<= ~SIZE~0 5))} is VALID [2018-11-23 12:18:15,804 INFO L273 TraceCheckUtils]: 47: Hoare triple {4402#(and (<= 2 main_~i~0) (<= ~SIZE~0 5))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {4427#(and (<= ~SIZE~0 5) (<= 3 main_~i~0))} is VALID [2018-11-23 12:18:15,804 INFO L273 TraceCheckUtils]: 48: Hoare triple {4427#(and (<= ~SIZE~0 5) (<= 3 main_~i~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4427#(and (<= ~SIZE~0 5) (<= 3 main_~i~0))} is VALID [2018-11-23 12:18:15,805 INFO L256 TraceCheckUtils]: 49: Hoare triple {4427#(and (<= ~SIZE~0 5) (<= 3 main_~i~0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {4272#(<= ~SIZE~0 5)} is VALID [2018-11-23 12:18:15,806 INFO L273 TraceCheckUtils]: 50: Hoare triple {4272#(<= ~SIZE~0 5)} ~cond := #in~cond; {4272#(<= ~SIZE~0 5)} is VALID [2018-11-23 12:18:15,806 INFO L273 TraceCheckUtils]: 51: Hoare triple {4272#(<= ~SIZE~0 5)} assume !(0 == ~cond); {4272#(<= ~SIZE~0 5)} is VALID [2018-11-23 12:18:15,807 INFO L273 TraceCheckUtils]: 52: Hoare triple {4272#(<= ~SIZE~0 5)} assume true; {4272#(<= ~SIZE~0 5)} is VALID [2018-11-23 12:18:15,807 INFO L268 TraceCheckUtils]: 53: Hoare quadruple {4272#(<= ~SIZE~0 5)} {4427#(and (<= ~SIZE~0 5) (<= 3 main_~i~0))} #65#return; {4427#(and (<= ~SIZE~0 5) (<= 3 main_~i~0))} is VALID [2018-11-23 12:18:15,808 INFO L273 TraceCheckUtils]: 54: Hoare triple {4427#(and (<= ~SIZE~0 5) (<= 3 main_~i~0))} havoc #t~mem4; {4427#(and (<= ~SIZE~0 5) (<= 3 main_~i~0))} is VALID [2018-11-23 12:18:15,809 INFO L273 TraceCheckUtils]: 55: Hoare triple {4427#(and (<= ~SIZE~0 5) (<= 3 main_~i~0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {4452#(and (<= 4 main_~i~0) (<= ~SIZE~0 5))} is VALID [2018-11-23 12:18:15,810 INFO L273 TraceCheckUtils]: 56: Hoare triple {4452#(and (<= 4 main_~i~0) (<= ~SIZE~0 5))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4452#(and (<= 4 main_~i~0) (<= ~SIZE~0 5))} is VALID [2018-11-23 12:18:15,811 INFO L256 TraceCheckUtils]: 57: Hoare triple {4452#(and (<= 4 main_~i~0) (<= ~SIZE~0 5))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {4272#(<= ~SIZE~0 5)} is VALID [2018-11-23 12:18:15,811 INFO L273 TraceCheckUtils]: 58: Hoare triple {4272#(<= ~SIZE~0 5)} ~cond := #in~cond; {4272#(<= ~SIZE~0 5)} is VALID [2018-11-23 12:18:15,812 INFO L273 TraceCheckUtils]: 59: Hoare triple {4272#(<= ~SIZE~0 5)} assume !(0 == ~cond); {4272#(<= ~SIZE~0 5)} is VALID [2018-11-23 12:18:15,812 INFO L273 TraceCheckUtils]: 60: Hoare triple {4272#(<= ~SIZE~0 5)} assume true; {4272#(<= ~SIZE~0 5)} is VALID [2018-11-23 12:18:15,813 INFO L268 TraceCheckUtils]: 61: Hoare quadruple {4272#(<= ~SIZE~0 5)} {4452#(and (<= 4 main_~i~0) (<= ~SIZE~0 5))} #65#return; {4452#(and (<= 4 main_~i~0) (<= ~SIZE~0 5))} is VALID [2018-11-23 12:18:15,814 INFO L273 TraceCheckUtils]: 62: Hoare triple {4452#(and (<= 4 main_~i~0) (<= ~SIZE~0 5))} havoc #t~mem4; {4452#(and (<= 4 main_~i~0) (<= ~SIZE~0 5))} is VALID [2018-11-23 12:18:15,814 INFO L273 TraceCheckUtils]: 63: Hoare triple {4452#(and (<= 4 main_~i~0) (<= ~SIZE~0 5))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {4477#(and (<= 5 main_~i~0) (<= ~SIZE~0 5))} is VALID [2018-11-23 12:18:15,815 INFO L273 TraceCheckUtils]: 64: Hoare triple {4477#(and (<= 5 main_~i~0) (<= ~SIZE~0 5))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4265#false} is VALID [2018-11-23 12:18:15,816 INFO L256 TraceCheckUtils]: 65: Hoare triple {4265#false} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {4265#false} is VALID [2018-11-23 12:18:15,816 INFO L273 TraceCheckUtils]: 66: Hoare triple {4265#false} ~cond := #in~cond; {4265#false} is VALID [2018-11-23 12:18:15,816 INFO L273 TraceCheckUtils]: 67: Hoare triple {4265#false} assume 0 == ~cond; {4265#false} is VALID [2018-11-23 12:18:15,816 INFO L273 TraceCheckUtils]: 68: Hoare triple {4265#false} assume !false; {4265#false} is VALID [2018-11-23 12:18:15,823 INFO L134 CoverageAnalysis]: Checked inductivity of 135 backedges. 60 proven. 35 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2018-11-23 12:18:15,852 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:18:15,853 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 15] total 22 [2018-11-23 12:18:15,853 INFO L78 Accepts]: Start accepts. Automaton has 22 states. Word has length 69 [2018-11-23 12:18:15,854 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:18:15,854 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 22 states. [2018-11-23 12:18:15,970 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 91 edges. 91 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:18:15,971 INFO L459 AbstractCegarLoop]: Interpolant automaton has 22 states [2018-11-23 12:18:15,971 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2018-11-23 12:18:15,971 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=117, Invalid=345, Unknown=0, NotChecked=0, Total=462 [2018-11-23 12:18:15,972 INFO L87 Difference]: Start difference. First operand 73 states and 75 transitions. Second operand 22 states. [2018-11-23 12:18:16,922 WARN L180 SmtUtils]: Spent 109.00 ms on a formula simplification that was a NOOP. DAG size: 8 [2018-11-23 12:18:17,583 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:17,584 INFO L93 Difference]: Finished difference Result 177 states and 184 transitions. [2018-11-23 12:18:17,584 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2018-11-23 12:18:17,584 INFO L78 Accepts]: Start accepts. Automaton has 22 states. Word has length 69 [2018-11-23 12:18:17,584 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:18:17,584 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 22 states. [2018-11-23 12:18:17,587 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 119 transitions. [2018-11-23 12:18:17,587 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 22 states. [2018-11-23 12:18:17,589 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 119 transitions. [2018-11-23 12:18:17,590 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 119 transitions. [2018-11-23 12:18:17,743 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 119 edges. 119 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:18:17,746 INFO L225 Difference]: With dead ends: 177 [2018-11-23 12:18:17,746 INFO L226 Difference]: Without dead ends: 83 [2018-11-23 12:18:17,747 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 89 GetRequests, 63 SyntacticMatches, 0 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 168 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=192, Invalid=564, Unknown=0, NotChecked=0, Total=756 [2018-11-23 12:18:17,747 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 83 states. [2018-11-23 12:18:18,516 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 83 to 76. [2018-11-23 12:18:18,516 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:18:18,516 INFO L82 GeneralOperation]: Start isEquivalent. First operand 83 states. Second operand 76 states. [2018-11-23 12:18:18,516 INFO L74 IsIncluded]: Start isIncluded. First operand 83 states. Second operand 76 states. [2018-11-23 12:18:18,517 INFO L87 Difference]: Start difference. First operand 83 states. Second operand 76 states. [2018-11-23 12:18:18,520 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:18,520 INFO L93 Difference]: Finished difference Result 83 states and 86 transitions. [2018-11-23 12:18:18,520 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 86 transitions. [2018-11-23 12:18:18,520 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:18,520 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:18,520 INFO L74 IsIncluded]: Start isIncluded. First operand 76 states. Second operand 83 states. [2018-11-23 12:18:18,520 INFO L87 Difference]: Start difference. First operand 76 states. Second operand 83 states. [2018-11-23 12:18:18,522 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:18:18,522 INFO L93 Difference]: Finished difference Result 83 states and 86 transitions. [2018-11-23 12:18:18,522 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 86 transitions. [2018-11-23 12:18:18,523 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:18:18,523 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:18:18,523 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:18:18,523 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:18:18,523 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 76 states. [2018-11-23 12:18:18,525 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 76 states to 76 states and 78 transitions. [2018-11-23 12:18:18,525 INFO L78 Accepts]: Start accepts. Automaton has 76 states and 78 transitions. Word has length 69 [2018-11-23 12:18:18,525 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:18:18,525 INFO L480 AbstractCegarLoop]: Abstraction has 76 states and 78 transitions. [2018-11-23 12:18:18,525 INFO L481 AbstractCegarLoop]: Interpolant automaton has 22 states. [2018-11-23 12:18:18,525 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 78 transitions. [2018-11-23 12:18:18,526 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 73 [2018-11-23 12:18:18,526 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:18:18,526 INFO L402 BasicCegarLoop]: trace histogram [6, 6, 6, 6, 6, 6, 5, 5, 5, 5, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:18:18,527 INFO L423 AbstractCegarLoop]: === Iteration 13 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:18:18,527 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:18:18,527 INFO L82 PathProgramCache]: Analyzing trace with hash -840899128, now seen corresponding path program 9 times [2018-11-23 12:18:18,527 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:18:18,527 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:18:18,528 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:18,528 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:18:18,528 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:18:18,547 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:19,291 INFO L256 TraceCheckUtils]: 0: Hoare triple {5018#true} call ULTIMATE.init(); {5018#true} is VALID [2018-11-23 12:18:19,291 INFO L273 TraceCheckUtils]: 1: Hoare triple {5018#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {5018#true} is VALID [2018-11-23 12:18:19,291 INFO L273 TraceCheckUtils]: 2: Hoare triple {5018#true} assume true; {5018#true} is VALID [2018-11-23 12:18:19,292 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5018#true} {5018#true} #61#return; {5018#true} is VALID [2018-11-23 12:18:19,292 INFO L256 TraceCheckUtils]: 4: Hoare triple {5018#true} call #t~ret5 := main(); {5018#true} is VALID [2018-11-23 12:18:19,292 INFO L273 TraceCheckUtils]: 5: Hoare triple {5018#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {5018#true} is VALID [2018-11-23 12:18:19,292 INFO L273 TraceCheckUtils]: 6: Hoare triple {5018#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {5020#(= main_~i~0 0)} is VALID [2018-11-23 12:18:19,293 INFO L273 TraceCheckUtils]: 7: Hoare triple {5020#(= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0); {5020#(= main_~i~0 0)} is VALID [2018-11-23 12:18:19,293 INFO L273 TraceCheckUtils]: 8: Hoare triple {5020#(= main_~i~0 0)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5020#(= main_~i~0 0)} is VALID [2018-11-23 12:18:19,293 INFO L273 TraceCheckUtils]: 9: Hoare triple {5020#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5021#(and (<= 1 main_~i~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:18:19,294 INFO L273 TraceCheckUtils]: 10: Hoare triple {5021#(and (<= 1 main_~i~0) (<= main_~i~0 1))} assume !!(~i~0 < ~SIZE~0); {5021#(and (<= 1 main_~i~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:18:19,294 INFO L273 TraceCheckUtils]: 11: Hoare triple {5021#(and (<= 1 main_~i~0) (<= main_~i~0 1))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5021#(and (<= 1 main_~i~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:18:19,295 INFO L273 TraceCheckUtils]: 12: Hoare triple {5021#(and (<= 1 main_~i~0) (<= main_~i~0 1))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5022#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:18:19,295 INFO L273 TraceCheckUtils]: 13: Hoare triple {5022#(and (<= 2 main_~i~0) (<= main_~i~0 2))} assume !!(~i~0 < ~SIZE~0); {5022#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:18:19,296 INFO L273 TraceCheckUtils]: 14: Hoare triple {5022#(and (<= 2 main_~i~0) (<= main_~i~0 2))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5022#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:18:19,297 INFO L273 TraceCheckUtils]: 15: Hoare triple {5022#(and (<= 2 main_~i~0) (<= main_~i~0 2))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5023#(and (<= main_~i~0 3) (<= 3 main_~i~0))} is VALID [2018-11-23 12:18:19,298 INFO L273 TraceCheckUtils]: 16: Hoare triple {5023#(and (<= main_~i~0 3) (<= 3 main_~i~0))} assume !!(~i~0 < ~SIZE~0); {5023#(and (<= main_~i~0 3) (<= 3 main_~i~0))} is VALID [2018-11-23 12:18:19,298 INFO L273 TraceCheckUtils]: 17: Hoare triple {5023#(and (<= main_~i~0 3) (<= 3 main_~i~0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5023#(and (<= main_~i~0 3) (<= 3 main_~i~0))} is VALID [2018-11-23 12:18:19,299 INFO L273 TraceCheckUtils]: 18: Hoare triple {5023#(and (<= main_~i~0 3) (<= 3 main_~i~0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5024#(and (<= 4 main_~i~0) (<= main_~i~0 4))} is VALID [2018-11-23 12:18:19,300 INFO L273 TraceCheckUtils]: 19: Hoare triple {5024#(and (<= 4 main_~i~0) (<= main_~i~0 4))} assume !!(~i~0 < ~SIZE~0); {5024#(and (<= 4 main_~i~0) (<= main_~i~0 4))} is VALID [2018-11-23 12:18:19,301 INFO L273 TraceCheckUtils]: 20: Hoare triple {5024#(and (<= 4 main_~i~0) (<= main_~i~0 4))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5024#(and (<= 4 main_~i~0) (<= main_~i~0 4))} is VALID [2018-11-23 12:18:19,302 INFO L273 TraceCheckUtils]: 21: Hoare triple {5024#(and (<= 4 main_~i~0) (<= main_~i~0 4))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5025#(and (<= 5 main_~i~0) (<= main_~i~0 5))} is VALID [2018-11-23 12:18:19,302 INFO L273 TraceCheckUtils]: 22: Hoare triple {5025#(and (<= 5 main_~i~0) (<= main_~i~0 5))} assume !!(~i~0 < ~SIZE~0); {5025#(and (<= 5 main_~i~0) (<= main_~i~0 5))} is VALID [2018-11-23 12:18:19,303 INFO L273 TraceCheckUtils]: 23: Hoare triple {5025#(and (<= 5 main_~i~0) (<= main_~i~0 5))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5026#(and (<= 5 main_~i~0) (<= main_~i~0 5) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0)))))} is VALID [2018-11-23 12:18:19,304 INFO L273 TraceCheckUtils]: 24: Hoare triple {5026#(and (<= 5 main_~i~0) (<= main_~i~0 5) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0)))))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5027#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 5))))} is VALID [2018-11-23 12:18:19,305 INFO L273 TraceCheckUtils]: 25: Hoare triple {5027#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 5))))} assume !(~i~0 < ~SIZE~0); {5027#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 5))))} is VALID [2018-11-23 12:18:19,305 INFO L273 TraceCheckUtils]: 26: Hoare triple {5027#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 5))))} ~i~0 := 0; {5028#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 5)))) (= main_~i~0 0))} is VALID [2018-11-23 12:18:19,306 INFO L273 TraceCheckUtils]: 27: Hoare triple {5028#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 5)))) (= main_~i~0 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5028#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 5)))) (= main_~i~0 0))} is VALID [2018-11-23 12:18:19,306 INFO L256 TraceCheckUtils]: 28: Hoare triple {5028#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 5)))) (= main_~i~0 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {5018#true} is VALID [2018-11-23 12:18:19,307 INFO L273 TraceCheckUtils]: 29: Hoare triple {5018#true} ~cond := #in~cond; {5029#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} is VALID [2018-11-23 12:18:19,307 INFO L273 TraceCheckUtils]: 30: Hoare triple {5029#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} assume !(0 == ~cond); {5030#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:18:19,308 INFO L273 TraceCheckUtils]: 31: Hoare triple {5030#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {5030#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:18:19,309 INFO L268 TraceCheckUtils]: 32: Hoare quadruple {5030#(not (= |__VERIFIER_assert_#in~cond| 0))} {5028#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 5)))) (= main_~i~0 0))} #65#return; {5028#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 5)))) (= main_~i~0 0))} is VALID [2018-11-23 12:18:19,310 INFO L273 TraceCheckUtils]: 33: Hoare triple {5028#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 5)))) (= main_~i~0 0))} havoc #t~mem4; {5028#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 5)))) (= main_~i~0 0))} is VALID [2018-11-23 12:18:19,311 INFO L273 TraceCheckUtils]: 34: Hoare triple {5028#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 5)))) (= main_~i~0 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {5031#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} is VALID [2018-11-23 12:18:19,311 INFO L273 TraceCheckUtils]: 35: Hoare triple {5031#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5031#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} is VALID [2018-11-23 12:18:19,311 INFO L256 TraceCheckUtils]: 36: Hoare triple {5031#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {5018#true} is VALID [2018-11-23 12:18:19,312 INFO L273 TraceCheckUtils]: 37: Hoare triple {5018#true} ~cond := #in~cond; {5018#true} is VALID [2018-11-23 12:18:19,312 INFO L273 TraceCheckUtils]: 38: Hoare triple {5018#true} assume !(0 == ~cond); {5018#true} is VALID [2018-11-23 12:18:19,312 INFO L273 TraceCheckUtils]: 39: Hoare triple {5018#true} assume true; {5018#true} is VALID [2018-11-23 12:18:19,313 INFO L268 TraceCheckUtils]: 40: Hoare quadruple {5018#true} {5031#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} #65#return; {5031#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} is VALID [2018-11-23 12:18:19,313 INFO L273 TraceCheckUtils]: 41: Hoare triple {5031#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} havoc #t~mem4; {5031#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} is VALID [2018-11-23 12:18:19,314 INFO L273 TraceCheckUtils]: 42: Hoare triple {5031#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {5032#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} is VALID [2018-11-23 12:18:19,315 INFO L273 TraceCheckUtils]: 43: Hoare triple {5032#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5032#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} is VALID [2018-11-23 12:18:19,315 INFO L256 TraceCheckUtils]: 44: Hoare triple {5032#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {5018#true} is VALID [2018-11-23 12:18:19,315 INFO L273 TraceCheckUtils]: 45: Hoare triple {5018#true} ~cond := #in~cond; {5018#true} is VALID [2018-11-23 12:18:19,316 INFO L273 TraceCheckUtils]: 46: Hoare triple {5018#true} assume !(0 == ~cond); {5018#true} is VALID [2018-11-23 12:18:19,316 INFO L273 TraceCheckUtils]: 47: Hoare triple {5018#true} assume true; {5018#true} is VALID [2018-11-23 12:18:19,317 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {5018#true} {5032#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} #65#return; {5032#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} is VALID [2018-11-23 12:18:19,317 INFO L273 TraceCheckUtils]: 49: Hoare triple {5032#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} havoc #t~mem4; {5032#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} is VALID [2018-11-23 12:18:19,318 INFO L273 TraceCheckUtils]: 50: Hoare triple {5032#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {5033#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} is VALID [2018-11-23 12:18:19,319 INFO L273 TraceCheckUtils]: 51: Hoare triple {5033#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5033#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} is VALID [2018-11-23 12:18:19,319 INFO L256 TraceCheckUtils]: 52: Hoare triple {5033#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {5018#true} is VALID [2018-11-23 12:18:19,319 INFO L273 TraceCheckUtils]: 53: Hoare triple {5018#true} ~cond := #in~cond; {5018#true} is VALID [2018-11-23 12:18:19,319 INFO L273 TraceCheckUtils]: 54: Hoare triple {5018#true} assume !(0 == ~cond); {5018#true} is VALID [2018-11-23 12:18:19,320 INFO L273 TraceCheckUtils]: 55: Hoare triple {5018#true} assume true; {5018#true} is VALID [2018-11-23 12:18:19,322 INFO L268 TraceCheckUtils]: 56: Hoare quadruple {5018#true} {5033#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} #65#return; {5033#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} is VALID [2018-11-23 12:18:19,322 INFO L273 TraceCheckUtils]: 57: Hoare triple {5033#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} havoc #t~mem4; {5033#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} is VALID [2018-11-23 12:18:19,323 INFO L273 TraceCheckUtils]: 58: Hoare triple {5033#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {5034#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:18:19,324 INFO L273 TraceCheckUtils]: 59: Hoare triple {5034#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5034#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:18:19,324 INFO L256 TraceCheckUtils]: 60: Hoare triple {5034#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {5018#true} is VALID [2018-11-23 12:18:19,324 INFO L273 TraceCheckUtils]: 61: Hoare triple {5018#true} ~cond := #in~cond; {5018#true} is VALID [2018-11-23 12:18:19,324 INFO L273 TraceCheckUtils]: 62: Hoare triple {5018#true} assume !(0 == ~cond); {5018#true} is VALID [2018-11-23 12:18:19,325 INFO L273 TraceCheckUtils]: 63: Hoare triple {5018#true} assume true; {5018#true} is VALID [2018-11-23 12:18:19,326 INFO L268 TraceCheckUtils]: 64: Hoare quadruple {5018#true} {5034#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} #65#return; {5034#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:18:19,326 INFO L273 TraceCheckUtils]: 65: Hoare triple {5034#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} havoc #t~mem4; {5034#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:18:19,327 INFO L273 TraceCheckUtils]: 66: Hoare triple {5034#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {5035#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0))))} is VALID [2018-11-23 12:18:19,328 INFO L273 TraceCheckUtils]: 67: Hoare triple {5035#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5036#(= |main_#t~mem4| 0)} is VALID [2018-11-23 12:18:19,329 INFO L256 TraceCheckUtils]: 68: Hoare triple {5036#(= |main_#t~mem4| 0)} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {5030#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:18:19,330 INFO L273 TraceCheckUtils]: 69: Hoare triple {5030#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {5037#(not (= __VERIFIER_assert_~cond 0))} is VALID [2018-11-23 12:18:19,330 INFO L273 TraceCheckUtils]: 70: Hoare triple {5037#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {5019#false} is VALID [2018-11-23 12:18:19,330 INFO L273 TraceCheckUtils]: 71: Hoare triple {5019#false} assume !false; {5019#false} is VALID [2018-11-23 12:18:19,343 INFO L134 CoverageAnalysis]: Checked inductivity of 151 backedges. 9 proven. 114 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2018-11-23 12:18:19,343 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:18:19,343 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:18:19,357 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:18:19,400 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 7 check-sat command(s) [2018-11-23 12:18:19,400 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:18:19,416 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:18:19,419 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:18:19,584 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 12 [2018-11-23 12:18:19,595 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 11 [2018-11-23 12:18:19,598 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:18:19,600 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:19,606 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:19,606 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:19, output treesize:15 [2018-11-23 12:18:24,198 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 23 treesize of output 19 [2018-11-23 12:18:24,203 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:18:24,204 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 15 [2018-11-23 12:18:24,207 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:18:24,212 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:24,225 INFO L267 ElimStorePlain]: Start of recursive call 1: 4 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:18:24,225 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 5 variables, input treesize:32, output treesize:3 [2018-11-23 12:18:24,228 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:18:24,228 WARN L384 uantifierElimination]: Input elimination task: ∃ [|#memory_int|, |main_~#a~0.base|, main_~i~0, |main_~#a~0.offset|, v_main_~i~0_69]. (let ((.cse0 (select |#memory_int| |main_~#a~0.base|))) (and (= |main_#t~mem4| (select .cse0 (+ (* 4 main_~i~0) |main_~#a~0.offset|))) (<= 5 main_~i~0) (= 0 (select .cse0 (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5) (<= main_~i~0 v_main_~i~0_69))) [2018-11-23 12:18:24,228 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (= 0 |main_#t~mem4|) [2018-11-23 12:18:24,307 INFO L256 TraceCheckUtils]: 0: Hoare triple {5018#true} call ULTIMATE.init(); {5018#true} is VALID [2018-11-23 12:18:24,307 INFO L273 TraceCheckUtils]: 1: Hoare triple {5018#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {5018#true} is VALID [2018-11-23 12:18:24,308 INFO L273 TraceCheckUtils]: 2: Hoare triple {5018#true} assume true; {5018#true} is VALID [2018-11-23 12:18:24,308 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5018#true} {5018#true} #61#return; {5018#true} is VALID [2018-11-23 12:18:24,308 INFO L256 TraceCheckUtils]: 4: Hoare triple {5018#true} call #t~ret5 := main(); {5018#true} is VALID [2018-11-23 12:18:24,308 INFO L273 TraceCheckUtils]: 5: Hoare triple {5018#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {5018#true} is VALID [2018-11-23 12:18:24,309 INFO L273 TraceCheckUtils]: 6: Hoare triple {5018#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {5059#(<= main_~i~0 0)} is VALID [2018-11-23 12:18:24,310 INFO L273 TraceCheckUtils]: 7: Hoare triple {5059#(<= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0); {5059#(<= main_~i~0 0)} is VALID [2018-11-23 12:18:24,310 INFO L273 TraceCheckUtils]: 8: Hoare triple {5059#(<= main_~i~0 0)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5059#(<= main_~i~0 0)} is VALID [2018-11-23 12:18:24,311 INFO L273 TraceCheckUtils]: 9: Hoare triple {5059#(<= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5069#(<= main_~i~0 1)} is VALID [2018-11-23 12:18:24,311 INFO L273 TraceCheckUtils]: 10: Hoare triple {5069#(<= main_~i~0 1)} assume !!(~i~0 < ~SIZE~0); {5069#(<= main_~i~0 1)} is VALID [2018-11-23 12:18:24,312 INFO L273 TraceCheckUtils]: 11: Hoare triple {5069#(<= main_~i~0 1)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5069#(<= main_~i~0 1)} is VALID [2018-11-23 12:18:24,312 INFO L273 TraceCheckUtils]: 12: Hoare triple {5069#(<= main_~i~0 1)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5079#(<= main_~i~0 2)} is VALID [2018-11-23 12:18:24,312 INFO L273 TraceCheckUtils]: 13: Hoare triple {5079#(<= main_~i~0 2)} assume !!(~i~0 < ~SIZE~0); {5079#(<= main_~i~0 2)} is VALID [2018-11-23 12:18:24,313 INFO L273 TraceCheckUtils]: 14: Hoare triple {5079#(<= main_~i~0 2)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5079#(<= main_~i~0 2)} is VALID [2018-11-23 12:18:24,314 INFO L273 TraceCheckUtils]: 15: Hoare triple {5079#(<= main_~i~0 2)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5089#(<= main_~i~0 3)} is VALID [2018-11-23 12:18:24,314 INFO L273 TraceCheckUtils]: 16: Hoare triple {5089#(<= main_~i~0 3)} assume !!(~i~0 < ~SIZE~0); {5089#(<= main_~i~0 3)} is VALID [2018-11-23 12:18:24,315 INFO L273 TraceCheckUtils]: 17: Hoare triple {5089#(<= main_~i~0 3)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5089#(<= main_~i~0 3)} is VALID [2018-11-23 12:18:24,316 INFO L273 TraceCheckUtils]: 18: Hoare triple {5089#(<= main_~i~0 3)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5099#(<= main_~i~0 4)} is VALID [2018-11-23 12:18:24,316 INFO L273 TraceCheckUtils]: 19: Hoare triple {5099#(<= main_~i~0 4)} assume !!(~i~0 < ~SIZE~0); {5099#(<= main_~i~0 4)} is VALID [2018-11-23 12:18:24,317 INFO L273 TraceCheckUtils]: 20: Hoare triple {5099#(<= main_~i~0 4)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5099#(<= main_~i~0 4)} is VALID [2018-11-23 12:18:24,318 INFO L273 TraceCheckUtils]: 21: Hoare triple {5099#(<= main_~i~0 4)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5109#(<= main_~i~0 5)} is VALID [2018-11-23 12:18:24,318 INFO L273 TraceCheckUtils]: 22: Hoare triple {5109#(<= main_~i~0 5)} assume !!(~i~0 < ~SIZE~0); {5109#(<= main_~i~0 5)} is VALID [2018-11-23 12:18:24,319 INFO L273 TraceCheckUtils]: 23: Hoare triple {5109#(<= main_~i~0 5)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5116#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~i~0) |main_~#a~0.offset|))) (<= main_~i~0 5))} is VALID [2018-11-23 12:18:24,321 INFO L273 TraceCheckUtils]: 24: Hoare triple {5116#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~i~0) |main_~#a~0.offset|))) (<= main_~i~0 5))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5120#(exists ((v_main_~i~0_69 Int)) (and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= main_~i~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5)))} is VALID [2018-11-23 12:18:24,322 INFO L273 TraceCheckUtils]: 25: Hoare triple {5120#(exists ((v_main_~i~0_69 Int)) (and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= main_~i~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5)))} assume !(~i~0 < ~SIZE~0); {5124#(exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5)))} is VALID [2018-11-23 12:18:24,323 INFO L273 TraceCheckUtils]: 26: Hoare triple {5124#(exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5)))} ~i~0 := 0; {5128#(and (<= 0 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} is VALID [2018-11-23 12:18:24,324 INFO L273 TraceCheckUtils]: 27: Hoare triple {5128#(and (<= 0 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5128#(and (<= 0 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} is VALID [2018-11-23 12:18:24,336 INFO L256 TraceCheckUtils]: 28: Hoare triple {5128#(and (<= 0 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} is VALID [2018-11-23 12:18:24,337 INFO L273 TraceCheckUtils]: 29: Hoare triple {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} ~cond := #in~cond; {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} is VALID [2018-11-23 12:18:24,337 INFO L273 TraceCheckUtils]: 30: Hoare triple {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} assume !(0 == ~cond); {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} is VALID [2018-11-23 12:18:24,337 INFO L273 TraceCheckUtils]: 31: Hoare triple {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} assume true; {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} is VALID [2018-11-23 12:18:24,338 INFO L268 TraceCheckUtils]: 32: Hoare quadruple {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} {5128#(and (<= 0 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} #65#return; {5128#(and (<= 0 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} is VALID [2018-11-23 12:18:24,339 INFO L273 TraceCheckUtils]: 33: Hoare triple {5128#(and (<= 0 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} havoc #t~mem4; {5128#(and (<= 0 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} is VALID [2018-11-23 12:18:24,340 INFO L273 TraceCheckUtils]: 34: Hoare triple {5128#(and (<= 0 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {5154#(and (<= 1 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} is VALID [2018-11-23 12:18:24,341 INFO L273 TraceCheckUtils]: 35: Hoare triple {5154#(and (<= 1 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5154#(and (<= 1 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} is VALID [2018-11-23 12:18:24,348 INFO L256 TraceCheckUtils]: 36: Hoare triple {5154#(and (<= 1 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} is VALID [2018-11-23 12:18:24,348 INFO L273 TraceCheckUtils]: 37: Hoare triple {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} ~cond := #in~cond; {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} is VALID [2018-11-23 12:18:24,349 INFO L273 TraceCheckUtils]: 38: Hoare triple {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} assume !(0 == ~cond); {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} is VALID [2018-11-23 12:18:24,349 INFO L273 TraceCheckUtils]: 39: Hoare triple {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} assume true; {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} is VALID [2018-11-23 12:18:24,350 INFO L268 TraceCheckUtils]: 40: Hoare quadruple {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} {5154#(and (<= 1 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} #65#return; {5154#(and (<= 1 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} is VALID [2018-11-23 12:18:24,350 INFO L273 TraceCheckUtils]: 41: Hoare triple {5154#(and (<= 1 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} havoc #t~mem4; {5154#(and (<= 1 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} is VALID [2018-11-23 12:18:24,352 INFO L273 TraceCheckUtils]: 42: Hoare triple {5154#(and (<= 1 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {5179#(and (<= 2 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} is VALID [2018-11-23 12:18:24,353 INFO L273 TraceCheckUtils]: 43: Hoare triple {5179#(and (<= 2 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5179#(and (<= 2 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} is VALID [2018-11-23 12:18:24,365 INFO L256 TraceCheckUtils]: 44: Hoare triple {5179#(and (<= 2 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {5186#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_13| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_13| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_13|) (+ |v_main_~#a~0.offset_BEFORE_CALL_13| (* 4 v_main_~i~0_69))) 0) (<= v_main_~i~0_69 5)))} is VALID [2018-11-23 12:18:24,365 INFO L273 TraceCheckUtils]: 45: Hoare triple {5186#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_13| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_13| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_13|) (+ |v_main_~#a~0.offset_BEFORE_CALL_13| (* 4 v_main_~i~0_69))) 0) (<= v_main_~i~0_69 5)))} ~cond := #in~cond; {5186#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_13| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_13| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_13|) (+ |v_main_~#a~0.offset_BEFORE_CALL_13| (* 4 v_main_~i~0_69))) 0) (<= v_main_~i~0_69 5)))} is VALID [2018-11-23 12:18:24,366 INFO L273 TraceCheckUtils]: 46: Hoare triple {5186#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_13| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_13| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_13|) (+ |v_main_~#a~0.offset_BEFORE_CALL_13| (* 4 v_main_~i~0_69))) 0) (<= v_main_~i~0_69 5)))} assume !(0 == ~cond); {5186#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_13| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_13| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_13|) (+ |v_main_~#a~0.offset_BEFORE_CALL_13| (* 4 v_main_~i~0_69))) 0) (<= v_main_~i~0_69 5)))} is VALID [2018-11-23 12:18:24,366 INFO L273 TraceCheckUtils]: 47: Hoare triple {5186#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_13| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_13| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_13|) (+ |v_main_~#a~0.offset_BEFORE_CALL_13| (* 4 v_main_~i~0_69))) 0) (<= v_main_~i~0_69 5)))} assume true; {5186#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_13| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_13| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_13|) (+ |v_main_~#a~0.offset_BEFORE_CALL_13| (* 4 v_main_~i~0_69))) 0) (<= v_main_~i~0_69 5)))} is VALID [2018-11-23 12:18:24,367 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {5186#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_13| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_13| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_13|) (+ |v_main_~#a~0.offset_BEFORE_CALL_13| (* 4 v_main_~i~0_69))) 0) (<= v_main_~i~0_69 5)))} {5179#(and (<= 2 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} #65#return; {5179#(and (<= 2 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} is VALID [2018-11-23 12:18:24,368 INFO L273 TraceCheckUtils]: 49: Hoare triple {5179#(and (<= 2 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} havoc #t~mem4; {5179#(and (<= 2 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} is VALID [2018-11-23 12:18:24,369 INFO L273 TraceCheckUtils]: 50: Hoare triple {5179#(and (<= 2 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {5205#(and (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))) (<= 3 main_~i~0))} is VALID [2018-11-23 12:18:24,369 INFO L273 TraceCheckUtils]: 51: Hoare triple {5205#(and (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))) (<= 3 main_~i~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5205#(and (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))) (<= 3 main_~i~0))} is VALID [2018-11-23 12:18:24,390 INFO L256 TraceCheckUtils]: 52: Hoare triple {5205#(and (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))) (<= 3 main_~i~0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} is VALID [2018-11-23 12:18:24,390 INFO L273 TraceCheckUtils]: 53: Hoare triple {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} ~cond := #in~cond; {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} is VALID [2018-11-23 12:18:24,391 INFO L273 TraceCheckUtils]: 54: Hoare triple {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} assume !(0 == ~cond); {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} is VALID [2018-11-23 12:18:24,411 INFO L273 TraceCheckUtils]: 55: Hoare triple {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} assume true; {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} is VALID [2018-11-23 12:18:24,426 INFO L268 TraceCheckUtils]: 56: Hoare quadruple {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} {5205#(and (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))) (<= 3 main_~i~0))} #65#return; {5205#(and (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))) (<= 3 main_~i~0))} is VALID [2018-11-23 12:18:24,441 INFO L273 TraceCheckUtils]: 57: Hoare triple {5205#(and (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))) (<= 3 main_~i~0))} havoc #t~mem4; {5205#(and (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))) (<= 3 main_~i~0))} is VALID [2018-11-23 12:18:24,457 INFO L273 TraceCheckUtils]: 58: Hoare triple {5205#(and (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))) (<= 3 main_~i~0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {5230#(and (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))) (<= 4 main_~i~0))} is VALID [2018-11-23 12:18:24,466 INFO L273 TraceCheckUtils]: 59: Hoare triple {5230#(and (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))) (<= 4 main_~i~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5230#(and (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))) (<= 4 main_~i~0))} is VALID [2018-11-23 12:18:24,480 INFO L256 TraceCheckUtils]: 60: Hoare triple {5230#(and (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))) (<= 4 main_~i~0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} is VALID [2018-11-23 12:18:24,481 INFO L273 TraceCheckUtils]: 61: Hoare triple {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} ~cond := #in~cond; {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} is VALID [2018-11-23 12:18:24,481 INFO L273 TraceCheckUtils]: 62: Hoare triple {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} assume !(0 == ~cond); {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} is VALID [2018-11-23 12:18:24,482 INFO L273 TraceCheckUtils]: 63: Hoare triple {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} assume true; {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} is VALID [2018-11-23 12:18:24,483 INFO L268 TraceCheckUtils]: 64: Hoare quadruple {5135#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_11| Int) (v_main_~i~0_69 Int) (|v_main_~#a~0.base_BEFORE_CALL_11| Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (<= v_main_~i~0_69 5) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_11|) (+ |v_main_~#a~0.offset_BEFORE_CALL_11| (* 4 v_main_~i~0_69))) 0)))} {5230#(and (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))) (<= 4 main_~i~0))} #65#return; {5230#(and (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))) (<= 4 main_~i~0))} is VALID [2018-11-23 12:18:24,483 INFO L273 TraceCheckUtils]: 65: Hoare triple {5230#(and (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))) (<= 4 main_~i~0))} havoc #t~mem4; {5230#(and (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))) (<= 4 main_~i~0))} is VALID [2018-11-23 12:18:24,485 INFO L273 TraceCheckUtils]: 66: Hoare triple {5230#(and (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))) (<= 4 main_~i~0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {5255#(and (<= 5 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} is VALID [2018-11-23 12:18:24,486 INFO L273 TraceCheckUtils]: 67: Hoare triple {5255#(and (<= 5 main_~i~0) (exists ((v_main_~i~0_69 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_69 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_69) |main_~#a~0.offset|))) (<= v_main_~i~0_69 5))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5036#(= |main_#t~mem4| 0)} is VALID [2018-11-23 12:18:24,487 INFO L256 TraceCheckUtils]: 68: Hoare triple {5036#(= |main_#t~mem4| 0)} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {5262#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:18:24,488 INFO L273 TraceCheckUtils]: 69: Hoare triple {5262#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {5266#(= 1 __VERIFIER_assert_~cond)} is VALID [2018-11-23 12:18:24,489 INFO L273 TraceCheckUtils]: 70: Hoare triple {5266#(= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5019#false} is VALID [2018-11-23 12:18:24,489 INFO L273 TraceCheckUtils]: 71: Hoare triple {5019#false} assume !false; {5019#false} is VALID [2018-11-23 12:18:24,515 INFO L134 CoverageAnalysis]: Checked inductivity of 151 backedges. 53 proven. 66 refuted. 8 times theorem prover too weak. 24 trivial. 0 not checked. [2018-11-23 12:18:24,534 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:18:24,535 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [20, 22] total 39 [2018-11-23 12:18:24,535 INFO L78 Accepts]: Start accepts. Automaton has 39 states. Word has length 72 [2018-11-23 12:18:24,536 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:18:24,536 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 39 states. [2018-11-23 12:18:26,896 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 119 edges. 118 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2018-11-23 12:18:26,896 INFO L459 AbstractCegarLoop]: Interpolant automaton has 39 states [2018-11-23 12:18:26,897 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 39 interpolants. [2018-11-23 12:18:26,898 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=167, Invalid=1314, Unknown=1, NotChecked=0, Total=1482 [2018-11-23 12:18:26,898 INFO L87 Difference]: Start difference. First operand 76 states and 78 transitions. Second operand 39 states. [2018-11-23 12:18:49,772 WARN L180 SmtUtils]: Spent 288.00 ms on a formula simplification. DAG size of input: 37 DAG size of output: 30 [2018-11-23 12:18:51,299 WARN L180 SmtUtils]: Spent 270.00 ms on a formula simplification. DAG size of input: 35 DAG size of output: 19 [2018-11-23 12:19:05,650 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:05,651 INFO L93 Difference]: Finished difference Result 197 states and 206 transitions. [2018-11-23 12:19:05,651 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 54 states. [2018-11-23 12:19:05,651 INFO L78 Accepts]: Start accepts. Automaton has 39 states. Word has length 72 [2018-11-23 12:19:05,651 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:19:05,651 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 39 states. [2018-11-23 12:19:05,655 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 54 states to 54 states and 141 transitions. [2018-11-23 12:19:05,655 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 39 states. [2018-11-23 12:19:05,658 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 54 states to 54 states and 141 transitions. [2018-11-23 12:19:05,658 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 54 states and 141 transitions. [2018-11-23 12:19:11,164 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 141 edges. 138 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2018-11-23 12:19:11,166 INFO L225 Difference]: With dead ends: 197 [2018-11-23 12:19:11,166 INFO L226 Difference]: Without dead ends: 95 [2018-11-23 12:19:11,170 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 140 GetRequests, 48 SyntacticMatches, 10 SemanticMatches, 82 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1740 ImplicationChecksByTransitivity, 8.2s TimeCoverageRelationStatistics Valid=771, Invalid=6200, Unknown=1, NotChecked=0, Total=6972 [2018-11-23 12:19:11,170 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 95 states. [2018-11-23 12:19:11,633 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 95 to 87. [2018-11-23 12:19:11,633 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:19:11,634 INFO L82 GeneralOperation]: Start isEquivalent. First operand 95 states. Second operand 87 states. [2018-11-23 12:19:11,634 INFO L74 IsIncluded]: Start isIncluded. First operand 95 states. Second operand 87 states. [2018-11-23 12:19:11,634 INFO L87 Difference]: Start difference. First operand 95 states. Second operand 87 states. [2018-11-23 12:19:11,637 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:11,637 INFO L93 Difference]: Finished difference Result 95 states and 98 transitions. [2018-11-23 12:19:11,637 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 98 transitions. [2018-11-23 12:19:11,638 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:19:11,638 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:19:11,638 INFO L74 IsIncluded]: Start isIncluded. First operand 87 states. Second operand 95 states. [2018-11-23 12:19:11,638 INFO L87 Difference]: Start difference. First operand 87 states. Second operand 95 states. [2018-11-23 12:19:11,641 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:11,641 INFO L93 Difference]: Finished difference Result 95 states and 98 transitions. [2018-11-23 12:19:11,641 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 98 transitions. [2018-11-23 12:19:11,641 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:19:11,642 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:19:11,642 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:19:11,642 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:19:11,642 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 87 states. [2018-11-23 12:19:11,644 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 87 states to 87 states and 89 transitions. [2018-11-23 12:19:11,644 INFO L78 Accepts]: Start accepts. Automaton has 87 states and 89 transitions. Word has length 72 [2018-11-23 12:19:11,644 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:19:11,644 INFO L480 AbstractCegarLoop]: Abstraction has 87 states and 89 transitions. [2018-11-23 12:19:11,645 INFO L481 AbstractCegarLoop]: Interpolant automaton has 39 states. [2018-11-23 12:19:11,645 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 89 transitions. [2018-11-23 12:19:11,646 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 84 [2018-11-23 12:19:11,646 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:19:11,646 INFO L402 BasicCegarLoop]: trace histogram [7, 7, 7, 7, 7, 7, 6, 6, 6, 6, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:19:11,646 INFO L423 AbstractCegarLoop]: === Iteration 14 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:19:11,646 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:19:11,647 INFO L82 PathProgramCache]: Analyzing trace with hash 854576457, now seen corresponding path program 10 times [2018-11-23 12:19:11,647 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:19:11,647 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:19:11,648 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:19:11,648 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:19:11,648 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:19:11,668 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:19:13,223 INFO L256 TraceCheckUtils]: 0: Hoare triple {5944#true} call ULTIMATE.init(); {5944#true} is VALID [2018-11-23 12:19:13,224 INFO L273 TraceCheckUtils]: 1: Hoare triple {5944#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {5944#true} is VALID [2018-11-23 12:19:13,224 INFO L273 TraceCheckUtils]: 2: Hoare triple {5944#true} assume true; {5944#true} is VALID [2018-11-23 12:19:13,224 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5944#true} {5944#true} #61#return; {5944#true} is VALID [2018-11-23 12:19:13,225 INFO L256 TraceCheckUtils]: 4: Hoare triple {5944#true} call #t~ret5 := main(); {5944#true} is VALID [2018-11-23 12:19:13,225 INFO L273 TraceCheckUtils]: 5: Hoare triple {5944#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {5944#true} is VALID [2018-11-23 12:19:13,225 INFO L273 TraceCheckUtils]: 6: Hoare triple {5944#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {5946#(= main_~i~0 0)} is VALID [2018-11-23 12:19:13,226 INFO L273 TraceCheckUtils]: 7: Hoare triple {5946#(= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0); {5946#(= main_~i~0 0)} is VALID [2018-11-23 12:19:13,226 INFO L273 TraceCheckUtils]: 8: Hoare triple {5946#(= main_~i~0 0)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5946#(= main_~i~0 0)} is VALID [2018-11-23 12:19:13,227 INFO L273 TraceCheckUtils]: 9: Hoare triple {5946#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5947#(and (<= 1 main_~i~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:19:13,227 INFO L273 TraceCheckUtils]: 10: Hoare triple {5947#(and (<= 1 main_~i~0) (<= main_~i~0 1))} assume !!(~i~0 < ~SIZE~0); {5947#(and (<= 1 main_~i~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:19:13,228 INFO L273 TraceCheckUtils]: 11: Hoare triple {5947#(and (<= 1 main_~i~0) (<= main_~i~0 1))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5947#(and (<= 1 main_~i~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:19:13,228 INFO L273 TraceCheckUtils]: 12: Hoare triple {5947#(and (<= 1 main_~i~0) (<= main_~i~0 1))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5948#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:19:13,229 INFO L273 TraceCheckUtils]: 13: Hoare triple {5948#(and (<= 2 main_~i~0) (<= main_~i~0 2))} assume !!(~i~0 < ~SIZE~0); {5948#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:19:13,230 INFO L273 TraceCheckUtils]: 14: Hoare triple {5948#(and (<= 2 main_~i~0) (<= main_~i~0 2))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5948#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:19:13,231 INFO L273 TraceCheckUtils]: 15: Hoare triple {5948#(and (<= 2 main_~i~0) (<= main_~i~0 2))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5949#(and (<= main_~i~0 3) (<= 3 main_~i~0))} is VALID [2018-11-23 12:19:13,231 INFO L273 TraceCheckUtils]: 16: Hoare triple {5949#(and (<= main_~i~0 3) (<= 3 main_~i~0))} assume !!(~i~0 < ~SIZE~0); {5949#(and (<= main_~i~0 3) (<= 3 main_~i~0))} is VALID [2018-11-23 12:19:13,232 INFO L273 TraceCheckUtils]: 17: Hoare triple {5949#(and (<= main_~i~0 3) (<= 3 main_~i~0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5949#(and (<= main_~i~0 3) (<= 3 main_~i~0))} is VALID [2018-11-23 12:19:13,233 INFO L273 TraceCheckUtils]: 18: Hoare triple {5949#(and (<= main_~i~0 3) (<= 3 main_~i~0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5950#(and (<= 4 main_~i~0) (<= main_~i~0 4))} is VALID [2018-11-23 12:19:13,234 INFO L273 TraceCheckUtils]: 19: Hoare triple {5950#(and (<= 4 main_~i~0) (<= main_~i~0 4))} assume !!(~i~0 < ~SIZE~0); {5950#(and (<= 4 main_~i~0) (<= main_~i~0 4))} is VALID [2018-11-23 12:19:13,234 INFO L273 TraceCheckUtils]: 20: Hoare triple {5950#(and (<= 4 main_~i~0) (<= main_~i~0 4))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5950#(and (<= 4 main_~i~0) (<= main_~i~0 4))} is VALID [2018-11-23 12:19:13,235 INFO L273 TraceCheckUtils]: 21: Hoare triple {5950#(and (<= 4 main_~i~0) (<= main_~i~0 4))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5951#(and (<= 5 main_~i~0) (<= main_~i~0 5))} is VALID [2018-11-23 12:19:13,236 INFO L273 TraceCheckUtils]: 22: Hoare triple {5951#(and (<= 5 main_~i~0) (<= main_~i~0 5))} assume !!(~i~0 < ~SIZE~0); {5951#(and (<= 5 main_~i~0) (<= main_~i~0 5))} is VALID [2018-11-23 12:19:13,237 INFO L273 TraceCheckUtils]: 23: Hoare triple {5951#(and (<= 5 main_~i~0) (<= main_~i~0 5))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5951#(and (<= 5 main_~i~0) (<= main_~i~0 5))} is VALID [2018-11-23 12:19:13,238 INFO L273 TraceCheckUtils]: 24: Hoare triple {5951#(and (<= 5 main_~i~0) (<= main_~i~0 5))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5952#(and (<= 6 main_~i~0) (<= main_~i~0 6))} is VALID [2018-11-23 12:19:13,238 INFO L273 TraceCheckUtils]: 25: Hoare triple {5952#(and (<= 6 main_~i~0) (<= main_~i~0 6))} assume !!(~i~0 < ~SIZE~0); {5952#(and (<= 6 main_~i~0) (<= main_~i~0 6))} is VALID [2018-11-23 12:19:13,240 INFO L273 TraceCheckUtils]: 26: Hoare triple {5952#(and (<= 6 main_~i~0) (<= main_~i~0 6))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5953#(and (<= 6 main_~i~0) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0)))) (<= main_~i~0 6))} is VALID [2018-11-23 12:19:13,241 INFO L273 TraceCheckUtils]: 27: Hoare triple {5953#(and (<= 6 main_~i~0) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0)))) (<= main_~i~0 6))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5954#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 6))))} is VALID [2018-11-23 12:19:13,241 INFO L273 TraceCheckUtils]: 28: Hoare triple {5954#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 6))))} assume !(~i~0 < ~SIZE~0); {5954#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 6))))} is VALID [2018-11-23 12:19:13,242 INFO L273 TraceCheckUtils]: 29: Hoare triple {5954#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 6))))} ~i~0 := 0; {5955#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 6)))) (= main_~i~0 0))} is VALID [2018-11-23 12:19:13,243 INFO L273 TraceCheckUtils]: 30: Hoare triple {5955#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 6)))) (= main_~i~0 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5955#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 6)))) (= main_~i~0 0))} is VALID [2018-11-23 12:19:13,243 INFO L256 TraceCheckUtils]: 31: Hoare triple {5955#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 6)))) (= main_~i~0 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {5944#true} is VALID [2018-11-23 12:19:13,244 INFO L273 TraceCheckUtils]: 32: Hoare triple {5944#true} ~cond := #in~cond; {5956#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} is VALID [2018-11-23 12:19:13,244 INFO L273 TraceCheckUtils]: 33: Hoare triple {5956#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} assume !(0 == ~cond); {5957#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:19:13,245 INFO L273 TraceCheckUtils]: 34: Hoare triple {5957#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {5957#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:19:13,246 INFO L268 TraceCheckUtils]: 35: Hoare quadruple {5957#(not (= |__VERIFIER_assert_#in~cond| 0))} {5955#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 6)))) (= main_~i~0 0))} #65#return; {5955#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 6)))) (= main_~i~0 0))} is VALID [2018-11-23 12:19:13,246 INFO L273 TraceCheckUtils]: 36: Hoare triple {5955#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 6)))) (= main_~i~0 0))} havoc #t~mem4; {5955#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 6)))) (= main_~i~0 0))} is VALID [2018-11-23 12:19:13,247 INFO L273 TraceCheckUtils]: 37: Hoare triple {5955#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 6)))) (= main_~i~0 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {5958#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} is VALID [2018-11-23 12:19:13,248 INFO L273 TraceCheckUtils]: 38: Hoare triple {5958#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5958#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} is VALID [2018-11-23 12:19:13,248 INFO L256 TraceCheckUtils]: 39: Hoare triple {5958#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {5944#true} is VALID [2018-11-23 12:19:13,248 INFO L273 TraceCheckUtils]: 40: Hoare triple {5944#true} ~cond := #in~cond; {5944#true} is VALID [2018-11-23 12:19:13,249 INFO L273 TraceCheckUtils]: 41: Hoare triple {5944#true} assume !(0 == ~cond); {5944#true} is VALID [2018-11-23 12:19:13,249 INFO L273 TraceCheckUtils]: 42: Hoare triple {5944#true} assume true; {5944#true} is VALID [2018-11-23 12:19:13,250 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {5944#true} {5958#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} #65#return; {5958#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} is VALID [2018-11-23 12:19:13,250 INFO L273 TraceCheckUtils]: 44: Hoare triple {5958#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} havoc #t~mem4; {5958#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} is VALID [2018-11-23 12:19:13,251 INFO L273 TraceCheckUtils]: 45: Hoare triple {5958#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {5959#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} is VALID [2018-11-23 12:19:13,252 INFO L273 TraceCheckUtils]: 46: Hoare triple {5959#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5959#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} is VALID [2018-11-23 12:19:13,252 INFO L256 TraceCheckUtils]: 47: Hoare triple {5959#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {5944#true} is VALID [2018-11-23 12:19:13,252 INFO L273 TraceCheckUtils]: 48: Hoare triple {5944#true} ~cond := #in~cond; {5944#true} is VALID [2018-11-23 12:19:13,253 INFO L273 TraceCheckUtils]: 49: Hoare triple {5944#true} assume !(0 == ~cond); {5944#true} is VALID [2018-11-23 12:19:13,253 INFO L273 TraceCheckUtils]: 50: Hoare triple {5944#true} assume true; {5944#true} is VALID [2018-11-23 12:19:13,254 INFO L268 TraceCheckUtils]: 51: Hoare quadruple {5944#true} {5959#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} #65#return; {5959#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} is VALID [2018-11-23 12:19:13,254 INFO L273 TraceCheckUtils]: 52: Hoare triple {5959#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} havoc #t~mem4; {5959#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} is VALID [2018-11-23 12:19:13,255 INFO L273 TraceCheckUtils]: 53: Hoare triple {5959#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {5960#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} is VALID [2018-11-23 12:19:13,256 INFO L273 TraceCheckUtils]: 54: Hoare triple {5960#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5960#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} is VALID [2018-11-23 12:19:13,256 INFO L256 TraceCheckUtils]: 55: Hoare triple {5960#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {5944#true} is VALID [2018-11-23 12:19:13,256 INFO L273 TraceCheckUtils]: 56: Hoare triple {5944#true} ~cond := #in~cond; {5944#true} is VALID [2018-11-23 12:19:13,257 INFO L273 TraceCheckUtils]: 57: Hoare triple {5944#true} assume !(0 == ~cond); {5944#true} is VALID [2018-11-23 12:19:13,257 INFO L273 TraceCheckUtils]: 58: Hoare triple {5944#true} assume true; {5944#true} is VALID [2018-11-23 12:19:13,257 INFO L268 TraceCheckUtils]: 59: Hoare quadruple {5944#true} {5960#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} #65#return; {5960#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} is VALID [2018-11-23 12:19:13,258 INFO L273 TraceCheckUtils]: 60: Hoare triple {5960#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} havoc #t~mem4; {5960#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} is VALID [2018-11-23 12:19:13,258 INFO L273 TraceCheckUtils]: 61: Hoare triple {5960#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {5961#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} is VALID [2018-11-23 12:19:13,259 INFO L273 TraceCheckUtils]: 62: Hoare triple {5961#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5961#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} is VALID [2018-11-23 12:19:13,259 INFO L256 TraceCheckUtils]: 63: Hoare triple {5961#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {5944#true} is VALID [2018-11-23 12:19:13,259 INFO L273 TraceCheckUtils]: 64: Hoare triple {5944#true} ~cond := #in~cond; {5944#true} is VALID [2018-11-23 12:19:13,259 INFO L273 TraceCheckUtils]: 65: Hoare triple {5944#true} assume !(0 == ~cond); {5944#true} is VALID [2018-11-23 12:19:13,259 INFO L273 TraceCheckUtils]: 66: Hoare triple {5944#true} assume true; {5944#true} is VALID [2018-11-23 12:19:13,260 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {5944#true} {5961#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} #65#return; {5961#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} is VALID [2018-11-23 12:19:13,260 INFO L273 TraceCheckUtils]: 68: Hoare triple {5961#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} havoc #t~mem4; {5961#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} is VALID [2018-11-23 12:19:13,261 INFO L273 TraceCheckUtils]: 69: Hoare triple {5961#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {5962#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:19:13,262 INFO L273 TraceCheckUtils]: 70: Hoare triple {5962#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5962#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:19:13,262 INFO L256 TraceCheckUtils]: 71: Hoare triple {5962#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {5944#true} is VALID [2018-11-23 12:19:13,262 INFO L273 TraceCheckUtils]: 72: Hoare triple {5944#true} ~cond := #in~cond; {5944#true} is VALID [2018-11-23 12:19:13,262 INFO L273 TraceCheckUtils]: 73: Hoare triple {5944#true} assume !(0 == ~cond); {5944#true} is VALID [2018-11-23 12:19:13,263 INFO L273 TraceCheckUtils]: 74: Hoare triple {5944#true} assume true; {5944#true} is VALID [2018-11-23 12:19:13,263 INFO L268 TraceCheckUtils]: 75: Hoare quadruple {5944#true} {5962#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} #65#return; {5962#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:19:13,264 INFO L273 TraceCheckUtils]: 76: Hoare triple {5962#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} havoc #t~mem4; {5962#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:19:13,265 INFO L273 TraceCheckUtils]: 77: Hoare triple {5962#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {5963#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0))))} is VALID [2018-11-23 12:19:13,266 INFO L273 TraceCheckUtils]: 78: Hoare triple {5963#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5964#(= |main_#t~mem4| 0)} is VALID [2018-11-23 12:19:13,267 INFO L256 TraceCheckUtils]: 79: Hoare triple {5964#(= |main_#t~mem4| 0)} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {5957#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:19:13,267 INFO L273 TraceCheckUtils]: 80: Hoare triple {5957#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {5965#(not (= __VERIFIER_assert_~cond 0))} is VALID [2018-11-23 12:19:13,268 INFO L273 TraceCheckUtils]: 81: Hoare triple {5965#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {5945#false} is VALID [2018-11-23 12:19:13,268 INFO L273 TraceCheckUtils]: 82: Hoare triple {5945#false} assume !false; {5945#false} is VALID [2018-11-23 12:19:13,280 INFO L134 CoverageAnalysis]: Checked inductivity of 214 backedges. 11 proven. 158 refuted. 0 times theorem prover too weak. 45 trivial. 0 not checked. [2018-11-23 12:19:13,281 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:19:13,281 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:19:13,289 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 12:19:13,316 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 12:19:13,317 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:19:13,334 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:19:13,335 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:19:13,560 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 10 [2018-11-23 12:19:13,564 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 10 treesize of output 9 [2018-11-23 12:19:13,565 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:13,567 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:13,572 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:13,572 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:17, output treesize:13 [2018-11-23 12:19:14,769 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 15 treesize of output 11 [2018-11-23 12:19:14,772 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 3 [2018-11-23 12:19:14,773 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:14,774 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:14,776 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:14,777 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:15, output treesize:3 [2018-11-23 12:19:14,779 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:19:14,779 WARN L384 uantifierElimination]: Input elimination task: ∃ [|#memory_int|, |main_~#a~0.base|]. (let ((.cse0 (select (select |#memory_int| |main_~#a~0.base|) 24))) (and (= .cse0 |main_#t~mem4|) (= 0 .cse0))) [2018-11-23 12:19:14,779 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (= 0 |main_#t~mem4|) [2018-11-23 12:19:14,848 INFO L256 TraceCheckUtils]: 0: Hoare triple {5944#true} call ULTIMATE.init(); {5944#true} is VALID [2018-11-23 12:19:14,848 INFO L273 TraceCheckUtils]: 1: Hoare triple {5944#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {5944#true} is VALID [2018-11-23 12:19:14,848 INFO L273 TraceCheckUtils]: 2: Hoare triple {5944#true} assume true; {5944#true} is VALID [2018-11-23 12:19:14,849 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5944#true} {5944#true} #61#return; {5944#true} is VALID [2018-11-23 12:19:14,849 INFO L256 TraceCheckUtils]: 4: Hoare triple {5944#true} call #t~ret5 := main(); {5944#true} is VALID [2018-11-23 12:19:14,849 INFO L273 TraceCheckUtils]: 5: Hoare triple {5944#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {5944#true} is VALID [2018-11-23 12:19:14,850 INFO L273 TraceCheckUtils]: 6: Hoare triple {5944#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {5987#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,851 INFO L273 TraceCheckUtils]: 7: Hoare triple {5987#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {5987#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,851 INFO L273 TraceCheckUtils]: 8: Hoare triple {5987#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5987#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,851 INFO L273 TraceCheckUtils]: 9: Hoare triple {5987#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {5997#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,852 INFO L273 TraceCheckUtils]: 10: Hoare triple {5997#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {5997#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,852 INFO L273 TraceCheckUtils]: 11: Hoare triple {5997#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5997#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,853 INFO L273 TraceCheckUtils]: 12: Hoare triple {5997#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6007#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,853 INFO L273 TraceCheckUtils]: 13: Hoare triple {6007#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {6007#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,854 INFO L273 TraceCheckUtils]: 14: Hoare triple {6007#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6007#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,855 INFO L273 TraceCheckUtils]: 15: Hoare triple {6007#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6017#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,855 INFO L273 TraceCheckUtils]: 16: Hoare triple {6017#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {6017#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,856 INFO L273 TraceCheckUtils]: 17: Hoare triple {6017#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6017#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,857 INFO L273 TraceCheckUtils]: 18: Hoare triple {6017#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6027#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,858 INFO L273 TraceCheckUtils]: 19: Hoare triple {6027#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {6027#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,858 INFO L273 TraceCheckUtils]: 20: Hoare triple {6027#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6027#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,859 INFO L273 TraceCheckUtils]: 21: Hoare triple {6027#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6037#(and (= main_~i~0 5) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,860 INFO L273 TraceCheckUtils]: 22: Hoare triple {6037#(and (= main_~i~0 5) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {6037#(and (= main_~i~0 5) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,861 INFO L273 TraceCheckUtils]: 23: Hoare triple {6037#(and (= main_~i~0 5) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6037#(and (= main_~i~0 5) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,861 INFO L273 TraceCheckUtils]: 24: Hoare triple {6037#(and (= main_~i~0 5) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6047#(and (= main_~i~0 6) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,862 INFO L273 TraceCheckUtils]: 25: Hoare triple {6047#(and (= main_~i~0 6) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {6047#(and (= main_~i~0 6) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,863 INFO L273 TraceCheckUtils]: 26: Hoare triple {6047#(and (= main_~i~0 6) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6054#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,864 INFO L273 TraceCheckUtils]: 27: Hoare triple {6054#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6054#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,865 INFO L273 TraceCheckUtils]: 28: Hoare triple {6054#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {6054#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,866 INFO L273 TraceCheckUtils]: 29: Hoare triple {6054#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {6064#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,866 INFO L273 TraceCheckUtils]: 30: Hoare triple {6064#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6064#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,868 INFO L256 TraceCheckUtils]: 31: Hoare triple {6064#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} is VALID [2018-11-23 12:19:14,868 INFO L273 TraceCheckUtils]: 32: Hoare triple {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} ~cond := #in~cond; {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} is VALID [2018-11-23 12:19:14,869 INFO L273 TraceCheckUtils]: 33: Hoare triple {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} assume !(0 == ~cond); {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} is VALID [2018-11-23 12:19:14,870 INFO L273 TraceCheckUtils]: 34: Hoare triple {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} assume true; {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} is VALID [2018-11-23 12:19:14,870 INFO L268 TraceCheckUtils]: 35: Hoare quadruple {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} {6064#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #65#return; {6064#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,871 INFO L273 TraceCheckUtils]: 36: Hoare triple {6064#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {6064#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,872 INFO L273 TraceCheckUtils]: 37: Hoare triple {6064#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {6090#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,873 INFO L273 TraceCheckUtils]: 38: Hoare triple {6090#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6090#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,874 INFO L256 TraceCheckUtils]: 39: Hoare triple {6090#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} is VALID [2018-11-23 12:19:14,875 INFO L273 TraceCheckUtils]: 40: Hoare triple {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} ~cond := #in~cond; {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} is VALID [2018-11-23 12:19:14,875 INFO L273 TraceCheckUtils]: 41: Hoare triple {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} assume !(0 == ~cond); {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} is VALID [2018-11-23 12:19:14,876 INFO L273 TraceCheckUtils]: 42: Hoare triple {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} assume true; {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} is VALID [2018-11-23 12:19:14,877 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} {6090#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} #65#return; {6090#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,878 INFO L273 TraceCheckUtils]: 44: Hoare triple {6090#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {6090#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,878 INFO L273 TraceCheckUtils]: 45: Hoare triple {6090#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {6115#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,879 INFO L273 TraceCheckUtils]: 46: Hoare triple {6115#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6115#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,881 INFO L256 TraceCheckUtils]: 47: Hoare triple {6115#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} is VALID [2018-11-23 12:19:14,881 INFO L273 TraceCheckUtils]: 48: Hoare triple {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} ~cond := #in~cond; {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} is VALID [2018-11-23 12:19:14,882 INFO L273 TraceCheckUtils]: 49: Hoare triple {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} assume !(0 == ~cond); {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} is VALID [2018-11-23 12:19:14,882 INFO L273 TraceCheckUtils]: 50: Hoare triple {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} assume true; {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} is VALID [2018-11-23 12:19:14,883 INFO L268 TraceCheckUtils]: 51: Hoare quadruple {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} {6115#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} #65#return; {6115#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,884 INFO L273 TraceCheckUtils]: 52: Hoare triple {6115#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {6115#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,885 INFO L273 TraceCheckUtils]: 53: Hoare triple {6115#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {6140#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,886 INFO L273 TraceCheckUtils]: 54: Hoare triple {6140#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6140#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,887 INFO L256 TraceCheckUtils]: 55: Hoare triple {6140#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} is VALID [2018-11-23 12:19:14,888 INFO L273 TraceCheckUtils]: 56: Hoare triple {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} ~cond := #in~cond; {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} is VALID [2018-11-23 12:19:14,888 INFO L273 TraceCheckUtils]: 57: Hoare triple {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} assume !(0 == ~cond); {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} is VALID [2018-11-23 12:19:14,889 INFO L273 TraceCheckUtils]: 58: Hoare triple {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} assume true; {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} is VALID [2018-11-23 12:19:14,890 INFO L268 TraceCheckUtils]: 59: Hoare quadruple {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} {6140#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} #65#return; {6140#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,891 INFO L273 TraceCheckUtils]: 60: Hoare triple {6140#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {6140#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,891 INFO L273 TraceCheckUtils]: 61: Hoare triple {6140#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {6165#(and (= main_~i~0 4) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,892 INFO L273 TraceCheckUtils]: 62: Hoare triple {6165#(and (= main_~i~0 4) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6165#(and (= main_~i~0 4) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,894 INFO L256 TraceCheckUtils]: 63: Hoare triple {6165#(and (= main_~i~0 4) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} is VALID [2018-11-23 12:19:14,894 INFO L273 TraceCheckUtils]: 64: Hoare triple {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} ~cond := #in~cond; {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} is VALID [2018-11-23 12:19:14,895 INFO L273 TraceCheckUtils]: 65: Hoare triple {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} assume !(0 == ~cond); {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} is VALID [2018-11-23 12:19:14,895 INFO L273 TraceCheckUtils]: 66: Hoare triple {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} assume true; {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} is VALID [2018-11-23 12:19:14,896 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} {6165#(and (= main_~i~0 4) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} #65#return; {6165#(and (= main_~i~0 4) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,897 INFO L273 TraceCheckUtils]: 68: Hoare triple {6165#(and (= main_~i~0 4) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {6165#(and (= main_~i~0 4) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,898 INFO L273 TraceCheckUtils]: 69: Hoare triple {6165#(and (= main_~i~0 4) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {6190#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,899 INFO L273 TraceCheckUtils]: 70: Hoare triple {6190#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6190#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,900 INFO L256 TraceCheckUtils]: 71: Hoare triple {6190#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} is VALID [2018-11-23 12:19:14,901 INFO L273 TraceCheckUtils]: 72: Hoare triple {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} ~cond := #in~cond; {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} is VALID [2018-11-23 12:19:14,901 INFO L273 TraceCheckUtils]: 73: Hoare triple {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} assume !(0 == ~cond); {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} is VALID [2018-11-23 12:19:14,902 INFO L273 TraceCheckUtils]: 74: Hoare triple {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} assume true; {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} is VALID [2018-11-23 12:19:14,903 INFO L268 TraceCheckUtils]: 75: Hoare quadruple {6071#(exists ((|v_main_~#a~0.base_BEFORE_CALL_16| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_16|) 24)))} {6190#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} #65#return; {6190#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,903 INFO L273 TraceCheckUtils]: 76: Hoare triple {6190#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {6190#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,904 INFO L273 TraceCheckUtils]: 77: Hoare triple {6190#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {6215#(and (= main_~i~0 6) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:14,905 INFO L273 TraceCheckUtils]: 78: Hoare triple {6215#(and (= main_~i~0 6) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 24))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5964#(= |main_#t~mem4| 0)} is VALID [2018-11-23 12:19:14,906 INFO L256 TraceCheckUtils]: 79: Hoare triple {5964#(= |main_#t~mem4| 0)} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {6222#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:19:14,907 INFO L273 TraceCheckUtils]: 80: Hoare triple {6222#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {6226#(= 1 __VERIFIER_assert_~cond)} is VALID [2018-11-23 12:19:14,907 INFO L273 TraceCheckUtils]: 81: Hoare triple {6226#(= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5945#false} is VALID [2018-11-23 12:19:14,908 INFO L273 TraceCheckUtils]: 82: Hoare triple {5945#false} assume !false; {5945#false} is VALID [2018-11-23 12:19:14,925 INFO L134 CoverageAnalysis]: Checked inductivity of 214 backedges. 0 proven. 154 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2018-11-23 12:19:14,946 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:19:14,946 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [22, 21] total 40 [2018-11-23 12:19:14,947 INFO L78 Accepts]: Start accepts. Automaton has 40 states. Word has length 83 [2018-11-23 12:19:14,947 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:19:14,948 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 40 states. [2018-11-23 12:19:15,106 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 132 edges. 132 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:19:15,106 INFO L459 AbstractCegarLoop]: Interpolant automaton has 40 states [2018-11-23 12:19:15,107 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 40 interpolants. [2018-11-23 12:19:15,108 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=136, Invalid=1424, Unknown=0, NotChecked=0, Total=1560 [2018-11-23 12:19:15,108 INFO L87 Difference]: Start difference. First operand 87 states and 89 transitions. Second operand 40 states. [2018-11-23 12:19:20,408 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:20,409 INFO L93 Difference]: Finished difference Result 101 states and 103 transitions. [2018-11-23 12:19:20,409 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 37 states. [2018-11-23 12:19:20,409 INFO L78 Accepts]: Start accepts. Automaton has 40 states. Word has length 83 [2018-11-23 12:19:20,410 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:19:20,410 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 40 states. [2018-11-23 12:19:20,412 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 85 transitions. [2018-11-23 12:19:20,412 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 40 states. [2018-11-23 12:19:20,414 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 85 transitions. [2018-11-23 12:19:20,414 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 37 states and 85 transitions. [2018-11-23 12:19:20,814 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 85 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:19:20,817 INFO L225 Difference]: With dead ends: 101 [2018-11-23 12:19:20,817 INFO L226 Difference]: Without dead ends: 99 [2018-11-23 12:19:20,819 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 126 GetRequests, 56 SyntacticMatches, 13 SemanticMatches, 57 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 949 ImplicationChecksByTransitivity, 2.8s TimeCoverageRelationStatistics Valid=285, Invalid=3137, Unknown=0, NotChecked=0, Total=3422 [2018-11-23 12:19:20,819 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 99 states. [2018-11-23 12:19:21,422 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 99 to 95. [2018-11-23 12:19:21,423 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:19:21,423 INFO L82 GeneralOperation]: Start isEquivalent. First operand 99 states. Second operand 95 states. [2018-11-23 12:19:21,423 INFO L74 IsIncluded]: Start isIncluded. First operand 99 states. Second operand 95 states. [2018-11-23 12:19:21,423 INFO L87 Difference]: Start difference. First operand 99 states. Second operand 95 states. [2018-11-23 12:19:21,428 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:21,428 INFO L93 Difference]: Finished difference Result 99 states and 101 transitions. [2018-11-23 12:19:21,428 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 101 transitions. [2018-11-23 12:19:21,429 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:19:21,429 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:19:21,429 INFO L74 IsIncluded]: Start isIncluded. First operand 95 states. Second operand 99 states. [2018-11-23 12:19:21,429 INFO L87 Difference]: Start difference. First operand 95 states. Second operand 99 states. [2018-11-23 12:19:21,431 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:21,432 INFO L93 Difference]: Finished difference Result 99 states and 101 transitions. [2018-11-23 12:19:21,432 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 101 transitions. [2018-11-23 12:19:21,432 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:19:21,432 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:19:21,433 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:19:21,433 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:19:21,433 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 95 states. [2018-11-23 12:19:21,435 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 95 states to 95 states and 97 transitions. [2018-11-23 12:19:21,435 INFO L78 Accepts]: Start accepts. Automaton has 95 states and 97 transitions. Word has length 83 [2018-11-23 12:19:21,435 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:19:21,436 INFO L480 AbstractCegarLoop]: Abstraction has 95 states and 97 transitions. [2018-11-23 12:19:21,436 INFO L481 AbstractCegarLoop]: Interpolant automaton has 40 states. [2018-11-23 12:19:21,436 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 97 transitions. [2018-11-23 12:19:21,437 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2018-11-23 12:19:21,437 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:19:21,437 INFO L402 BasicCegarLoop]: trace histogram [8, 8, 8, 7, 7, 7, 7, 7, 7, 7, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:19:21,437 INFO L423 AbstractCegarLoop]: === Iteration 15 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:19:21,438 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:19:21,438 INFO L82 PathProgramCache]: Analyzing trace with hash -584657156, now seen corresponding path program 11 times [2018-11-23 12:19:21,438 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:19:21,438 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:19:21,439 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:19:21,439 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:19:21,439 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:19:21,453 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:19:22,848 INFO L256 TraceCheckUtils]: 0: Hoare triple {6737#true} call ULTIMATE.init(); {6737#true} is VALID [2018-11-23 12:19:22,848 INFO L273 TraceCheckUtils]: 1: Hoare triple {6737#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {6737#true} is VALID [2018-11-23 12:19:22,848 INFO L273 TraceCheckUtils]: 2: Hoare triple {6737#true} assume true; {6737#true} is VALID [2018-11-23 12:19:22,849 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6737#true} {6737#true} #61#return; {6737#true} is VALID [2018-11-23 12:19:22,849 INFO L256 TraceCheckUtils]: 4: Hoare triple {6737#true} call #t~ret5 := main(); {6737#true} is VALID [2018-11-23 12:19:22,849 INFO L273 TraceCheckUtils]: 5: Hoare triple {6737#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {6737#true} is VALID [2018-11-23 12:19:22,850 INFO L273 TraceCheckUtils]: 6: Hoare triple {6737#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {6739#(= main_~i~0 0)} is VALID [2018-11-23 12:19:22,850 INFO L273 TraceCheckUtils]: 7: Hoare triple {6739#(= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0); {6739#(= main_~i~0 0)} is VALID [2018-11-23 12:19:22,850 INFO L273 TraceCheckUtils]: 8: Hoare triple {6739#(= main_~i~0 0)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6739#(= main_~i~0 0)} is VALID [2018-11-23 12:19:22,851 INFO L273 TraceCheckUtils]: 9: Hoare triple {6739#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6740#(<= main_~i~0 1)} is VALID [2018-11-23 12:19:22,851 INFO L273 TraceCheckUtils]: 10: Hoare triple {6740#(<= main_~i~0 1)} assume !!(~i~0 < ~SIZE~0); {6740#(<= main_~i~0 1)} is VALID [2018-11-23 12:19:22,851 INFO L273 TraceCheckUtils]: 11: Hoare triple {6740#(<= main_~i~0 1)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6740#(<= main_~i~0 1)} is VALID [2018-11-23 12:19:22,852 INFO L273 TraceCheckUtils]: 12: Hoare triple {6740#(<= main_~i~0 1)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6741#(<= main_~i~0 2)} is VALID [2018-11-23 12:19:22,853 INFO L273 TraceCheckUtils]: 13: Hoare triple {6741#(<= main_~i~0 2)} assume !!(~i~0 < ~SIZE~0); {6741#(<= main_~i~0 2)} is VALID [2018-11-23 12:19:22,853 INFO L273 TraceCheckUtils]: 14: Hoare triple {6741#(<= main_~i~0 2)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6741#(<= main_~i~0 2)} is VALID [2018-11-23 12:19:22,854 INFO L273 TraceCheckUtils]: 15: Hoare triple {6741#(<= main_~i~0 2)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6742#(<= main_~i~0 3)} is VALID [2018-11-23 12:19:22,854 INFO L273 TraceCheckUtils]: 16: Hoare triple {6742#(<= main_~i~0 3)} assume !!(~i~0 < ~SIZE~0); {6742#(<= main_~i~0 3)} is VALID [2018-11-23 12:19:22,855 INFO L273 TraceCheckUtils]: 17: Hoare triple {6742#(<= main_~i~0 3)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6742#(<= main_~i~0 3)} is VALID [2018-11-23 12:19:22,856 INFO L273 TraceCheckUtils]: 18: Hoare triple {6742#(<= main_~i~0 3)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6743#(<= main_~i~0 4)} is VALID [2018-11-23 12:19:22,856 INFO L273 TraceCheckUtils]: 19: Hoare triple {6743#(<= main_~i~0 4)} assume !!(~i~0 < ~SIZE~0); {6743#(<= main_~i~0 4)} is VALID [2018-11-23 12:19:22,857 INFO L273 TraceCheckUtils]: 20: Hoare triple {6743#(<= main_~i~0 4)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6743#(<= main_~i~0 4)} is VALID [2018-11-23 12:19:22,858 INFO L273 TraceCheckUtils]: 21: Hoare triple {6743#(<= main_~i~0 4)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6744#(<= main_~i~0 5)} is VALID [2018-11-23 12:19:22,858 INFO L273 TraceCheckUtils]: 22: Hoare triple {6744#(<= main_~i~0 5)} assume !!(~i~0 < ~SIZE~0); {6744#(<= main_~i~0 5)} is VALID [2018-11-23 12:19:22,859 INFO L273 TraceCheckUtils]: 23: Hoare triple {6744#(<= main_~i~0 5)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6744#(<= main_~i~0 5)} is VALID [2018-11-23 12:19:22,859 INFO L273 TraceCheckUtils]: 24: Hoare triple {6744#(<= main_~i~0 5)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6745#(<= main_~i~0 6)} is VALID [2018-11-23 12:19:22,860 INFO L273 TraceCheckUtils]: 25: Hoare triple {6745#(<= main_~i~0 6)} assume !!(~i~0 < ~SIZE~0); {6745#(<= main_~i~0 6)} is VALID [2018-11-23 12:19:22,860 INFO L273 TraceCheckUtils]: 26: Hoare triple {6745#(<= main_~i~0 6)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6745#(<= main_~i~0 6)} is VALID [2018-11-23 12:19:22,861 INFO L273 TraceCheckUtils]: 27: Hoare triple {6745#(<= main_~i~0 6)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6746#(<= main_~i~0 7)} is VALID [2018-11-23 12:19:22,862 INFO L273 TraceCheckUtils]: 28: Hoare triple {6746#(<= main_~i~0 7)} assume !(~i~0 < ~SIZE~0); {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:22,863 INFO L273 TraceCheckUtils]: 29: Hoare triple {6747#(<= ~SIZE~0 7)} ~i~0 := 0; {6748#(and (<= ~SIZE~0 7) (= main_~i~0 0))} is VALID [2018-11-23 12:19:22,863 INFO L273 TraceCheckUtils]: 30: Hoare triple {6748#(and (<= ~SIZE~0 7) (= main_~i~0 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6748#(and (<= ~SIZE~0 7) (= main_~i~0 0))} is VALID [2018-11-23 12:19:22,864 INFO L256 TraceCheckUtils]: 31: Hoare triple {6748#(and (<= ~SIZE~0 7) (= main_~i~0 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {6737#true} is VALID [2018-11-23 12:19:22,864 INFO L273 TraceCheckUtils]: 32: Hoare triple {6737#true} ~cond := #in~cond; {6737#true} is VALID [2018-11-23 12:19:22,864 INFO L273 TraceCheckUtils]: 33: Hoare triple {6737#true} assume !(0 == ~cond); {6737#true} is VALID [2018-11-23 12:19:22,864 INFO L273 TraceCheckUtils]: 34: Hoare triple {6737#true} assume true; {6737#true} is VALID [2018-11-23 12:19:22,866 INFO L268 TraceCheckUtils]: 35: Hoare quadruple {6737#true} {6748#(and (<= ~SIZE~0 7) (= main_~i~0 0))} #65#return; {6748#(and (<= ~SIZE~0 7) (= main_~i~0 0))} is VALID [2018-11-23 12:19:22,866 INFO L273 TraceCheckUtils]: 36: Hoare triple {6748#(and (<= ~SIZE~0 7) (= main_~i~0 0))} havoc #t~mem4; {6748#(and (<= ~SIZE~0 7) (= main_~i~0 0))} is VALID [2018-11-23 12:19:22,867 INFO L273 TraceCheckUtils]: 37: Hoare triple {6748#(and (<= ~SIZE~0 7) (= main_~i~0 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {6749#(<= ~SIZE~0 (+ main_~i~0 6))} is VALID [2018-11-23 12:19:22,867 INFO L273 TraceCheckUtils]: 38: Hoare triple {6749#(<= ~SIZE~0 (+ main_~i~0 6))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6749#(<= ~SIZE~0 (+ main_~i~0 6))} is VALID [2018-11-23 12:19:22,867 INFO L256 TraceCheckUtils]: 39: Hoare triple {6749#(<= ~SIZE~0 (+ main_~i~0 6))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {6737#true} is VALID [2018-11-23 12:19:22,868 INFO L273 TraceCheckUtils]: 40: Hoare triple {6737#true} ~cond := #in~cond; {6737#true} is VALID [2018-11-23 12:19:22,868 INFO L273 TraceCheckUtils]: 41: Hoare triple {6737#true} assume !(0 == ~cond); {6737#true} is VALID [2018-11-23 12:19:22,868 INFO L273 TraceCheckUtils]: 42: Hoare triple {6737#true} assume true; {6737#true} is VALID [2018-11-23 12:19:22,869 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {6737#true} {6749#(<= ~SIZE~0 (+ main_~i~0 6))} #65#return; {6749#(<= ~SIZE~0 (+ main_~i~0 6))} is VALID [2018-11-23 12:19:22,869 INFO L273 TraceCheckUtils]: 44: Hoare triple {6749#(<= ~SIZE~0 (+ main_~i~0 6))} havoc #t~mem4; {6749#(<= ~SIZE~0 (+ main_~i~0 6))} is VALID [2018-11-23 12:19:22,870 INFO L273 TraceCheckUtils]: 45: Hoare triple {6749#(<= ~SIZE~0 (+ main_~i~0 6))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {6750#(<= ~SIZE~0 (+ main_~i~0 5))} is VALID [2018-11-23 12:19:22,871 INFO L273 TraceCheckUtils]: 46: Hoare triple {6750#(<= ~SIZE~0 (+ main_~i~0 5))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6750#(<= ~SIZE~0 (+ main_~i~0 5))} is VALID [2018-11-23 12:19:22,871 INFO L256 TraceCheckUtils]: 47: Hoare triple {6750#(<= ~SIZE~0 (+ main_~i~0 5))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {6737#true} is VALID [2018-11-23 12:19:22,871 INFO L273 TraceCheckUtils]: 48: Hoare triple {6737#true} ~cond := #in~cond; {6737#true} is VALID [2018-11-23 12:19:22,871 INFO L273 TraceCheckUtils]: 49: Hoare triple {6737#true} assume !(0 == ~cond); {6737#true} is VALID [2018-11-23 12:19:22,872 INFO L273 TraceCheckUtils]: 50: Hoare triple {6737#true} assume true; {6737#true} is VALID [2018-11-23 12:19:22,872 INFO L268 TraceCheckUtils]: 51: Hoare quadruple {6737#true} {6750#(<= ~SIZE~0 (+ main_~i~0 5))} #65#return; {6750#(<= ~SIZE~0 (+ main_~i~0 5))} is VALID [2018-11-23 12:19:22,873 INFO L273 TraceCheckUtils]: 52: Hoare triple {6750#(<= ~SIZE~0 (+ main_~i~0 5))} havoc #t~mem4; {6750#(<= ~SIZE~0 (+ main_~i~0 5))} is VALID [2018-11-23 12:19:22,874 INFO L273 TraceCheckUtils]: 53: Hoare triple {6750#(<= ~SIZE~0 (+ main_~i~0 5))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {6751#(<= ~SIZE~0 (+ main_~i~0 4))} is VALID [2018-11-23 12:19:22,874 INFO L273 TraceCheckUtils]: 54: Hoare triple {6751#(<= ~SIZE~0 (+ main_~i~0 4))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6751#(<= ~SIZE~0 (+ main_~i~0 4))} is VALID [2018-11-23 12:19:22,875 INFO L256 TraceCheckUtils]: 55: Hoare triple {6751#(<= ~SIZE~0 (+ main_~i~0 4))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {6737#true} is VALID [2018-11-23 12:19:22,875 INFO L273 TraceCheckUtils]: 56: Hoare triple {6737#true} ~cond := #in~cond; {6737#true} is VALID [2018-11-23 12:19:22,875 INFO L273 TraceCheckUtils]: 57: Hoare triple {6737#true} assume !(0 == ~cond); {6737#true} is VALID [2018-11-23 12:19:22,875 INFO L273 TraceCheckUtils]: 58: Hoare triple {6737#true} assume true; {6737#true} is VALID [2018-11-23 12:19:22,876 INFO L268 TraceCheckUtils]: 59: Hoare quadruple {6737#true} {6751#(<= ~SIZE~0 (+ main_~i~0 4))} #65#return; {6751#(<= ~SIZE~0 (+ main_~i~0 4))} is VALID [2018-11-23 12:19:22,877 INFO L273 TraceCheckUtils]: 60: Hoare triple {6751#(<= ~SIZE~0 (+ main_~i~0 4))} havoc #t~mem4; {6751#(<= ~SIZE~0 (+ main_~i~0 4))} is VALID [2018-11-23 12:19:22,877 INFO L273 TraceCheckUtils]: 61: Hoare triple {6751#(<= ~SIZE~0 (+ main_~i~0 4))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {6752#(<= ~SIZE~0 (+ main_~i~0 3))} is VALID [2018-11-23 12:19:22,878 INFO L273 TraceCheckUtils]: 62: Hoare triple {6752#(<= ~SIZE~0 (+ main_~i~0 3))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6752#(<= ~SIZE~0 (+ main_~i~0 3))} is VALID [2018-11-23 12:19:22,878 INFO L256 TraceCheckUtils]: 63: Hoare triple {6752#(<= ~SIZE~0 (+ main_~i~0 3))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {6737#true} is VALID [2018-11-23 12:19:22,878 INFO L273 TraceCheckUtils]: 64: Hoare triple {6737#true} ~cond := #in~cond; {6737#true} is VALID [2018-11-23 12:19:22,879 INFO L273 TraceCheckUtils]: 65: Hoare triple {6737#true} assume !(0 == ~cond); {6737#true} is VALID [2018-11-23 12:19:22,879 INFO L273 TraceCheckUtils]: 66: Hoare triple {6737#true} assume true; {6737#true} is VALID [2018-11-23 12:19:22,880 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {6737#true} {6752#(<= ~SIZE~0 (+ main_~i~0 3))} #65#return; {6752#(<= ~SIZE~0 (+ main_~i~0 3))} is VALID [2018-11-23 12:19:22,880 INFO L273 TraceCheckUtils]: 68: Hoare triple {6752#(<= ~SIZE~0 (+ main_~i~0 3))} havoc #t~mem4; {6752#(<= ~SIZE~0 (+ main_~i~0 3))} is VALID [2018-11-23 12:19:22,881 INFO L273 TraceCheckUtils]: 69: Hoare triple {6752#(<= ~SIZE~0 (+ main_~i~0 3))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {6753#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:19:22,882 INFO L273 TraceCheckUtils]: 70: Hoare triple {6753#(<= ~SIZE~0 (+ main_~i~0 2))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6753#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:19:22,882 INFO L256 TraceCheckUtils]: 71: Hoare triple {6753#(<= ~SIZE~0 (+ main_~i~0 2))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {6737#true} is VALID [2018-11-23 12:19:22,882 INFO L273 TraceCheckUtils]: 72: Hoare triple {6737#true} ~cond := #in~cond; {6737#true} is VALID [2018-11-23 12:19:22,882 INFO L273 TraceCheckUtils]: 73: Hoare triple {6737#true} assume !(0 == ~cond); {6737#true} is VALID [2018-11-23 12:19:22,883 INFO L273 TraceCheckUtils]: 74: Hoare triple {6737#true} assume true; {6737#true} is VALID [2018-11-23 12:19:22,883 INFO L268 TraceCheckUtils]: 75: Hoare quadruple {6737#true} {6753#(<= ~SIZE~0 (+ main_~i~0 2))} #65#return; {6753#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:19:22,884 INFO L273 TraceCheckUtils]: 76: Hoare triple {6753#(<= ~SIZE~0 (+ main_~i~0 2))} havoc #t~mem4; {6753#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:19:22,885 INFO L273 TraceCheckUtils]: 77: Hoare triple {6753#(<= ~SIZE~0 (+ main_~i~0 2))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {6754#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:19:22,885 INFO L273 TraceCheckUtils]: 78: Hoare triple {6754#(<= ~SIZE~0 (+ main_~i~0 1))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6754#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:19:22,886 INFO L256 TraceCheckUtils]: 79: Hoare triple {6754#(<= ~SIZE~0 (+ main_~i~0 1))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {6737#true} is VALID [2018-11-23 12:19:22,886 INFO L273 TraceCheckUtils]: 80: Hoare triple {6737#true} ~cond := #in~cond; {6737#true} is VALID [2018-11-23 12:19:22,886 INFO L273 TraceCheckUtils]: 81: Hoare triple {6737#true} assume !(0 == ~cond); {6737#true} is VALID [2018-11-23 12:19:22,886 INFO L273 TraceCheckUtils]: 82: Hoare triple {6737#true} assume true; {6737#true} is VALID [2018-11-23 12:19:22,887 INFO L268 TraceCheckUtils]: 83: Hoare quadruple {6737#true} {6754#(<= ~SIZE~0 (+ main_~i~0 1))} #65#return; {6754#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:19:22,887 INFO L273 TraceCheckUtils]: 84: Hoare triple {6754#(<= ~SIZE~0 (+ main_~i~0 1))} havoc #t~mem4; {6754#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:19:22,888 INFO L273 TraceCheckUtils]: 85: Hoare triple {6754#(<= ~SIZE~0 (+ main_~i~0 1))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {6755#(<= ~SIZE~0 main_~i~0)} is VALID [2018-11-23 12:19:22,889 INFO L273 TraceCheckUtils]: 86: Hoare triple {6755#(<= ~SIZE~0 main_~i~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6738#false} is VALID [2018-11-23 12:19:22,889 INFO L256 TraceCheckUtils]: 87: Hoare triple {6738#false} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {6738#false} is VALID [2018-11-23 12:19:22,889 INFO L273 TraceCheckUtils]: 88: Hoare triple {6738#false} ~cond := #in~cond; {6738#false} is VALID [2018-11-23 12:19:22,890 INFO L273 TraceCheckUtils]: 89: Hoare triple {6738#false} assume 0 == ~cond; {6738#false} is VALID [2018-11-23 12:19:22,890 INFO L273 TraceCheckUtils]: 90: Hoare triple {6738#false} assume !false; {6738#false} is VALID [2018-11-23 12:19:22,898 INFO L134 CoverageAnalysis]: Checked inductivity of 266 backedges. 87 proven. 95 refuted. 0 times theorem prover too weak. 84 trivial. 0 not checked. [2018-11-23 12:19:22,898 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:19:22,898 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:19:22,907 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 12:19:22,962 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 8 check-sat command(s) [2018-11-23 12:19:22,963 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:19:22,978 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:19:22,980 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:19:23,966 INFO L256 TraceCheckUtils]: 0: Hoare triple {6737#true} call ULTIMATE.init(); {6737#true} is VALID [2018-11-23 12:19:23,967 INFO L273 TraceCheckUtils]: 1: Hoare triple {6737#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {6737#true} is VALID [2018-11-23 12:19:23,967 INFO L273 TraceCheckUtils]: 2: Hoare triple {6737#true} assume true; {6737#true} is VALID [2018-11-23 12:19:23,968 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6737#true} {6737#true} #61#return; {6737#true} is VALID [2018-11-23 12:19:23,968 INFO L256 TraceCheckUtils]: 4: Hoare triple {6737#true} call #t~ret5 := main(); {6737#true} is VALID [2018-11-23 12:19:23,968 INFO L273 TraceCheckUtils]: 5: Hoare triple {6737#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {6737#true} is VALID [2018-11-23 12:19:23,969 INFO L273 TraceCheckUtils]: 6: Hoare triple {6737#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {6777#(<= main_~i~0 0)} is VALID [2018-11-23 12:19:23,969 INFO L273 TraceCheckUtils]: 7: Hoare triple {6777#(<= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0); {6777#(<= main_~i~0 0)} is VALID [2018-11-23 12:19:23,969 INFO L273 TraceCheckUtils]: 8: Hoare triple {6777#(<= main_~i~0 0)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6777#(<= main_~i~0 0)} is VALID [2018-11-23 12:19:23,970 INFO L273 TraceCheckUtils]: 9: Hoare triple {6777#(<= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6740#(<= main_~i~0 1)} is VALID [2018-11-23 12:19:23,970 INFO L273 TraceCheckUtils]: 10: Hoare triple {6740#(<= main_~i~0 1)} assume !!(~i~0 < ~SIZE~0); {6740#(<= main_~i~0 1)} is VALID [2018-11-23 12:19:23,971 INFO L273 TraceCheckUtils]: 11: Hoare triple {6740#(<= main_~i~0 1)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6740#(<= main_~i~0 1)} is VALID [2018-11-23 12:19:23,971 INFO L273 TraceCheckUtils]: 12: Hoare triple {6740#(<= main_~i~0 1)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6741#(<= main_~i~0 2)} is VALID [2018-11-23 12:19:23,972 INFO L273 TraceCheckUtils]: 13: Hoare triple {6741#(<= main_~i~0 2)} assume !!(~i~0 < ~SIZE~0); {6741#(<= main_~i~0 2)} is VALID [2018-11-23 12:19:23,972 INFO L273 TraceCheckUtils]: 14: Hoare triple {6741#(<= main_~i~0 2)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6741#(<= main_~i~0 2)} is VALID [2018-11-23 12:19:23,973 INFO L273 TraceCheckUtils]: 15: Hoare triple {6741#(<= main_~i~0 2)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6742#(<= main_~i~0 3)} is VALID [2018-11-23 12:19:23,974 INFO L273 TraceCheckUtils]: 16: Hoare triple {6742#(<= main_~i~0 3)} assume !!(~i~0 < ~SIZE~0); {6742#(<= main_~i~0 3)} is VALID [2018-11-23 12:19:23,974 INFO L273 TraceCheckUtils]: 17: Hoare triple {6742#(<= main_~i~0 3)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6742#(<= main_~i~0 3)} is VALID [2018-11-23 12:19:23,975 INFO L273 TraceCheckUtils]: 18: Hoare triple {6742#(<= main_~i~0 3)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6743#(<= main_~i~0 4)} is VALID [2018-11-23 12:19:23,976 INFO L273 TraceCheckUtils]: 19: Hoare triple {6743#(<= main_~i~0 4)} assume !!(~i~0 < ~SIZE~0); {6743#(<= main_~i~0 4)} is VALID [2018-11-23 12:19:23,976 INFO L273 TraceCheckUtils]: 20: Hoare triple {6743#(<= main_~i~0 4)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6743#(<= main_~i~0 4)} is VALID [2018-11-23 12:19:23,977 INFO L273 TraceCheckUtils]: 21: Hoare triple {6743#(<= main_~i~0 4)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6744#(<= main_~i~0 5)} is VALID [2018-11-23 12:19:23,977 INFO L273 TraceCheckUtils]: 22: Hoare triple {6744#(<= main_~i~0 5)} assume !!(~i~0 < ~SIZE~0); {6744#(<= main_~i~0 5)} is VALID [2018-11-23 12:19:23,978 INFO L273 TraceCheckUtils]: 23: Hoare triple {6744#(<= main_~i~0 5)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6744#(<= main_~i~0 5)} is VALID [2018-11-23 12:19:23,979 INFO L273 TraceCheckUtils]: 24: Hoare triple {6744#(<= main_~i~0 5)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6745#(<= main_~i~0 6)} is VALID [2018-11-23 12:19:23,979 INFO L273 TraceCheckUtils]: 25: Hoare triple {6745#(<= main_~i~0 6)} assume !!(~i~0 < ~SIZE~0); {6745#(<= main_~i~0 6)} is VALID [2018-11-23 12:19:23,980 INFO L273 TraceCheckUtils]: 26: Hoare triple {6745#(<= main_~i~0 6)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6745#(<= main_~i~0 6)} is VALID [2018-11-23 12:19:23,981 INFO L273 TraceCheckUtils]: 27: Hoare triple {6745#(<= main_~i~0 6)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {6746#(<= main_~i~0 7)} is VALID [2018-11-23 12:19:23,981 INFO L273 TraceCheckUtils]: 28: Hoare triple {6746#(<= main_~i~0 7)} assume !(~i~0 < ~SIZE~0); {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:23,982 INFO L273 TraceCheckUtils]: 29: Hoare triple {6747#(<= ~SIZE~0 7)} ~i~0 := 0; {6847#(and (<= 0 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:23,983 INFO L273 TraceCheckUtils]: 30: Hoare triple {6847#(and (<= 0 main_~i~0) (<= ~SIZE~0 7))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6847#(and (<= 0 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:23,984 INFO L256 TraceCheckUtils]: 31: Hoare triple {6847#(and (<= 0 main_~i~0) (<= ~SIZE~0 7))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:23,984 INFO L273 TraceCheckUtils]: 32: Hoare triple {6747#(<= ~SIZE~0 7)} ~cond := #in~cond; {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:23,985 INFO L273 TraceCheckUtils]: 33: Hoare triple {6747#(<= ~SIZE~0 7)} assume !(0 == ~cond); {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:23,985 INFO L273 TraceCheckUtils]: 34: Hoare triple {6747#(<= ~SIZE~0 7)} assume true; {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:23,986 INFO L268 TraceCheckUtils]: 35: Hoare quadruple {6747#(<= ~SIZE~0 7)} {6847#(and (<= 0 main_~i~0) (<= ~SIZE~0 7))} #65#return; {6847#(and (<= 0 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:23,987 INFO L273 TraceCheckUtils]: 36: Hoare triple {6847#(and (<= 0 main_~i~0) (<= ~SIZE~0 7))} havoc #t~mem4; {6847#(and (<= 0 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:23,988 INFO L273 TraceCheckUtils]: 37: Hoare triple {6847#(and (<= 0 main_~i~0) (<= ~SIZE~0 7))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {6872#(and (<= 1 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:23,988 INFO L273 TraceCheckUtils]: 38: Hoare triple {6872#(and (<= 1 main_~i~0) (<= ~SIZE~0 7))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6872#(and (<= 1 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:23,989 INFO L256 TraceCheckUtils]: 39: Hoare triple {6872#(and (<= 1 main_~i~0) (<= ~SIZE~0 7))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:23,990 INFO L273 TraceCheckUtils]: 40: Hoare triple {6747#(<= ~SIZE~0 7)} ~cond := #in~cond; {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:23,990 INFO L273 TraceCheckUtils]: 41: Hoare triple {6747#(<= ~SIZE~0 7)} assume !(0 == ~cond); {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:23,991 INFO L273 TraceCheckUtils]: 42: Hoare triple {6747#(<= ~SIZE~0 7)} assume true; {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:23,992 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {6747#(<= ~SIZE~0 7)} {6872#(and (<= 1 main_~i~0) (<= ~SIZE~0 7))} #65#return; {6872#(and (<= 1 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:23,993 INFO L273 TraceCheckUtils]: 44: Hoare triple {6872#(and (<= 1 main_~i~0) (<= ~SIZE~0 7))} havoc #t~mem4; {6872#(and (<= 1 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:23,993 INFO L273 TraceCheckUtils]: 45: Hoare triple {6872#(and (<= 1 main_~i~0) (<= ~SIZE~0 7))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {6897#(and (<= 2 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:23,994 INFO L273 TraceCheckUtils]: 46: Hoare triple {6897#(and (<= 2 main_~i~0) (<= ~SIZE~0 7))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6897#(and (<= 2 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:23,995 INFO L256 TraceCheckUtils]: 47: Hoare triple {6897#(and (<= 2 main_~i~0) (<= ~SIZE~0 7))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:23,996 INFO L273 TraceCheckUtils]: 48: Hoare triple {6747#(<= ~SIZE~0 7)} ~cond := #in~cond; {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:23,996 INFO L273 TraceCheckUtils]: 49: Hoare triple {6747#(<= ~SIZE~0 7)} assume !(0 == ~cond); {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:23,997 INFO L273 TraceCheckUtils]: 50: Hoare triple {6747#(<= ~SIZE~0 7)} assume true; {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:23,997 INFO L268 TraceCheckUtils]: 51: Hoare quadruple {6747#(<= ~SIZE~0 7)} {6897#(and (<= 2 main_~i~0) (<= ~SIZE~0 7))} #65#return; {6897#(and (<= 2 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:23,998 INFO L273 TraceCheckUtils]: 52: Hoare triple {6897#(and (<= 2 main_~i~0) (<= ~SIZE~0 7))} havoc #t~mem4; {6897#(and (<= 2 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:23,999 INFO L273 TraceCheckUtils]: 53: Hoare triple {6897#(and (<= 2 main_~i~0) (<= ~SIZE~0 7))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {6922#(and (<= 3 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:24,000 INFO L273 TraceCheckUtils]: 54: Hoare triple {6922#(and (<= 3 main_~i~0) (<= ~SIZE~0 7))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6922#(and (<= 3 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:24,001 INFO L256 TraceCheckUtils]: 55: Hoare triple {6922#(and (<= 3 main_~i~0) (<= ~SIZE~0 7))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:24,001 INFO L273 TraceCheckUtils]: 56: Hoare triple {6747#(<= ~SIZE~0 7)} ~cond := #in~cond; {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:24,002 INFO L273 TraceCheckUtils]: 57: Hoare triple {6747#(<= ~SIZE~0 7)} assume !(0 == ~cond); {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:24,002 INFO L273 TraceCheckUtils]: 58: Hoare triple {6747#(<= ~SIZE~0 7)} assume true; {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:24,003 INFO L268 TraceCheckUtils]: 59: Hoare quadruple {6747#(<= ~SIZE~0 7)} {6922#(and (<= 3 main_~i~0) (<= ~SIZE~0 7))} #65#return; {6922#(and (<= 3 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:24,004 INFO L273 TraceCheckUtils]: 60: Hoare triple {6922#(and (<= 3 main_~i~0) (<= ~SIZE~0 7))} havoc #t~mem4; {6922#(and (<= 3 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:24,005 INFO L273 TraceCheckUtils]: 61: Hoare triple {6922#(and (<= 3 main_~i~0) (<= ~SIZE~0 7))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {6947#(and (<= 4 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:24,006 INFO L273 TraceCheckUtils]: 62: Hoare triple {6947#(and (<= 4 main_~i~0) (<= ~SIZE~0 7))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6947#(and (<= 4 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:24,026 INFO L256 TraceCheckUtils]: 63: Hoare triple {6947#(and (<= 4 main_~i~0) (<= ~SIZE~0 7))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:24,026 INFO L273 TraceCheckUtils]: 64: Hoare triple {6747#(<= ~SIZE~0 7)} ~cond := #in~cond; {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:24,026 INFO L273 TraceCheckUtils]: 65: Hoare triple {6747#(<= ~SIZE~0 7)} assume !(0 == ~cond); {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:24,027 INFO L273 TraceCheckUtils]: 66: Hoare triple {6747#(<= ~SIZE~0 7)} assume true; {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:24,027 INFO L268 TraceCheckUtils]: 67: Hoare quadruple {6747#(<= ~SIZE~0 7)} {6947#(and (<= 4 main_~i~0) (<= ~SIZE~0 7))} #65#return; {6947#(and (<= 4 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:24,028 INFO L273 TraceCheckUtils]: 68: Hoare triple {6947#(and (<= 4 main_~i~0) (<= ~SIZE~0 7))} havoc #t~mem4; {6947#(and (<= 4 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:24,028 INFO L273 TraceCheckUtils]: 69: Hoare triple {6947#(and (<= 4 main_~i~0) (<= ~SIZE~0 7))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {6972#(and (<= 5 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:24,029 INFO L273 TraceCheckUtils]: 70: Hoare triple {6972#(and (<= 5 main_~i~0) (<= ~SIZE~0 7))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6972#(and (<= 5 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:24,029 INFO L256 TraceCheckUtils]: 71: Hoare triple {6972#(and (<= 5 main_~i~0) (<= ~SIZE~0 7))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:24,030 INFO L273 TraceCheckUtils]: 72: Hoare triple {6747#(<= ~SIZE~0 7)} ~cond := #in~cond; {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:24,030 INFO L273 TraceCheckUtils]: 73: Hoare triple {6747#(<= ~SIZE~0 7)} assume !(0 == ~cond); {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:24,031 INFO L273 TraceCheckUtils]: 74: Hoare triple {6747#(<= ~SIZE~0 7)} assume true; {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:24,032 INFO L268 TraceCheckUtils]: 75: Hoare quadruple {6747#(<= ~SIZE~0 7)} {6972#(and (<= 5 main_~i~0) (<= ~SIZE~0 7))} #65#return; {6972#(and (<= 5 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:24,032 INFO L273 TraceCheckUtils]: 76: Hoare triple {6972#(and (<= 5 main_~i~0) (<= ~SIZE~0 7))} havoc #t~mem4; {6972#(and (<= 5 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:24,033 INFO L273 TraceCheckUtils]: 77: Hoare triple {6972#(and (<= 5 main_~i~0) (<= ~SIZE~0 7))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {6997#(and (<= 6 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:24,034 INFO L273 TraceCheckUtils]: 78: Hoare triple {6997#(and (<= 6 main_~i~0) (<= ~SIZE~0 7))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6997#(and (<= 6 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:24,035 INFO L256 TraceCheckUtils]: 79: Hoare triple {6997#(and (<= 6 main_~i~0) (<= ~SIZE~0 7))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:24,036 INFO L273 TraceCheckUtils]: 80: Hoare triple {6747#(<= ~SIZE~0 7)} ~cond := #in~cond; {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:24,036 INFO L273 TraceCheckUtils]: 81: Hoare triple {6747#(<= ~SIZE~0 7)} assume !(0 == ~cond); {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:24,037 INFO L273 TraceCheckUtils]: 82: Hoare triple {6747#(<= ~SIZE~0 7)} assume true; {6747#(<= ~SIZE~0 7)} is VALID [2018-11-23 12:19:24,038 INFO L268 TraceCheckUtils]: 83: Hoare quadruple {6747#(<= ~SIZE~0 7)} {6997#(and (<= 6 main_~i~0) (<= ~SIZE~0 7))} #65#return; {6997#(and (<= 6 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:24,038 INFO L273 TraceCheckUtils]: 84: Hoare triple {6997#(and (<= 6 main_~i~0) (<= ~SIZE~0 7))} havoc #t~mem4; {6997#(and (<= 6 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:24,039 INFO L273 TraceCheckUtils]: 85: Hoare triple {6997#(and (<= 6 main_~i~0) (<= ~SIZE~0 7))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {7022#(and (<= 7 main_~i~0) (<= ~SIZE~0 7))} is VALID [2018-11-23 12:19:24,040 INFO L273 TraceCheckUtils]: 86: Hoare triple {7022#(and (<= 7 main_~i~0) (<= ~SIZE~0 7))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6738#false} is VALID [2018-11-23 12:19:24,040 INFO L256 TraceCheckUtils]: 87: Hoare triple {6738#false} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {6738#false} is VALID [2018-11-23 12:19:24,040 INFO L273 TraceCheckUtils]: 88: Hoare triple {6738#false} ~cond := #in~cond; {6738#false} is VALID [2018-11-23 12:19:24,041 INFO L273 TraceCheckUtils]: 89: Hoare triple {6738#false} assume 0 == ~cond; {6738#false} is VALID [2018-11-23 12:19:24,041 INFO L273 TraceCheckUtils]: 90: Hoare triple {6738#false} assume !false; {6738#false} is VALID [2018-11-23 12:19:24,049 INFO L134 CoverageAnalysis]: Checked inductivity of 266 backedges. 112 proven. 70 refuted. 0 times theorem prover too weak. 84 trivial. 0 not checked. [2018-11-23 12:19:24,069 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:19:24,069 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 19] total 28 [2018-11-23 12:19:24,069 INFO L78 Accepts]: Start accepts. Automaton has 28 states. Word has length 91 [2018-11-23 12:19:24,070 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:19:24,070 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 28 states. [2018-11-23 12:19:24,773 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 117 edges. 117 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:19:24,773 INFO L459 AbstractCegarLoop]: Interpolant automaton has 28 states [2018-11-23 12:19:24,773 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2018-11-23 12:19:24,774 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=185, Invalid=571, Unknown=0, NotChecked=0, Total=756 [2018-11-23 12:19:24,774 INFO L87 Difference]: Start difference. First operand 95 states and 97 transitions. Second operand 28 states. [2018-11-23 12:19:26,842 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:26,842 INFO L93 Difference]: Finished difference Result 231 states and 238 transitions. [2018-11-23 12:19:26,843 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2018-11-23 12:19:26,843 INFO L78 Accepts]: Start accepts. Automaton has 28 states. Word has length 91 [2018-11-23 12:19:26,843 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:19:26,843 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 28 states. [2018-11-23 12:19:26,848 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 145 transitions. [2018-11-23 12:19:26,849 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 28 states. [2018-11-23 12:19:26,852 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 145 transitions. [2018-11-23 12:19:26,853 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 21 states and 145 transitions. [2018-11-23 12:19:27,385 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 145 edges. 145 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:19:27,388 INFO L225 Difference]: With dead ends: 231 [2018-11-23 12:19:27,389 INFO L226 Difference]: Without dead ends: 105 [2018-11-23 12:19:27,390 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 117 GetRequests, 83 SyntacticMatches, 0 SemanticMatches, 34 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 290 ImplicationChecksByTransitivity, 1.6s TimeCoverageRelationStatistics Valid=309, Invalid=951, Unknown=0, NotChecked=0, Total=1260 [2018-11-23 12:19:27,390 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 105 states. [2018-11-23 12:19:27,801 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 105 to 98. [2018-11-23 12:19:27,802 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:19:27,802 INFO L82 GeneralOperation]: Start isEquivalent. First operand 105 states. Second operand 98 states. [2018-11-23 12:19:27,802 INFO L74 IsIncluded]: Start isIncluded. First operand 105 states. Second operand 98 states. [2018-11-23 12:19:27,802 INFO L87 Difference]: Start difference. First operand 105 states. Second operand 98 states. [2018-11-23 12:19:27,807 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:27,808 INFO L93 Difference]: Finished difference Result 105 states and 108 transitions. [2018-11-23 12:19:27,808 INFO L276 IsEmpty]: Start isEmpty. Operand 105 states and 108 transitions. [2018-11-23 12:19:27,808 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:19:27,808 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:19:27,809 INFO L74 IsIncluded]: Start isIncluded. First operand 98 states. Second operand 105 states. [2018-11-23 12:19:27,809 INFO L87 Difference]: Start difference. First operand 98 states. Second operand 105 states. [2018-11-23 12:19:27,813 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:19:27,813 INFO L93 Difference]: Finished difference Result 105 states and 108 transitions. [2018-11-23 12:19:27,813 INFO L276 IsEmpty]: Start isEmpty. Operand 105 states and 108 transitions. [2018-11-23 12:19:27,814 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:19:27,814 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:19:27,814 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:19:27,814 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:19:27,814 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 98 states. [2018-11-23 12:19:27,817 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 98 states to 98 states and 100 transitions. [2018-11-23 12:19:27,818 INFO L78 Accepts]: Start accepts. Automaton has 98 states and 100 transitions. Word has length 91 [2018-11-23 12:19:27,818 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:19:27,818 INFO L480 AbstractCegarLoop]: Abstraction has 98 states and 100 transitions. [2018-11-23 12:19:27,818 INFO L481 AbstractCegarLoop]: Interpolant automaton has 28 states. [2018-11-23 12:19:27,818 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 100 transitions. [2018-11-23 12:19:27,819 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 95 [2018-11-23 12:19:27,819 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:19:27,820 INFO L402 BasicCegarLoop]: trace histogram [8, 8, 8, 8, 8, 8, 7, 7, 7, 7, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:19:27,820 INFO L423 AbstractCegarLoop]: === Iteration 16 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:19:27,820 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:19:27,820 INFO L82 PathProgramCache]: Analyzing trace with hash -1796891282, now seen corresponding path program 12 times [2018-11-23 12:19:27,820 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:19:27,821 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:19:27,821 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:19:27,822 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:19:27,822 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:19:27,843 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:19:28,849 INFO L256 TraceCheckUtils]: 0: Hoare triple {7715#true} call ULTIMATE.init(); {7715#true} is VALID [2018-11-23 12:19:28,850 INFO L273 TraceCheckUtils]: 1: Hoare triple {7715#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {7715#true} is VALID [2018-11-23 12:19:28,850 INFO L273 TraceCheckUtils]: 2: Hoare triple {7715#true} assume true; {7715#true} is VALID [2018-11-23 12:19:28,850 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {7715#true} {7715#true} #61#return; {7715#true} is VALID [2018-11-23 12:19:28,850 INFO L256 TraceCheckUtils]: 4: Hoare triple {7715#true} call #t~ret5 := main(); {7715#true} is VALID [2018-11-23 12:19:28,850 INFO L273 TraceCheckUtils]: 5: Hoare triple {7715#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {7715#true} is VALID [2018-11-23 12:19:28,851 INFO L273 TraceCheckUtils]: 6: Hoare triple {7715#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {7717#(= main_~i~0 0)} is VALID [2018-11-23 12:19:28,851 INFO L273 TraceCheckUtils]: 7: Hoare triple {7717#(= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0); {7717#(= main_~i~0 0)} is VALID [2018-11-23 12:19:28,851 INFO L273 TraceCheckUtils]: 8: Hoare triple {7717#(= main_~i~0 0)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7717#(= main_~i~0 0)} is VALID [2018-11-23 12:19:28,852 INFO L273 TraceCheckUtils]: 9: Hoare triple {7717#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7718#(and (<= 1 main_~i~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:19:28,852 INFO L273 TraceCheckUtils]: 10: Hoare triple {7718#(and (<= 1 main_~i~0) (<= main_~i~0 1))} assume !!(~i~0 < ~SIZE~0); {7718#(and (<= 1 main_~i~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:19:28,853 INFO L273 TraceCheckUtils]: 11: Hoare triple {7718#(and (<= 1 main_~i~0) (<= main_~i~0 1))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7718#(and (<= 1 main_~i~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:19:28,853 INFO L273 TraceCheckUtils]: 12: Hoare triple {7718#(and (<= 1 main_~i~0) (<= main_~i~0 1))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7719#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:19:28,854 INFO L273 TraceCheckUtils]: 13: Hoare triple {7719#(and (<= 2 main_~i~0) (<= main_~i~0 2))} assume !!(~i~0 < ~SIZE~0); {7719#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:19:28,854 INFO L273 TraceCheckUtils]: 14: Hoare triple {7719#(and (<= 2 main_~i~0) (<= main_~i~0 2))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7719#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:19:28,855 INFO L273 TraceCheckUtils]: 15: Hoare triple {7719#(and (<= 2 main_~i~0) (<= main_~i~0 2))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7720#(and (<= main_~i~0 3) (<= 3 main_~i~0))} is VALID [2018-11-23 12:19:28,856 INFO L273 TraceCheckUtils]: 16: Hoare triple {7720#(and (<= main_~i~0 3) (<= 3 main_~i~0))} assume !!(~i~0 < ~SIZE~0); {7720#(and (<= main_~i~0 3) (<= 3 main_~i~0))} is VALID [2018-11-23 12:19:28,857 INFO L273 TraceCheckUtils]: 17: Hoare triple {7720#(and (<= main_~i~0 3) (<= 3 main_~i~0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7720#(and (<= main_~i~0 3) (<= 3 main_~i~0))} is VALID [2018-11-23 12:19:28,857 INFO L273 TraceCheckUtils]: 18: Hoare triple {7720#(and (<= main_~i~0 3) (<= 3 main_~i~0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7721#(and (<= 4 main_~i~0) (<= main_~i~0 4))} is VALID [2018-11-23 12:19:28,858 INFO L273 TraceCheckUtils]: 19: Hoare triple {7721#(and (<= 4 main_~i~0) (<= main_~i~0 4))} assume !!(~i~0 < ~SIZE~0); {7721#(and (<= 4 main_~i~0) (<= main_~i~0 4))} is VALID [2018-11-23 12:19:28,859 INFO L273 TraceCheckUtils]: 20: Hoare triple {7721#(and (<= 4 main_~i~0) (<= main_~i~0 4))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7721#(and (<= 4 main_~i~0) (<= main_~i~0 4))} is VALID [2018-11-23 12:19:28,860 INFO L273 TraceCheckUtils]: 21: Hoare triple {7721#(and (<= 4 main_~i~0) (<= main_~i~0 4))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7722#(and (<= 5 main_~i~0) (<= main_~i~0 5))} is VALID [2018-11-23 12:19:28,860 INFO L273 TraceCheckUtils]: 22: Hoare triple {7722#(and (<= 5 main_~i~0) (<= main_~i~0 5))} assume !!(~i~0 < ~SIZE~0); {7722#(and (<= 5 main_~i~0) (<= main_~i~0 5))} is VALID [2018-11-23 12:19:28,861 INFO L273 TraceCheckUtils]: 23: Hoare triple {7722#(and (<= 5 main_~i~0) (<= main_~i~0 5))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7722#(and (<= 5 main_~i~0) (<= main_~i~0 5))} is VALID [2018-11-23 12:19:28,862 INFO L273 TraceCheckUtils]: 24: Hoare triple {7722#(and (<= 5 main_~i~0) (<= main_~i~0 5))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7723#(and (<= 6 main_~i~0) (<= main_~i~0 6))} is VALID [2018-11-23 12:19:28,863 INFO L273 TraceCheckUtils]: 25: Hoare triple {7723#(and (<= 6 main_~i~0) (<= main_~i~0 6))} assume !!(~i~0 < ~SIZE~0); {7723#(and (<= 6 main_~i~0) (<= main_~i~0 6))} is VALID [2018-11-23 12:19:28,864 INFO L273 TraceCheckUtils]: 26: Hoare triple {7723#(and (<= 6 main_~i~0) (<= main_~i~0 6))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7723#(and (<= 6 main_~i~0) (<= main_~i~0 6))} is VALID [2018-11-23 12:19:28,865 INFO L273 TraceCheckUtils]: 27: Hoare triple {7723#(and (<= 6 main_~i~0) (<= main_~i~0 6))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7724#(and (<= 7 main_~i~0) (<= main_~i~0 7))} is VALID [2018-11-23 12:19:28,865 INFO L273 TraceCheckUtils]: 28: Hoare triple {7724#(and (<= 7 main_~i~0) (<= main_~i~0 7))} assume !!(~i~0 < ~SIZE~0); {7724#(and (<= 7 main_~i~0) (<= main_~i~0 7))} is VALID [2018-11-23 12:19:28,866 INFO L273 TraceCheckUtils]: 29: Hoare triple {7724#(and (<= 7 main_~i~0) (<= main_~i~0 7))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7725#(and (<= 7 main_~i~0) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0)))) (<= main_~i~0 7))} is VALID [2018-11-23 12:19:28,867 INFO L273 TraceCheckUtils]: 30: Hoare triple {7725#(and (<= 7 main_~i~0) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0)))) (<= main_~i~0 7))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7726#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 7))))} is VALID [2018-11-23 12:19:28,868 INFO L273 TraceCheckUtils]: 31: Hoare triple {7726#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 7))))} assume !(~i~0 < ~SIZE~0); {7726#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 7))))} is VALID [2018-11-23 12:19:28,869 INFO L273 TraceCheckUtils]: 32: Hoare triple {7726#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 7))))} ~i~0 := 0; {7727#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 7)))) (= main_~i~0 0))} is VALID [2018-11-23 12:19:28,870 INFO L273 TraceCheckUtils]: 33: Hoare triple {7727#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 7)))) (= main_~i~0 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7727#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 7)))) (= main_~i~0 0))} is VALID [2018-11-23 12:19:28,870 INFO L256 TraceCheckUtils]: 34: Hoare triple {7727#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 7)))) (= main_~i~0 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {7715#true} is VALID [2018-11-23 12:19:28,870 INFO L273 TraceCheckUtils]: 35: Hoare triple {7715#true} ~cond := #in~cond; {7728#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} is VALID [2018-11-23 12:19:28,871 INFO L273 TraceCheckUtils]: 36: Hoare triple {7728#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} assume !(0 == ~cond); {7729#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:19:28,872 INFO L273 TraceCheckUtils]: 37: Hoare triple {7729#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {7729#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:19:28,873 INFO L268 TraceCheckUtils]: 38: Hoare quadruple {7729#(not (= |__VERIFIER_assert_#in~cond| 0))} {7727#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 7)))) (= main_~i~0 0))} #65#return; {7727#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 7)))) (= main_~i~0 0))} is VALID [2018-11-23 12:19:28,874 INFO L273 TraceCheckUtils]: 39: Hoare triple {7727#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 7)))) (= main_~i~0 0))} havoc #t~mem4; {7727#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 7)))) (= main_~i~0 0))} is VALID [2018-11-23 12:19:28,875 INFO L273 TraceCheckUtils]: 40: Hoare triple {7727#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 7)))) (= main_~i~0 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {7730#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 6)))))} is VALID [2018-11-23 12:19:28,875 INFO L273 TraceCheckUtils]: 41: Hoare triple {7730#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 6)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7730#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 6)))))} is VALID [2018-11-23 12:19:28,875 INFO L256 TraceCheckUtils]: 42: Hoare triple {7730#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 6)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {7715#true} is VALID [2018-11-23 12:19:28,876 INFO L273 TraceCheckUtils]: 43: Hoare triple {7715#true} ~cond := #in~cond; {7715#true} is VALID [2018-11-23 12:19:28,876 INFO L273 TraceCheckUtils]: 44: Hoare triple {7715#true} assume !(0 == ~cond); {7715#true} is VALID [2018-11-23 12:19:28,876 INFO L273 TraceCheckUtils]: 45: Hoare triple {7715#true} assume true; {7715#true} is VALID [2018-11-23 12:19:28,877 INFO L268 TraceCheckUtils]: 46: Hoare quadruple {7715#true} {7730#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 6)))))} #65#return; {7730#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 6)))))} is VALID [2018-11-23 12:19:28,878 INFO L273 TraceCheckUtils]: 47: Hoare triple {7730#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 6)))))} havoc #t~mem4; {7730#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 6)))))} is VALID [2018-11-23 12:19:28,879 INFO L273 TraceCheckUtils]: 48: Hoare triple {7730#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 6)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {7731#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} is VALID [2018-11-23 12:19:28,880 INFO L273 TraceCheckUtils]: 49: Hoare triple {7731#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7731#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} is VALID [2018-11-23 12:19:28,880 INFO L256 TraceCheckUtils]: 50: Hoare triple {7731#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {7715#true} is VALID [2018-11-23 12:19:28,880 INFO L273 TraceCheckUtils]: 51: Hoare triple {7715#true} ~cond := #in~cond; {7715#true} is VALID [2018-11-23 12:19:28,880 INFO L273 TraceCheckUtils]: 52: Hoare triple {7715#true} assume !(0 == ~cond); {7715#true} is VALID [2018-11-23 12:19:28,881 INFO L273 TraceCheckUtils]: 53: Hoare triple {7715#true} assume true; {7715#true} is VALID [2018-11-23 12:19:28,882 INFO L268 TraceCheckUtils]: 54: Hoare quadruple {7715#true} {7731#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} #65#return; {7731#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} is VALID [2018-11-23 12:19:28,882 INFO L273 TraceCheckUtils]: 55: Hoare triple {7731#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} havoc #t~mem4; {7731#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} is VALID [2018-11-23 12:19:28,883 INFO L273 TraceCheckUtils]: 56: Hoare triple {7731#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {7732#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} is VALID [2018-11-23 12:19:28,884 INFO L273 TraceCheckUtils]: 57: Hoare triple {7732#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7732#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} is VALID [2018-11-23 12:19:28,884 INFO L256 TraceCheckUtils]: 58: Hoare triple {7732#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {7715#true} is VALID [2018-11-23 12:19:28,884 INFO L273 TraceCheckUtils]: 59: Hoare triple {7715#true} ~cond := #in~cond; {7715#true} is VALID [2018-11-23 12:19:28,885 INFO L273 TraceCheckUtils]: 60: Hoare triple {7715#true} assume !(0 == ~cond); {7715#true} is VALID [2018-11-23 12:19:28,885 INFO L273 TraceCheckUtils]: 61: Hoare triple {7715#true} assume true; {7715#true} is VALID [2018-11-23 12:19:28,886 INFO L268 TraceCheckUtils]: 62: Hoare quadruple {7715#true} {7732#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} #65#return; {7732#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} is VALID [2018-11-23 12:19:28,886 INFO L273 TraceCheckUtils]: 63: Hoare triple {7732#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} havoc #t~mem4; {7732#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} is VALID [2018-11-23 12:19:28,888 INFO L273 TraceCheckUtils]: 64: Hoare triple {7732#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {7733#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} is VALID [2018-11-23 12:19:28,888 INFO L273 TraceCheckUtils]: 65: Hoare triple {7733#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7733#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} is VALID [2018-11-23 12:19:28,888 INFO L256 TraceCheckUtils]: 66: Hoare triple {7733#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {7715#true} is VALID [2018-11-23 12:19:28,889 INFO L273 TraceCheckUtils]: 67: Hoare triple {7715#true} ~cond := #in~cond; {7715#true} is VALID [2018-11-23 12:19:28,889 INFO L273 TraceCheckUtils]: 68: Hoare triple {7715#true} assume !(0 == ~cond); {7715#true} is VALID [2018-11-23 12:19:28,889 INFO L273 TraceCheckUtils]: 69: Hoare triple {7715#true} assume true; {7715#true} is VALID [2018-11-23 12:19:28,890 INFO L268 TraceCheckUtils]: 70: Hoare quadruple {7715#true} {7733#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} #65#return; {7733#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} is VALID [2018-11-23 12:19:28,891 INFO L273 TraceCheckUtils]: 71: Hoare triple {7733#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} havoc #t~mem4; {7733#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} is VALID [2018-11-23 12:19:28,892 INFO L273 TraceCheckUtils]: 72: Hoare triple {7733#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {7734#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} is VALID [2018-11-23 12:19:28,892 INFO L273 TraceCheckUtils]: 73: Hoare triple {7734#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7734#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} is VALID [2018-11-23 12:19:28,893 INFO L256 TraceCheckUtils]: 74: Hoare triple {7734#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {7715#true} is VALID [2018-11-23 12:19:28,893 INFO L273 TraceCheckUtils]: 75: Hoare triple {7715#true} ~cond := #in~cond; {7715#true} is VALID [2018-11-23 12:19:28,893 INFO L273 TraceCheckUtils]: 76: Hoare triple {7715#true} assume !(0 == ~cond); {7715#true} is VALID [2018-11-23 12:19:28,893 INFO L273 TraceCheckUtils]: 77: Hoare triple {7715#true} assume true; {7715#true} is VALID [2018-11-23 12:19:28,894 INFO L268 TraceCheckUtils]: 78: Hoare quadruple {7715#true} {7734#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} #65#return; {7734#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} is VALID [2018-11-23 12:19:28,895 INFO L273 TraceCheckUtils]: 79: Hoare triple {7734#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} havoc #t~mem4; {7734#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} is VALID [2018-11-23 12:19:28,896 INFO L273 TraceCheckUtils]: 80: Hoare triple {7734#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {7735#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:19:28,897 INFO L273 TraceCheckUtils]: 81: Hoare triple {7735#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7735#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:19:28,897 INFO L256 TraceCheckUtils]: 82: Hoare triple {7735#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {7715#true} is VALID [2018-11-23 12:19:28,897 INFO L273 TraceCheckUtils]: 83: Hoare triple {7715#true} ~cond := #in~cond; {7715#true} is VALID [2018-11-23 12:19:28,897 INFO L273 TraceCheckUtils]: 84: Hoare triple {7715#true} assume !(0 == ~cond); {7715#true} is VALID [2018-11-23 12:19:28,898 INFO L273 TraceCheckUtils]: 85: Hoare triple {7715#true} assume true; {7715#true} is VALID [2018-11-23 12:19:28,899 INFO L268 TraceCheckUtils]: 86: Hoare quadruple {7715#true} {7735#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} #65#return; {7735#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:19:28,899 INFO L273 TraceCheckUtils]: 87: Hoare triple {7735#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} havoc #t~mem4; {7735#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:19:28,900 INFO L273 TraceCheckUtils]: 88: Hoare triple {7735#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {7736#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0))))} is VALID [2018-11-23 12:19:28,901 INFO L273 TraceCheckUtils]: 89: Hoare triple {7736#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7737#(= |main_#t~mem4| 0)} is VALID [2018-11-23 12:19:28,902 INFO L256 TraceCheckUtils]: 90: Hoare triple {7737#(= |main_#t~mem4| 0)} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {7729#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:19:28,903 INFO L273 TraceCheckUtils]: 91: Hoare triple {7729#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {7738#(not (= __VERIFIER_assert_~cond 0))} is VALID [2018-11-23 12:19:28,904 INFO L273 TraceCheckUtils]: 92: Hoare triple {7738#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {7716#false} is VALID [2018-11-23 12:19:28,904 INFO L273 TraceCheckUtils]: 93: Hoare triple {7716#false} assume !false; {7716#false} is VALID [2018-11-23 12:19:28,919 INFO L134 CoverageAnalysis]: Checked inductivity of 288 backedges. 13 proven. 209 refuted. 0 times theorem prover too weak. 66 trivial. 0 not checked. [2018-11-23 12:19:28,919 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:19:28,919 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 15 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 15 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:19:28,929 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 12:19:28,987 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 9 check-sat command(s) [2018-11-23 12:19:28,988 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:19:29,007 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:19:29,009 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:19:29,240 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 12 [2018-11-23 12:19:29,245 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 11 [2018-11-23 12:19:29,249 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:29,253 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:29,262 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:29,262 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:22, output treesize:18 [2018-11-23 12:19:29,412 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 20 [2018-11-23 12:19:29,417 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 20 treesize of output 21 [2018-11-23 12:19:29,419 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:29,424 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:29,434 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:29,434 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:31, output treesize:27 [2018-11-23 12:19:29,576 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 36 treesize of output 29 [2018-11-23 12:19:29,587 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 29 treesize of output 32 [2018-11-23 12:19:29,590 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:29,597 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:29,614 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-23 12:19:29,615 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:47, output treesize:43 [2018-11-23 12:19:34,140 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 35 treesize of output 27 [2018-11-23 12:19:34,152 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:34,153 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:34,154 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:19:34,155 INFO L701 Elim1Store]: detected not equals via solver [2018-11-23 12:19:34,156 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 3 disjoint index pairs (out of 6 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 31 [2018-11-23 12:19:34,160 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:19:34,169 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:34,189 INFO L267 ElimStorePlain]: Start of recursive call 1: 4 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:19:34,189 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 5 variables, input treesize:49, output treesize:3 [2018-11-23 12:19:34,192 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:19:34,192 WARN L384 uantifierElimination]: Input elimination task: ∃ [|#memory_int|, |main_~#a~0.base|, main_~i~0, v_main_~i~0_107, v_main_~i~0_108]. (let ((.cse0 (select |#memory_int| |main_~#a~0.base|))) (and (= 0 (select .cse0 (* 4 v_main_~i~0_107))) (= 0 (select .cse0 20)) (= (select .cse0 (* 4 v_main_~i~0_108)) 0) (<= 7 main_~i~0) (<= main_~i~0 v_main_~i~0_108) (<= v_main_~i~0_107 6) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= |main_#t~mem4| (select .cse0 (* 4 main_~i~0))))) [2018-11-23 12:19:34,192 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (= 0 |main_#t~mem4|) [2018-11-23 12:19:34,283 INFO L256 TraceCheckUtils]: 0: Hoare triple {7715#true} call ULTIMATE.init(); {7715#true} is VALID [2018-11-23 12:19:34,283 INFO L273 TraceCheckUtils]: 1: Hoare triple {7715#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {7715#true} is VALID [2018-11-23 12:19:34,284 INFO L273 TraceCheckUtils]: 2: Hoare triple {7715#true} assume true; {7715#true} is VALID [2018-11-23 12:19:34,284 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {7715#true} {7715#true} #61#return; {7715#true} is VALID [2018-11-23 12:19:34,284 INFO L256 TraceCheckUtils]: 4: Hoare triple {7715#true} call #t~ret5 := main(); {7715#true} is VALID [2018-11-23 12:19:34,284 INFO L273 TraceCheckUtils]: 5: Hoare triple {7715#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {7715#true} is VALID [2018-11-23 12:19:34,285 INFO L273 TraceCheckUtils]: 6: Hoare triple {7715#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {7760#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,285 INFO L273 TraceCheckUtils]: 7: Hoare triple {7760#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {7760#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,286 INFO L273 TraceCheckUtils]: 8: Hoare triple {7760#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7760#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,286 INFO L273 TraceCheckUtils]: 9: Hoare triple {7760#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7770#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,286 INFO L273 TraceCheckUtils]: 10: Hoare triple {7770#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {7770#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,287 INFO L273 TraceCheckUtils]: 11: Hoare triple {7770#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7770#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,287 INFO L273 TraceCheckUtils]: 12: Hoare triple {7770#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7780#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,288 INFO L273 TraceCheckUtils]: 13: Hoare triple {7780#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {7780#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,289 INFO L273 TraceCheckUtils]: 14: Hoare triple {7780#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7780#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,290 INFO L273 TraceCheckUtils]: 15: Hoare triple {7780#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7790#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,291 INFO L273 TraceCheckUtils]: 16: Hoare triple {7790#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {7790#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,291 INFO L273 TraceCheckUtils]: 17: Hoare triple {7790#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7790#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,292 INFO L273 TraceCheckUtils]: 18: Hoare triple {7790#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7800#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,293 INFO L273 TraceCheckUtils]: 19: Hoare triple {7800#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {7800#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,294 INFO L273 TraceCheckUtils]: 20: Hoare triple {7800#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7800#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,294 INFO L273 TraceCheckUtils]: 21: Hoare triple {7800#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7810#(and (= main_~i~0 5) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,295 INFO L273 TraceCheckUtils]: 22: Hoare triple {7810#(and (= main_~i~0 5) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {7810#(and (= main_~i~0 5) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,296 INFO L273 TraceCheckUtils]: 23: Hoare triple {7810#(and (= main_~i~0 5) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7817#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~i~0) |main_~#a~0.offset|))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,297 INFO L273 TraceCheckUtils]: 24: Hoare triple {7817#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~i~0) |main_~#a~0.offset|))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7821#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (<= main_~i~0 6) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,298 INFO L273 TraceCheckUtils]: 25: Hoare triple {7821#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (<= main_~i~0 6) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {7821#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (<= main_~i~0 6) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,299 INFO L273 TraceCheckUtils]: 26: Hoare triple {7821#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (<= main_~i~0 6) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7828#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~i~0) |main_~#a~0.offset|))) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (<= main_~i~0 6) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,301 INFO L273 TraceCheckUtils]: 27: Hoare triple {7828#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~i~0) |main_~#a~0.offset|))) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (<= main_~i~0 6) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7832#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_107 Int)) (and (<= main_~i~0 (+ v_main_~i~0_107 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,302 INFO L273 TraceCheckUtils]: 28: Hoare triple {7832#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_107 Int)) (and (<= main_~i~0 (+ v_main_~i~0_107 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {7832#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_107 Int)) (and (<= main_~i~0 (+ v_main_~i~0_107 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,304 INFO L273 TraceCheckUtils]: 29: Hoare triple {7832#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_107 Int)) (and (<= main_~i~0 (+ v_main_~i~0_107 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0))) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7839#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~i~0) |main_~#a~0.offset|))) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_107 Int)) (and (<= main_~i~0 (+ v_main_~i~0_107 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,306 INFO L273 TraceCheckUtils]: 30: Hoare triple {7839#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~i~0) |main_~#a~0.offset|))) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_107 Int)) (and (<= main_~i~0 (+ v_main_~i~0_107 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0))) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {7843#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= main_~i~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,308 INFO L273 TraceCheckUtils]: 31: Hoare triple {7843#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= main_~i~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {7847#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,309 INFO L273 TraceCheckUtils]: 32: Hoare triple {7847#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {7851#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,311 INFO L273 TraceCheckUtils]: 33: Hoare triple {7851#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7851#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,313 INFO L256 TraceCheckUtils]: 34: Hoare triple {7851#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} is VALID [2018-11-23 12:19:34,314 INFO L273 TraceCheckUtils]: 35: Hoare triple {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} ~cond := #in~cond; {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} is VALID [2018-11-23 12:19:34,314 INFO L273 TraceCheckUtils]: 36: Hoare triple {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} assume !(0 == ~cond); {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} is VALID [2018-11-23 12:19:34,315 INFO L273 TraceCheckUtils]: 37: Hoare triple {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} assume true; {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} is VALID [2018-11-23 12:19:34,315 INFO L268 TraceCheckUtils]: 38: Hoare quadruple {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} {7851#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #65#return; {7851#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,316 INFO L273 TraceCheckUtils]: 39: Hoare triple {7851#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {7851#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,317 INFO L273 TraceCheckUtils]: 40: Hoare triple {7851#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {7877#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,318 INFO L273 TraceCheckUtils]: 41: Hoare triple {7877#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7877#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,321 INFO L256 TraceCheckUtils]: 42: Hoare triple {7877#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} is VALID [2018-11-23 12:19:34,321 INFO L273 TraceCheckUtils]: 43: Hoare triple {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} ~cond := #in~cond; {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} is VALID [2018-11-23 12:19:34,322 INFO L273 TraceCheckUtils]: 44: Hoare triple {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} assume !(0 == ~cond); {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} is VALID [2018-11-23 12:19:34,322 INFO L273 TraceCheckUtils]: 45: Hoare triple {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} assume true; {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} is VALID [2018-11-23 12:19:34,323 INFO L268 TraceCheckUtils]: 46: Hoare quadruple {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} {7877#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} #65#return; {7877#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,323 INFO L273 TraceCheckUtils]: 47: Hoare triple {7877#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {7877#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,324 INFO L273 TraceCheckUtils]: 48: Hoare triple {7877#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 1) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {7902#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= main_~i~0 2) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,326 INFO L273 TraceCheckUtils]: 49: Hoare triple {7902#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= main_~i~0 2) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7902#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= main_~i~0 2) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,328 INFO L256 TraceCheckUtils]: 50: Hoare triple {7902#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= main_~i~0 2) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} is VALID [2018-11-23 12:19:34,329 INFO L273 TraceCheckUtils]: 51: Hoare triple {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} ~cond := #in~cond; {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} is VALID [2018-11-23 12:19:34,329 INFO L273 TraceCheckUtils]: 52: Hoare triple {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} assume !(0 == ~cond); {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} is VALID [2018-11-23 12:19:34,330 INFO L273 TraceCheckUtils]: 53: Hoare triple {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} assume true; {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} is VALID [2018-11-23 12:19:34,330 INFO L268 TraceCheckUtils]: 54: Hoare quadruple {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} {7902#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= main_~i~0 2) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= |main_~#a~0.offset| 0))} #65#return; {7902#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= main_~i~0 2) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,331 INFO L273 TraceCheckUtils]: 55: Hoare triple {7902#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= main_~i~0 2) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {7902#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= main_~i~0 2) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,332 INFO L273 TraceCheckUtils]: 56: Hoare triple {7902#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= main_~i~0 2) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {7927#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,334 INFO L273 TraceCheckUtils]: 57: Hoare triple {7927#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7927#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,336 INFO L256 TraceCheckUtils]: 58: Hoare triple {7927#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} is VALID [2018-11-23 12:19:34,337 INFO L273 TraceCheckUtils]: 59: Hoare triple {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} ~cond := #in~cond; {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} is VALID [2018-11-23 12:19:34,337 INFO L273 TraceCheckUtils]: 60: Hoare triple {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} assume !(0 == ~cond); {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} is VALID [2018-11-23 12:19:34,338 INFO L273 TraceCheckUtils]: 61: Hoare triple {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} assume true; {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} is VALID [2018-11-23 12:19:34,338 INFO L268 TraceCheckUtils]: 62: Hoare quadruple {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} {7927#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= |main_~#a~0.offset| 0))} #65#return; {7927#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,339 INFO L273 TraceCheckUtils]: 63: Hoare triple {7927#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {7927#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,340 INFO L273 TraceCheckUtils]: 64: Hoare triple {7927#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {7952#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,341 INFO L273 TraceCheckUtils]: 65: Hoare triple {7952#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7952#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,344 INFO L256 TraceCheckUtils]: 66: Hoare triple {7952#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} is VALID [2018-11-23 12:19:34,344 INFO L273 TraceCheckUtils]: 67: Hoare triple {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} ~cond := #in~cond; {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} is VALID [2018-11-23 12:19:34,345 INFO L273 TraceCheckUtils]: 68: Hoare triple {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} assume !(0 == ~cond); {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} is VALID [2018-11-23 12:19:34,345 INFO L273 TraceCheckUtils]: 69: Hoare triple {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} assume true; {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} is VALID [2018-11-23 12:19:34,346 INFO L268 TraceCheckUtils]: 70: Hoare quadruple {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} {7952#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} #65#return; {7952#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,347 INFO L273 TraceCheckUtils]: 71: Hoare triple {7952#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {7952#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,348 INFO L273 TraceCheckUtils]: 72: Hoare triple {7952#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {7977#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,351 INFO L273 TraceCheckUtils]: 73: Hoare triple {7977#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7981#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_#t~mem4| (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~i~0) |main_~#a~0.offset|))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,353 INFO L256 TraceCheckUtils]: 74: Hoare triple {7981#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_#t~mem4| (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~i~0) |main_~#a~0.offset|))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} is VALID [2018-11-23 12:19:34,354 INFO L273 TraceCheckUtils]: 75: Hoare triple {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} ~cond := #in~cond; {7988#(and (exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)))) (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond))} is VALID [2018-11-23 12:19:34,355 INFO L273 TraceCheckUtils]: 76: Hoare triple {7988#(and (exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)))) (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond))} assume !(0 == ~cond); {7992#(and (not (= |__VERIFIER_assert_#in~cond| 0)) (exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)))))} is VALID [2018-11-23 12:19:34,356 INFO L273 TraceCheckUtils]: 77: Hoare triple {7992#(and (not (= |__VERIFIER_assert_#in~cond| 0)) (exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)))))} assume true; {7992#(and (not (= |__VERIFIER_assert_#in~cond| 0)) (exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)))))} is VALID [2018-11-23 12:19:34,357 INFO L268 TraceCheckUtils]: 78: Hoare quadruple {7992#(and (not (= |__VERIFIER_assert_#in~cond| 0)) (exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)))))} {7981#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_#t~mem4| (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~i~0) |main_~#a~0.offset|))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} #65#return; {7977#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,358 INFO L273 TraceCheckUtils]: 79: Hoare triple {7977#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {7977#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,360 INFO L273 TraceCheckUtils]: 80: Hoare triple {7977#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {8005#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (<= 6 main_~i~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,361 INFO L273 TraceCheckUtils]: 81: Hoare triple {8005#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (<= 6 main_~i~0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8005#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (<= 6 main_~i~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,363 INFO L256 TraceCheckUtils]: 82: Hoare triple {8005#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (<= 6 main_~i~0) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} is VALID [2018-11-23 12:19:34,364 INFO L273 TraceCheckUtils]: 83: Hoare triple {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} ~cond := #in~cond; {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} is VALID [2018-11-23 12:19:34,365 INFO L273 TraceCheckUtils]: 84: Hoare triple {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} assume !(0 == ~cond); {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} is VALID [2018-11-23 12:19:34,365 INFO L273 TraceCheckUtils]: 85: Hoare triple {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} assume true; {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} is VALID [2018-11-23 12:19:34,366 INFO L268 TraceCheckUtils]: 86: Hoare quadruple {7858#(exists ((v_main_~i~0_108 Int) (|v_main_~#a~0.base_BEFORE_CALL_22| Int) (v_main_~i~0_107 Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_107)) 0) (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) 20) 0) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_22|) (* 4 v_main_~i~0_108)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1))))} {8005#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (<= 6 main_~i~0) (= |main_~#a~0.offset| 0))} #65#return; {8005#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (<= 6 main_~i~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,367 INFO L273 TraceCheckUtils]: 87: Hoare triple {8005#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (<= 6 main_~i~0) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {8005#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (<= 6 main_~i~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,369 INFO L273 TraceCheckUtils]: 88: Hoare triple {8005#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (<= 6 main_~i~0) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {8030#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (<= 7 main_~i~0) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:19:34,370 INFO L273 TraceCheckUtils]: 89: Hoare triple {8030#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (<= 7 main_~i~0) (exists ((v_main_~i~0_108 Int) (v_main_~i~0_107 Int)) (and (<= ~SIZE~0 (+ v_main_~i~0_108 1)) (<= v_main_~i~0_107 6) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_107) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_108 (+ v_main_~i~0_107 1)) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_108) |main_~#a~0.offset|))))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7737#(= |main_#t~mem4| 0)} is VALID [2018-11-23 12:19:34,371 INFO L256 TraceCheckUtils]: 90: Hoare triple {7737#(= |main_#t~mem4| 0)} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {8037#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:19:34,372 INFO L273 TraceCheckUtils]: 91: Hoare triple {8037#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {8041#(= 1 __VERIFIER_assert_~cond)} is VALID [2018-11-23 12:19:34,373 INFO L273 TraceCheckUtils]: 92: Hoare triple {8041#(= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7716#false} is VALID [2018-11-23 12:19:34,373 INFO L273 TraceCheckUtils]: 93: Hoare triple {7716#false} assume !false; {7716#false} is VALID [2018-11-23 12:19:34,432 INFO L134 CoverageAnalysis]: Checked inductivity of 288 backedges. 16 proven. 206 refuted. 0 times theorem prover too weak. 66 trivial. 0 not checked. [2018-11-23 12:19:34,452 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:19:34,452 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [24, 30] total 51 [2018-11-23 12:19:34,452 INFO L78 Accepts]: Start accepts. Automaton has 51 states. Word has length 94 [2018-11-23 12:19:34,453 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:19:34,453 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 51 states. [2018-11-23 12:19:34,689 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 151 edges. 151 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:19:34,689 INFO L459 AbstractCegarLoop]: Interpolant automaton has 51 states [2018-11-23 12:19:34,690 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 51 interpolants. [2018-11-23 12:19:34,691 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=205, Invalid=2345, Unknown=0, NotChecked=0, Total=2550 [2018-11-23 12:19:34,691 INFO L87 Difference]: Start difference. First operand 98 states and 100 transitions. Second operand 51 states. [2018-11-23 12:20:03,800 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:03,801 INFO L93 Difference]: Finished difference Result 247 states and 255 transitions. [2018-11-23 12:20:03,801 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 67 states. [2018-11-23 12:20:03,801 INFO L78 Accepts]: Start accepts. Automaton has 51 states. Word has length 94 [2018-11-23 12:20:03,801 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:20:03,801 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 51 states. [2018-11-23 12:20:03,805 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 67 states to 67 states and 162 transitions. [2018-11-23 12:20:03,805 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 51 states. [2018-11-23 12:20:03,808 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 67 states to 67 states and 162 transitions. [2018-11-23 12:20:03,808 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 67 states and 162 transitions. [2018-11-23 12:20:04,097 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 162 edges. 162 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:20:04,100 INFO L225 Difference]: With dead ends: 247 [2018-11-23 12:20:04,101 INFO L226 Difference]: Without dead ends: 113 [2018-11-23 12:20:04,104 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 171 GetRequests, 56 SyntacticMatches, 15 SemanticMatches, 100 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3220 ImplicationChecksByTransitivity, 21.5s TimeCoverageRelationStatistics Valid=747, Invalid=9532, Unknown=23, NotChecked=0, Total=10302 [2018-11-23 12:20:04,104 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 113 states. [2018-11-23 12:20:04,476 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 113 to 109. [2018-11-23 12:20:04,476 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:20:04,477 INFO L82 GeneralOperation]: Start isEquivalent. First operand 113 states. Second operand 109 states. [2018-11-23 12:20:04,477 INFO L74 IsIncluded]: Start isIncluded. First operand 113 states. Second operand 109 states. [2018-11-23 12:20:04,477 INFO L87 Difference]: Start difference. First operand 113 states. Second operand 109 states. [2018-11-23 12:20:04,480 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:04,480 INFO L93 Difference]: Finished difference Result 113 states and 115 transitions. [2018-11-23 12:20:04,480 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 115 transitions. [2018-11-23 12:20:04,481 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:20:04,481 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:20:04,481 INFO L74 IsIncluded]: Start isIncluded. First operand 109 states. Second operand 113 states. [2018-11-23 12:20:04,481 INFO L87 Difference]: Start difference. First operand 109 states. Second operand 113 states. [2018-11-23 12:20:04,483 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:04,484 INFO L93 Difference]: Finished difference Result 113 states and 115 transitions. [2018-11-23 12:20:04,484 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 115 transitions. [2018-11-23 12:20:04,484 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:20:04,484 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:20:04,484 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:20:04,485 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:20:04,485 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 109 states. [2018-11-23 12:20:04,487 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 109 states to 109 states and 111 transitions. [2018-11-23 12:20:04,487 INFO L78 Accepts]: Start accepts. Automaton has 109 states and 111 transitions. Word has length 94 [2018-11-23 12:20:04,487 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:20:04,487 INFO L480 AbstractCegarLoop]: Abstraction has 109 states and 111 transitions. [2018-11-23 12:20:04,487 INFO L481 AbstractCegarLoop]: Interpolant automaton has 51 states. [2018-11-23 12:20:04,487 INFO L276 IsEmpty]: Start isEmpty. Operand 109 states and 111 transitions. [2018-11-23 12:20:04,489 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 106 [2018-11-23 12:20:04,489 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:20:04,489 INFO L402 BasicCegarLoop]: trace histogram [9, 9, 9, 9, 9, 9, 8, 8, 8, 8, 8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:20:04,489 INFO L423 AbstractCegarLoop]: === Iteration 17 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:20:04,489 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:20:04,490 INFO L82 PathProgramCache]: Analyzing trace with hash -88747921, now seen corresponding path program 13 times [2018-11-23 12:20:04,490 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:20:04,490 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:20:04,490 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:20:04,490 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:20:04,491 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:20:04,511 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:20:05,215 INFO L256 TraceCheckUtils]: 0: Hoare triple {8864#true} call ULTIMATE.init(); {8864#true} is VALID [2018-11-23 12:20:05,215 INFO L273 TraceCheckUtils]: 1: Hoare triple {8864#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {8864#true} is VALID [2018-11-23 12:20:05,215 INFO L273 TraceCheckUtils]: 2: Hoare triple {8864#true} assume true; {8864#true} is VALID [2018-11-23 12:20:05,215 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {8864#true} {8864#true} #61#return; {8864#true} is VALID [2018-11-23 12:20:05,215 INFO L256 TraceCheckUtils]: 4: Hoare triple {8864#true} call #t~ret5 := main(); {8864#true} is VALID [2018-11-23 12:20:05,216 INFO L273 TraceCheckUtils]: 5: Hoare triple {8864#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {8864#true} is VALID [2018-11-23 12:20:05,216 INFO L273 TraceCheckUtils]: 6: Hoare triple {8864#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {8866#(= main_~i~0 0)} is VALID [2018-11-23 12:20:05,217 INFO L273 TraceCheckUtils]: 7: Hoare triple {8866#(= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0); {8866#(= main_~i~0 0)} is VALID [2018-11-23 12:20:05,217 INFO L273 TraceCheckUtils]: 8: Hoare triple {8866#(= main_~i~0 0)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8866#(= main_~i~0 0)} is VALID [2018-11-23 12:20:05,217 INFO L273 TraceCheckUtils]: 9: Hoare triple {8866#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {8867#(and (<= 1 main_~i~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:20:05,218 INFO L273 TraceCheckUtils]: 10: Hoare triple {8867#(and (<= 1 main_~i~0) (<= main_~i~0 1))} assume !!(~i~0 < ~SIZE~0); {8867#(and (<= 1 main_~i~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:20:05,218 INFO L273 TraceCheckUtils]: 11: Hoare triple {8867#(and (<= 1 main_~i~0) (<= main_~i~0 1))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8867#(and (<= 1 main_~i~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:20:05,219 INFO L273 TraceCheckUtils]: 12: Hoare triple {8867#(and (<= 1 main_~i~0) (<= main_~i~0 1))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {8868#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:20:05,219 INFO L273 TraceCheckUtils]: 13: Hoare triple {8868#(and (<= 2 main_~i~0) (<= main_~i~0 2))} assume !!(~i~0 < ~SIZE~0); {8868#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:20:05,220 INFO L273 TraceCheckUtils]: 14: Hoare triple {8868#(and (<= 2 main_~i~0) (<= main_~i~0 2))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8868#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:20:05,232 INFO L273 TraceCheckUtils]: 15: Hoare triple {8868#(and (<= 2 main_~i~0) (<= main_~i~0 2))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {8869#(and (<= main_~i~0 3) (<= 3 main_~i~0))} is VALID [2018-11-23 12:20:05,233 INFO L273 TraceCheckUtils]: 16: Hoare triple {8869#(and (<= main_~i~0 3) (<= 3 main_~i~0))} assume !!(~i~0 < ~SIZE~0); {8869#(and (<= main_~i~0 3) (<= 3 main_~i~0))} is VALID [2018-11-23 12:20:05,233 INFO L273 TraceCheckUtils]: 17: Hoare triple {8869#(and (<= main_~i~0 3) (<= 3 main_~i~0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8869#(and (<= main_~i~0 3) (<= 3 main_~i~0))} is VALID [2018-11-23 12:20:05,234 INFO L273 TraceCheckUtils]: 18: Hoare triple {8869#(and (<= main_~i~0 3) (<= 3 main_~i~0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {8870#(and (<= 4 main_~i~0) (<= main_~i~0 4))} is VALID [2018-11-23 12:20:05,234 INFO L273 TraceCheckUtils]: 19: Hoare triple {8870#(and (<= 4 main_~i~0) (<= main_~i~0 4))} assume !!(~i~0 < ~SIZE~0); {8870#(and (<= 4 main_~i~0) (<= main_~i~0 4))} is VALID [2018-11-23 12:20:05,235 INFO L273 TraceCheckUtils]: 20: Hoare triple {8870#(and (<= 4 main_~i~0) (<= main_~i~0 4))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8870#(and (<= 4 main_~i~0) (<= main_~i~0 4))} is VALID [2018-11-23 12:20:05,235 INFO L273 TraceCheckUtils]: 21: Hoare triple {8870#(and (<= 4 main_~i~0) (<= main_~i~0 4))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {8871#(and (<= 5 main_~i~0) (<= main_~i~0 5))} is VALID [2018-11-23 12:20:05,236 INFO L273 TraceCheckUtils]: 22: Hoare triple {8871#(and (<= 5 main_~i~0) (<= main_~i~0 5))} assume !!(~i~0 < ~SIZE~0); {8871#(and (<= 5 main_~i~0) (<= main_~i~0 5))} is VALID [2018-11-23 12:20:05,236 INFO L273 TraceCheckUtils]: 23: Hoare triple {8871#(and (<= 5 main_~i~0) (<= main_~i~0 5))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8871#(and (<= 5 main_~i~0) (<= main_~i~0 5))} is VALID [2018-11-23 12:20:05,237 INFO L273 TraceCheckUtils]: 24: Hoare triple {8871#(and (<= 5 main_~i~0) (<= main_~i~0 5))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {8872#(and (<= 6 main_~i~0) (<= main_~i~0 6))} is VALID [2018-11-23 12:20:05,238 INFO L273 TraceCheckUtils]: 25: Hoare triple {8872#(and (<= 6 main_~i~0) (<= main_~i~0 6))} assume !!(~i~0 < ~SIZE~0); {8872#(and (<= 6 main_~i~0) (<= main_~i~0 6))} is VALID [2018-11-23 12:20:05,239 INFO L273 TraceCheckUtils]: 26: Hoare triple {8872#(and (<= 6 main_~i~0) (<= main_~i~0 6))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8872#(and (<= 6 main_~i~0) (<= main_~i~0 6))} is VALID [2018-11-23 12:20:05,240 INFO L273 TraceCheckUtils]: 27: Hoare triple {8872#(and (<= 6 main_~i~0) (<= main_~i~0 6))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {8873#(and (<= 7 main_~i~0) (<= main_~i~0 7))} is VALID [2018-11-23 12:20:05,240 INFO L273 TraceCheckUtils]: 28: Hoare triple {8873#(and (<= 7 main_~i~0) (<= main_~i~0 7))} assume !!(~i~0 < ~SIZE~0); {8873#(and (<= 7 main_~i~0) (<= main_~i~0 7))} is VALID [2018-11-23 12:20:05,241 INFO L273 TraceCheckUtils]: 29: Hoare triple {8873#(and (<= 7 main_~i~0) (<= main_~i~0 7))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8873#(and (<= 7 main_~i~0) (<= main_~i~0 7))} is VALID [2018-11-23 12:20:05,242 INFO L273 TraceCheckUtils]: 30: Hoare triple {8873#(and (<= 7 main_~i~0) (<= main_~i~0 7))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {8874#(and (<= 8 main_~i~0) (<= main_~i~0 8))} is VALID [2018-11-23 12:20:05,243 INFO L273 TraceCheckUtils]: 31: Hoare triple {8874#(and (<= 8 main_~i~0) (<= main_~i~0 8))} assume !!(~i~0 < ~SIZE~0); {8874#(and (<= 8 main_~i~0) (<= main_~i~0 8))} is VALID [2018-11-23 12:20:05,244 INFO L273 TraceCheckUtils]: 32: Hoare triple {8874#(and (<= 8 main_~i~0) (<= main_~i~0 8))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8875#(and (<= 8 main_~i~0) (<= main_~i~0 8) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0)))))} is VALID [2018-11-23 12:20:05,245 INFO L273 TraceCheckUtils]: 33: Hoare triple {8875#(and (<= 8 main_~i~0) (<= main_~i~0 8) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0)))))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {8876#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 8))))} is VALID [2018-11-23 12:20:05,245 INFO L273 TraceCheckUtils]: 34: Hoare triple {8876#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 8))))} assume !(~i~0 < ~SIZE~0); {8876#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 8))))} is VALID [2018-11-23 12:20:05,246 INFO L273 TraceCheckUtils]: 35: Hoare triple {8876#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 8))))} ~i~0 := 0; {8877#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 8)))) (= main_~i~0 0))} is VALID [2018-11-23 12:20:05,247 INFO L273 TraceCheckUtils]: 36: Hoare triple {8877#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 8)))) (= main_~i~0 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8877#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 8)))) (= main_~i~0 0))} is VALID [2018-11-23 12:20:05,247 INFO L256 TraceCheckUtils]: 37: Hoare triple {8877#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 8)))) (= main_~i~0 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {8864#true} is VALID [2018-11-23 12:20:05,248 INFO L273 TraceCheckUtils]: 38: Hoare triple {8864#true} ~cond := #in~cond; {8878#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} is VALID [2018-11-23 12:20:05,248 INFO L273 TraceCheckUtils]: 39: Hoare triple {8878#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} assume !(0 == ~cond); {8879#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:20:05,249 INFO L273 TraceCheckUtils]: 40: Hoare triple {8879#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {8879#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:20:05,250 INFO L268 TraceCheckUtils]: 41: Hoare quadruple {8879#(not (= |__VERIFIER_assert_#in~cond| 0))} {8877#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 8)))) (= main_~i~0 0))} #65#return; {8877#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 8)))) (= main_~i~0 0))} is VALID [2018-11-23 12:20:05,251 INFO L273 TraceCheckUtils]: 42: Hoare triple {8877#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 8)))) (= main_~i~0 0))} havoc #t~mem4; {8877#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 8)))) (= main_~i~0 0))} is VALID [2018-11-23 12:20:05,252 INFO L273 TraceCheckUtils]: 43: Hoare triple {8877#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 8)))) (= main_~i~0 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {8880#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 7)))))} is VALID [2018-11-23 12:20:05,252 INFO L273 TraceCheckUtils]: 44: Hoare triple {8880#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 7)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8880#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 7)))))} is VALID [2018-11-23 12:20:05,253 INFO L256 TraceCheckUtils]: 45: Hoare triple {8880#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 7)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {8864#true} is VALID [2018-11-23 12:20:05,253 INFO L273 TraceCheckUtils]: 46: Hoare triple {8864#true} ~cond := #in~cond; {8864#true} is VALID [2018-11-23 12:20:05,253 INFO L273 TraceCheckUtils]: 47: Hoare triple {8864#true} assume !(0 == ~cond); {8864#true} is VALID [2018-11-23 12:20:05,253 INFO L273 TraceCheckUtils]: 48: Hoare triple {8864#true} assume true; {8864#true} is VALID [2018-11-23 12:20:05,254 INFO L268 TraceCheckUtils]: 49: Hoare quadruple {8864#true} {8880#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 7)))))} #65#return; {8880#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 7)))))} is VALID [2018-11-23 12:20:05,255 INFO L273 TraceCheckUtils]: 50: Hoare triple {8880#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 7)))))} havoc #t~mem4; {8880#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 7)))))} is VALID [2018-11-23 12:20:05,256 INFO L273 TraceCheckUtils]: 51: Hoare triple {8880#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 7)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {8881#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 6)))))} is VALID [2018-11-23 12:20:05,257 INFO L273 TraceCheckUtils]: 52: Hoare triple {8881#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 6)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8881#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 6)))))} is VALID [2018-11-23 12:20:05,257 INFO L256 TraceCheckUtils]: 53: Hoare triple {8881#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 6)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {8864#true} is VALID [2018-11-23 12:20:05,257 INFO L273 TraceCheckUtils]: 54: Hoare triple {8864#true} ~cond := #in~cond; {8864#true} is VALID [2018-11-23 12:20:05,257 INFO L273 TraceCheckUtils]: 55: Hoare triple {8864#true} assume !(0 == ~cond); {8864#true} is VALID [2018-11-23 12:20:05,258 INFO L273 TraceCheckUtils]: 56: Hoare triple {8864#true} assume true; {8864#true} is VALID [2018-11-23 12:20:05,259 INFO L268 TraceCheckUtils]: 57: Hoare quadruple {8864#true} {8881#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 6)))))} #65#return; {8881#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 6)))))} is VALID [2018-11-23 12:20:05,259 INFO L273 TraceCheckUtils]: 58: Hoare triple {8881#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 6)))))} havoc #t~mem4; {8881#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 6)))))} is VALID [2018-11-23 12:20:05,260 INFO L273 TraceCheckUtils]: 59: Hoare triple {8881#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 6)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {8882#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} is VALID [2018-11-23 12:20:05,261 INFO L273 TraceCheckUtils]: 60: Hoare triple {8882#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8882#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} is VALID [2018-11-23 12:20:05,261 INFO L256 TraceCheckUtils]: 61: Hoare triple {8882#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {8864#true} is VALID [2018-11-23 12:20:05,261 INFO L273 TraceCheckUtils]: 62: Hoare triple {8864#true} ~cond := #in~cond; {8864#true} is VALID [2018-11-23 12:20:05,261 INFO L273 TraceCheckUtils]: 63: Hoare triple {8864#true} assume !(0 == ~cond); {8864#true} is VALID [2018-11-23 12:20:05,262 INFO L273 TraceCheckUtils]: 64: Hoare triple {8864#true} assume true; {8864#true} is VALID [2018-11-23 12:20:05,263 INFO L268 TraceCheckUtils]: 65: Hoare quadruple {8864#true} {8882#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} #65#return; {8882#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} is VALID [2018-11-23 12:20:05,263 INFO L273 TraceCheckUtils]: 66: Hoare triple {8882#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} havoc #t~mem4; {8882#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} is VALID [2018-11-23 12:20:05,264 INFO L273 TraceCheckUtils]: 67: Hoare triple {8882#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {8883#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} is VALID [2018-11-23 12:20:05,265 INFO L273 TraceCheckUtils]: 68: Hoare triple {8883#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8883#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} is VALID [2018-11-23 12:20:05,265 INFO L256 TraceCheckUtils]: 69: Hoare triple {8883#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {8864#true} is VALID [2018-11-23 12:20:05,266 INFO L273 TraceCheckUtils]: 70: Hoare triple {8864#true} ~cond := #in~cond; {8864#true} is VALID [2018-11-23 12:20:05,266 INFO L273 TraceCheckUtils]: 71: Hoare triple {8864#true} assume !(0 == ~cond); {8864#true} is VALID [2018-11-23 12:20:05,266 INFO L273 TraceCheckUtils]: 72: Hoare triple {8864#true} assume true; {8864#true} is VALID [2018-11-23 12:20:05,267 INFO L268 TraceCheckUtils]: 73: Hoare quadruple {8864#true} {8883#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} #65#return; {8883#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} is VALID [2018-11-23 12:20:05,268 INFO L273 TraceCheckUtils]: 74: Hoare triple {8883#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} havoc #t~mem4; {8883#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} is VALID [2018-11-23 12:20:05,269 INFO L273 TraceCheckUtils]: 75: Hoare triple {8883#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {8884#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} is VALID [2018-11-23 12:20:05,269 INFO L273 TraceCheckUtils]: 76: Hoare triple {8884#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8884#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} is VALID [2018-11-23 12:20:05,269 INFO L256 TraceCheckUtils]: 77: Hoare triple {8884#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {8864#true} is VALID [2018-11-23 12:20:05,270 INFO L273 TraceCheckUtils]: 78: Hoare triple {8864#true} ~cond := #in~cond; {8864#true} is VALID [2018-11-23 12:20:05,270 INFO L273 TraceCheckUtils]: 79: Hoare triple {8864#true} assume !(0 == ~cond); {8864#true} is VALID [2018-11-23 12:20:05,270 INFO L273 TraceCheckUtils]: 80: Hoare triple {8864#true} assume true; {8864#true} is VALID [2018-11-23 12:20:05,271 INFO L268 TraceCheckUtils]: 81: Hoare quadruple {8864#true} {8884#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} #65#return; {8884#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} is VALID [2018-11-23 12:20:05,272 INFO L273 TraceCheckUtils]: 82: Hoare triple {8884#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} havoc #t~mem4; {8884#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} is VALID [2018-11-23 12:20:05,273 INFO L273 TraceCheckUtils]: 83: Hoare triple {8884#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {8885#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} is VALID [2018-11-23 12:20:05,273 INFO L273 TraceCheckUtils]: 84: Hoare triple {8885#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8885#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} is VALID [2018-11-23 12:20:05,274 INFO L256 TraceCheckUtils]: 85: Hoare triple {8885#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {8864#true} is VALID [2018-11-23 12:20:05,274 INFO L273 TraceCheckUtils]: 86: Hoare triple {8864#true} ~cond := #in~cond; {8864#true} is VALID [2018-11-23 12:20:05,274 INFO L273 TraceCheckUtils]: 87: Hoare triple {8864#true} assume !(0 == ~cond); {8864#true} is VALID [2018-11-23 12:20:05,274 INFO L273 TraceCheckUtils]: 88: Hoare triple {8864#true} assume true; {8864#true} is VALID [2018-11-23 12:20:05,275 INFO L268 TraceCheckUtils]: 89: Hoare quadruple {8864#true} {8885#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} #65#return; {8885#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} is VALID [2018-11-23 12:20:05,276 INFO L273 TraceCheckUtils]: 90: Hoare triple {8885#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} havoc #t~mem4; {8885#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} is VALID [2018-11-23 12:20:05,277 INFO L273 TraceCheckUtils]: 91: Hoare triple {8885#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {8886#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:20:05,278 INFO L273 TraceCheckUtils]: 92: Hoare triple {8886#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8886#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:20:05,278 INFO L256 TraceCheckUtils]: 93: Hoare triple {8886#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {8864#true} is VALID [2018-11-23 12:20:05,278 INFO L273 TraceCheckUtils]: 94: Hoare triple {8864#true} ~cond := #in~cond; {8864#true} is VALID [2018-11-23 12:20:05,278 INFO L273 TraceCheckUtils]: 95: Hoare triple {8864#true} assume !(0 == ~cond); {8864#true} is VALID [2018-11-23 12:20:05,279 INFO L273 TraceCheckUtils]: 96: Hoare triple {8864#true} assume true; {8864#true} is VALID [2018-11-23 12:20:05,280 INFO L268 TraceCheckUtils]: 97: Hoare quadruple {8864#true} {8886#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} #65#return; {8886#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:20:05,280 INFO L273 TraceCheckUtils]: 98: Hoare triple {8886#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} havoc #t~mem4; {8886#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:20:05,281 INFO L273 TraceCheckUtils]: 99: Hoare triple {8886#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {8887#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0))))} is VALID [2018-11-23 12:20:05,282 INFO L273 TraceCheckUtils]: 100: Hoare triple {8887#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8888#(= |main_#t~mem4| 0)} is VALID [2018-11-23 12:20:05,283 INFO L256 TraceCheckUtils]: 101: Hoare triple {8888#(= |main_#t~mem4| 0)} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {8879#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:20:05,284 INFO L273 TraceCheckUtils]: 102: Hoare triple {8879#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {8889#(not (= __VERIFIER_assert_~cond 0))} is VALID [2018-11-23 12:20:05,284 INFO L273 TraceCheckUtils]: 103: Hoare triple {8889#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {8865#false} is VALID [2018-11-23 12:20:05,284 INFO L273 TraceCheckUtils]: 104: Hoare triple {8865#false} assume !false; {8865#false} is VALID [2018-11-23 12:20:05,302 INFO L134 CoverageAnalysis]: Checked inductivity of 373 backedges. 15 proven. 267 refuted. 0 times theorem prover too weak. 91 trivial. 0 not checked. [2018-11-23 12:20:05,303 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:20:05,303 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 16 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 16 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:20:05,311 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:20:05,348 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:20:05,368 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:20:05,370 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:20:05,709 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 10 [2018-11-23 12:20:05,730 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 10 treesize of output 9 [2018-11-23 12:20:05,732 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:20:05,735 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:05,740 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:05,740 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:17, output treesize:13 [2018-11-23 12:20:07,104 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 15 treesize of output 11 [2018-11-23 12:20:07,109 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 3 [2018-11-23 12:20:07,111 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:20:07,112 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:07,113 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:07,113 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:15, output treesize:3 [2018-11-23 12:20:07,116 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:20:07,116 WARN L384 uantifierElimination]: Input elimination task: ∃ [|#memory_int|, |main_~#a~0.base|]. (let ((.cse0 (select (select |#memory_int| |main_~#a~0.base|) 32))) (and (= 0 .cse0) (= .cse0 |main_#t~mem4|))) [2018-11-23 12:20:07,116 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (= 0 |main_#t~mem4|) [2018-11-23 12:20:07,201 INFO L256 TraceCheckUtils]: 0: Hoare triple {8864#true} call ULTIMATE.init(); {8864#true} is VALID [2018-11-23 12:20:07,202 INFO L273 TraceCheckUtils]: 1: Hoare triple {8864#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {8864#true} is VALID [2018-11-23 12:20:07,202 INFO L273 TraceCheckUtils]: 2: Hoare triple {8864#true} assume true; {8864#true} is VALID [2018-11-23 12:20:07,202 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {8864#true} {8864#true} #61#return; {8864#true} is VALID [2018-11-23 12:20:07,202 INFO L256 TraceCheckUtils]: 4: Hoare triple {8864#true} call #t~ret5 := main(); {8864#true} is VALID [2018-11-23 12:20:07,202 INFO L273 TraceCheckUtils]: 5: Hoare triple {8864#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {8864#true} is VALID [2018-11-23 12:20:07,203 INFO L273 TraceCheckUtils]: 6: Hoare triple {8864#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {8911#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,204 INFO L273 TraceCheckUtils]: 7: Hoare triple {8911#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {8911#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,204 INFO L273 TraceCheckUtils]: 8: Hoare triple {8911#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8911#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,205 INFO L273 TraceCheckUtils]: 9: Hoare triple {8911#(and (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {8921#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,206 INFO L273 TraceCheckUtils]: 10: Hoare triple {8921#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {8921#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,206 INFO L273 TraceCheckUtils]: 11: Hoare triple {8921#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8921#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,207 INFO L273 TraceCheckUtils]: 12: Hoare triple {8921#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {8931#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,208 INFO L273 TraceCheckUtils]: 13: Hoare triple {8931#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {8931#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,209 INFO L273 TraceCheckUtils]: 14: Hoare triple {8931#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8931#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,210 INFO L273 TraceCheckUtils]: 15: Hoare triple {8931#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {8941#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,210 INFO L273 TraceCheckUtils]: 16: Hoare triple {8941#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {8941#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,211 INFO L273 TraceCheckUtils]: 17: Hoare triple {8941#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8941#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,212 INFO L273 TraceCheckUtils]: 18: Hoare triple {8941#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {8951#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,213 INFO L273 TraceCheckUtils]: 19: Hoare triple {8951#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {8951#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,213 INFO L273 TraceCheckUtils]: 20: Hoare triple {8951#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8951#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,214 INFO L273 TraceCheckUtils]: 21: Hoare triple {8951#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {8961#(and (= main_~i~0 5) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,215 INFO L273 TraceCheckUtils]: 22: Hoare triple {8961#(and (= main_~i~0 5) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {8961#(and (= main_~i~0 5) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,216 INFO L273 TraceCheckUtils]: 23: Hoare triple {8961#(and (= main_~i~0 5) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8961#(and (= main_~i~0 5) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,216 INFO L273 TraceCheckUtils]: 24: Hoare triple {8961#(and (= main_~i~0 5) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {8971#(and (= main_~i~0 6) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,217 INFO L273 TraceCheckUtils]: 25: Hoare triple {8971#(and (= main_~i~0 6) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {8971#(and (= main_~i~0 6) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,218 INFO L273 TraceCheckUtils]: 26: Hoare triple {8971#(and (= main_~i~0 6) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8971#(and (= main_~i~0 6) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,219 INFO L273 TraceCheckUtils]: 27: Hoare triple {8971#(and (= main_~i~0 6) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {8981#(and (= main_~i~0 7) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,219 INFO L273 TraceCheckUtils]: 28: Hoare triple {8981#(and (= main_~i~0 7) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {8981#(and (= main_~i~0 7) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,220 INFO L273 TraceCheckUtils]: 29: Hoare triple {8981#(and (= main_~i~0 7) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8981#(and (= main_~i~0 7) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,221 INFO L273 TraceCheckUtils]: 30: Hoare triple {8981#(and (= main_~i~0 7) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {8991#(and (= main_~i~0 8) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,221 INFO L273 TraceCheckUtils]: 31: Hoare triple {8991#(and (= main_~i~0 8) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0); {8991#(and (= main_~i~0 8) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,223 INFO L273 TraceCheckUtils]: 32: Hoare triple {8991#(and (= main_~i~0 8) (= |main_~#a~0.offset| 0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8998#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,223 INFO L273 TraceCheckUtils]: 33: Hoare triple {8998#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {8998#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,224 INFO L273 TraceCheckUtils]: 34: Hoare triple {8998#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < ~SIZE~0); {8998#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,225 INFO L273 TraceCheckUtils]: 35: Hoare triple {8998#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} ~i~0 := 0; {9008#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,226 INFO L273 TraceCheckUtils]: 36: Hoare triple {9008#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9008#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,227 INFO L256 TraceCheckUtils]: 37: Hoare triple {9008#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,228 INFO L273 TraceCheckUtils]: 38: Hoare triple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} ~cond := #in~cond; {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,228 INFO L273 TraceCheckUtils]: 39: Hoare triple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} assume !(0 == ~cond); {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,229 INFO L273 TraceCheckUtils]: 40: Hoare triple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} assume true; {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,229 INFO L268 TraceCheckUtils]: 41: Hoare quadruple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} {9008#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #65#return; {9008#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,230 INFO L273 TraceCheckUtils]: 42: Hoare triple {9008#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {9008#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,231 INFO L273 TraceCheckUtils]: 43: Hoare triple {9008#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 0) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {9034#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,232 INFO L273 TraceCheckUtils]: 44: Hoare triple {9034#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9034#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,233 INFO L256 TraceCheckUtils]: 45: Hoare triple {9034#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,234 INFO L273 TraceCheckUtils]: 46: Hoare triple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} ~cond := #in~cond; {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,235 INFO L273 TraceCheckUtils]: 47: Hoare triple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} assume !(0 == ~cond); {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,235 INFO L273 TraceCheckUtils]: 48: Hoare triple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} assume true; {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,236 INFO L268 TraceCheckUtils]: 49: Hoare quadruple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} {9034#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} #65#return; {9034#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,237 INFO L273 TraceCheckUtils]: 50: Hoare triple {9034#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {9034#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,238 INFO L273 TraceCheckUtils]: 51: Hoare triple {9034#(and (= main_~i~0 1) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {9059#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,239 INFO L273 TraceCheckUtils]: 52: Hoare triple {9059#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9059#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,240 INFO L256 TraceCheckUtils]: 53: Hoare triple {9059#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,240 INFO L273 TraceCheckUtils]: 54: Hoare triple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} ~cond := #in~cond; {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,241 INFO L273 TraceCheckUtils]: 55: Hoare triple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} assume !(0 == ~cond); {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,242 INFO L273 TraceCheckUtils]: 56: Hoare triple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} assume true; {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,242 INFO L268 TraceCheckUtils]: 57: Hoare quadruple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} {9059#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} #65#return; {9059#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,243 INFO L273 TraceCheckUtils]: 58: Hoare triple {9059#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {9059#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,244 INFO L273 TraceCheckUtils]: 59: Hoare triple {9059#(and (= main_~i~0 2) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {9084#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,245 INFO L273 TraceCheckUtils]: 60: Hoare triple {9084#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9084#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,246 INFO L256 TraceCheckUtils]: 61: Hoare triple {9084#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,247 INFO L273 TraceCheckUtils]: 62: Hoare triple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} ~cond := #in~cond; {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,247 INFO L273 TraceCheckUtils]: 63: Hoare triple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} assume !(0 == ~cond); {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,248 INFO L273 TraceCheckUtils]: 64: Hoare triple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} assume true; {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,249 INFO L268 TraceCheckUtils]: 65: Hoare quadruple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} {9084#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} #65#return; {9084#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,250 INFO L273 TraceCheckUtils]: 66: Hoare triple {9084#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {9084#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,250 INFO L273 TraceCheckUtils]: 67: Hoare triple {9084#(and (= main_~i~0 3) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {9109#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,251 INFO L273 TraceCheckUtils]: 68: Hoare triple {9109#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9109#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,252 INFO L256 TraceCheckUtils]: 69: Hoare triple {9109#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,253 INFO L273 TraceCheckUtils]: 70: Hoare triple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} ~cond := #in~cond; {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,254 INFO L273 TraceCheckUtils]: 71: Hoare triple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} assume !(0 == ~cond); {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,254 INFO L273 TraceCheckUtils]: 72: Hoare triple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} assume true; {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,255 INFO L268 TraceCheckUtils]: 73: Hoare quadruple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} {9109#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} #65#return; {9109#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,256 INFO L273 TraceCheckUtils]: 74: Hoare triple {9109#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {9109#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,257 INFO L273 TraceCheckUtils]: 75: Hoare triple {9109#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 4) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {9134#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,258 INFO L273 TraceCheckUtils]: 76: Hoare triple {9134#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9134#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,259 INFO L256 TraceCheckUtils]: 77: Hoare triple {9134#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,260 INFO L273 TraceCheckUtils]: 78: Hoare triple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} ~cond := #in~cond; {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,260 INFO L273 TraceCheckUtils]: 79: Hoare triple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} assume !(0 == ~cond); {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,261 INFO L273 TraceCheckUtils]: 80: Hoare triple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} assume true; {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,262 INFO L268 TraceCheckUtils]: 81: Hoare quadruple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} {9134#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} #65#return; {9134#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,262 INFO L273 TraceCheckUtils]: 82: Hoare triple {9134#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {9134#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,263 INFO L273 TraceCheckUtils]: 83: Hoare triple {9134#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 5) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {9159#(and (= main_~i~0 6) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,264 INFO L273 TraceCheckUtils]: 84: Hoare triple {9159#(and (= main_~i~0 6) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9159#(and (= main_~i~0 6) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,266 INFO L256 TraceCheckUtils]: 85: Hoare triple {9159#(and (= main_~i~0 6) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,266 INFO L273 TraceCheckUtils]: 86: Hoare triple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} ~cond := #in~cond; {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,267 INFO L273 TraceCheckUtils]: 87: Hoare triple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} assume !(0 == ~cond); {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,267 INFO L273 TraceCheckUtils]: 88: Hoare triple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} assume true; {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,268 INFO L268 TraceCheckUtils]: 89: Hoare quadruple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} {9159#(and (= main_~i~0 6) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} #65#return; {9159#(and (= main_~i~0 6) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,269 INFO L273 TraceCheckUtils]: 90: Hoare triple {9159#(and (= main_~i~0 6) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {9159#(and (= main_~i~0 6) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,270 INFO L273 TraceCheckUtils]: 91: Hoare triple {9159#(and (= main_~i~0 6) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {9184#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 7) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,270 INFO L273 TraceCheckUtils]: 92: Hoare triple {9184#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 7) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9184#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 7) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,272 INFO L256 TraceCheckUtils]: 93: Hoare triple {9184#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 7) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,272 INFO L273 TraceCheckUtils]: 94: Hoare triple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} ~cond := #in~cond; {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,273 INFO L273 TraceCheckUtils]: 95: Hoare triple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} assume !(0 == ~cond); {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,273 INFO L273 TraceCheckUtils]: 96: Hoare triple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} assume true; {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} is VALID [2018-11-23 12:20:07,274 INFO L268 TraceCheckUtils]: 97: Hoare quadruple {9015#(exists ((|v_main_~#a~0.base_BEFORE_CALL_29| Int)) (= 0 (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_29|) 32)))} {9184#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 7) (= |main_~#a~0.offset| 0))} #65#return; {9184#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 7) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,275 INFO L273 TraceCheckUtils]: 98: Hoare triple {9184#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 7) (= |main_~#a~0.offset| 0))} havoc #t~mem4; {9184#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 7) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,276 INFO L273 TraceCheckUtils]: 99: Hoare triple {9184#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= main_~i~0 7) (= |main_~#a~0.offset| 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {9209#(and (= main_~i~0 8) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:20:07,277 INFO L273 TraceCheckUtils]: 100: Hoare triple {9209#(and (= main_~i~0 8) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 32))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8888#(= |main_#t~mem4| 0)} is VALID [2018-11-23 12:20:07,278 INFO L256 TraceCheckUtils]: 101: Hoare triple {8888#(= |main_#t~mem4| 0)} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9216#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:20:07,278 INFO L273 TraceCheckUtils]: 102: Hoare triple {9216#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {9220#(= 1 __VERIFIER_assert_~cond)} is VALID [2018-11-23 12:20:07,279 INFO L273 TraceCheckUtils]: 103: Hoare triple {9220#(= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8865#false} is VALID [2018-11-23 12:20:07,279 INFO L273 TraceCheckUtils]: 104: Hoare triple {8865#false} assume !false; {8865#false} is VALID [2018-11-23 12:20:07,303 INFO L134 CoverageAnalysis]: Checked inductivity of 373 backedges. 0 proven. 261 refuted. 0 times theorem prover too weak. 112 trivial. 0 not checked. [2018-11-23 12:20:07,323 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:20:07,323 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [26, 25] total 48 [2018-11-23 12:20:07,324 INFO L78 Accepts]: Start accepts. Automaton has 48 states. Word has length 105 [2018-11-23 12:20:07,324 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:20:07,324 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 48 states. [2018-11-23 12:20:07,550 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 164 edges. 164 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:20:07,550 INFO L459 AbstractCegarLoop]: Interpolant automaton has 48 states [2018-11-23 12:20:07,550 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 48 interpolants. [2018-11-23 12:20:07,551 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=166, Invalid=2090, Unknown=0, NotChecked=0, Total=2256 [2018-11-23 12:20:07,552 INFO L87 Difference]: Start difference. First operand 109 states and 111 transitions. Second operand 48 states. [2018-11-23 12:20:15,676 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:15,679 INFO L93 Difference]: Finished difference Result 123 states and 125 transitions. [2018-11-23 12:20:15,679 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 45 states. [2018-11-23 12:20:15,679 INFO L78 Accepts]: Start accepts. Automaton has 48 states. Word has length 105 [2018-11-23 12:20:15,680 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:20:15,680 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 48 states. [2018-11-23 12:20:15,681 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 45 states to 45 states and 101 transitions. [2018-11-23 12:20:15,682 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 48 states. [2018-11-23 12:20:15,684 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 45 states to 45 states and 101 transitions. [2018-11-23 12:20:15,684 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 45 states and 101 transitions. [2018-11-23 12:20:15,870 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 101 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:20:15,873 INFO L225 Difference]: With dead ends: 123 [2018-11-23 12:20:15,874 INFO L226 Difference]: Without dead ends: 121 [2018-11-23 12:20:15,875 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 156 GetRequests, 70 SyntacticMatches, 17 SemanticMatches, 69 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1414 ImplicationChecksByTransitivity, 2.5s TimeCoverageRelationStatistics Valid=347, Invalid=4623, Unknown=0, NotChecked=0, Total=4970 [2018-11-23 12:20:15,876 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 121 states. [2018-11-23 12:20:16,317 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 121 to 117. [2018-11-23 12:20:16,317 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:20:16,318 INFO L82 GeneralOperation]: Start isEquivalent. First operand 121 states. Second operand 117 states. [2018-11-23 12:20:16,318 INFO L74 IsIncluded]: Start isIncluded. First operand 121 states. Second operand 117 states. [2018-11-23 12:20:16,318 INFO L87 Difference]: Start difference. First operand 121 states. Second operand 117 states. [2018-11-23 12:20:16,321 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:16,321 INFO L93 Difference]: Finished difference Result 121 states and 123 transitions. [2018-11-23 12:20:16,321 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 123 transitions. [2018-11-23 12:20:16,322 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:20:16,322 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:20:16,322 INFO L74 IsIncluded]: Start isIncluded. First operand 117 states. Second operand 121 states. [2018-11-23 12:20:16,322 INFO L87 Difference]: Start difference. First operand 117 states. Second operand 121 states. [2018-11-23 12:20:16,325 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:16,325 INFO L93 Difference]: Finished difference Result 121 states and 123 transitions. [2018-11-23 12:20:16,325 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 123 transitions. [2018-11-23 12:20:16,325 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:20:16,325 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:20:16,326 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:20:16,326 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:20:16,326 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 117 states. [2018-11-23 12:20:16,328 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 117 states to 117 states and 119 transitions. [2018-11-23 12:20:16,328 INFO L78 Accepts]: Start accepts. Automaton has 117 states and 119 transitions. Word has length 105 [2018-11-23 12:20:16,329 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:20:16,329 INFO L480 AbstractCegarLoop]: Abstraction has 117 states and 119 transitions. [2018-11-23 12:20:16,329 INFO L481 AbstractCegarLoop]: Interpolant automaton has 48 states. [2018-11-23 12:20:16,329 INFO L276 IsEmpty]: Start isEmpty. Operand 117 states and 119 transitions. [2018-11-23 12:20:16,330 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 114 [2018-11-23 12:20:16,330 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:20:16,331 INFO L402 BasicCegarLoop]: trace histogram [10, 10, 10, 9, 9, 9, 9, 9, 9, 9, 9, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:20:16,331 INFO L423 AbstractCegarLoop]: === Iteration 18 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:20:16,331 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:20:16,331 INFO L82 PathProgramCache]: Analyzing trace with hash 1315066914, now seen corresponding path program 14 times [2018-11-23 12:20:16,331 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:20:16,331 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:20:16,332 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:20:16,332 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:20:16,332 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:20:16,346 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:20:16,712 INFO L256 TraceCheckUtils]: 0: Hoare triple {9843#true} call ULTIMATE.init(); {9843#true} is VALID [2018-11-23 12:20:16,712 INFO L273 TraceCheckUtils]: 1: Hoare triple {9843#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {9843#true} is VALID [2018-11-23 12:20:16,713 INFO L273 TraceCheckUtils]: 2: Hoare triple {9843#true} assume true; {9843#true} is VALID [2018-11-23 12:20:16,713 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {9843#true} {9843#true} #61#return; {9843#true} is VALID [2018-11-23 12:20:16,713 INFO L256 TraceCheckUtils]: 4: Hoare triple {9843#true} call #t~ret5 := main(); {9843#true} is VALID [2018-11-23 12:20:16,713 INFO L273 TraceCheckUtils]: 5: Hoare triple {9843#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {9843#true} is VALID [2018-11-23 12:20:16,714 INFO L273 TraceCheckUtils]: 6: Hoare triple {9843#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {9845#(= main_~i~0 0)} is VALID [2018-11-23 12:20:16,714 INFO L273 TraceCheckUtils]: 7: Hoare triple {9845#(= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0); {9845#(= main_~i~0 0)} is VALID [2018-11-23 12:20:16,715 INFO L273 TraceCheckUtils]: 8: Hoare triple {9845#(= main_~i~0 0)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9845#(= main_~i~0 0)} is VALID [2018-11-23 12:20:16,715 INFO L273 TraceCheckUtils]: 9: Hoare triple {9845#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9846#(<= main_~i~0 1)} is VALID [2018-11-23 12:20:16,715 INFO L273 TraceCheckUtils]: 10: Hoare triple {9846#(<= main_~i~0 1)} assume !!(~i~0 < ~SIZE~0); {9846#(<= main_~i~0 1)} is VALID [2018-11-23 12:20:16,716 INFO L273 TraceCheckUtils]: 11: Hoare triple {9846#(<= main_~i~0 1)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9846#(<= main_~i~0 1)} is VALID [2018-11-23 12:20:16,716 INFO L273 TraceCheckUtils]: 12: Hoare triple {9846#(<= main_~i~0 1)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9847#(<= main_~i~0 2)} is VALID [2018-11-23 12:20:16,716 INFO L273 TraceCheckUtils]: 13: Hoare triple {9847#(<= main_~i~0 2)} assume !!(~i~0 < ~SIZE~0); {9847#(<= main_~i~0 2)} is VALID [2018-11-23 12:20:16,717 INFO L273 TraceCheckUtils]: 14: Hoare triple {9847#(<= main_~i~0 2)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9847#(<= main_~i~0 2)} is VALID [2018-11-23 12:20:16,717 INFO L273 TraceCheckUtils]: 15: Hoare triple {9847#(<= main_~i~0 2)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9848#(<= main_~i~0 3)} is VALID [2018-11-23 12:20:16,718 INFO L273 TraceCheckUtils]: 16: Hoare triple {9848#(<= main_~i~0 3)} assume !!(~i~0 < ~SIZE~0); {9848#(<= main_~i~0 3)} is VALID [2018-11-23 12:20:16,718 INFO L273 TraceCheckUtils]: 17: Hoare triple {9848#(<= main_~i~0 3)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9848#(<= main_~i~0 3)} is VALID [2018-11-23 12:20:16,719 INFO L273 TraceCheckUtils]: 18: Hoare triple {9848#(<= main_~i~0 3)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9849#(<= main_~i~0 4)} is VALID [2018-11-23 12:20:16,719 INFO L273 TraceCheckUtils]: 19: Hoare triple {9849#(<= main_~i~0 4)} assume !!(~i~0 < ~SIZE~0); {9849#(<= main_~i~0 4)} is VALID [2018-11-23 12:20:16,720 INFO L273 TraceCheckUtils]: 20: Hoare triple {9849#(<= main_~i~0 4)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9849#(<= main_~i~0 4)} is VALID [2018-11-23 12:20:16,721 INFO L273 TraceCheckUtils]: 21: Hoare triple {9849#(<= main_~i~0 4)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9850#(<= main_~i~0 5)} is VALID [2018-11-23 12:20:16,721 INFO L273 TraceCheckUtils]: 22: Hoare triple {9850#(<= main_~i~0 5)} assume !!(~i~0 < ~SIZE~0); {9850#(<= main_~i~0 5)} is VALID [2018-11-23 12:20:16,722 INFO L273 TraceCheckUtils]: 23: Hoare triple {9850#(<= main_~i~0 5)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9850#(<= main_~i~0 5)} is VALID [2018-11-23 12:20:16,722 INFO L273 TraceCheckUtils]: 24: Hoare triple {9850#(<= main_~i~0 5)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9851#(<= main_~i~0 6)} is VALID [2018-11-23 12:20:16,723 INFO L273 TraceCheckUtils]: 25: Hoare triple {9851#(<= main_~i~0 6)} assume !!(~i~0 < ~SIZE~0); {9851#(<= main_~i~0 6)} is VALID [2018-11-23 12:20:16,724 INFO L273 TraceCheckUtils]: 26: Hoare triple {9851#(<= main_~i~0 6)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9851#(<= main_~i~0 6)} is VALID [2018-11-23 12:20:16,724 INFO L273 TraceCheckUtils]: 27: Hoare triple {9851#(<= main_~i~0 6)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9852#(<= main_~i~0 7)} is VALID [2018-11-23 12:20:16,725 INFO L273 TraceCheckUtils]: 28: Hoare triple {9852#(<= main_~i~0 7)} assume !!(~i~0 < ~SIZE~0); {9852#(<= main_~i~0 7)} is VALID [2018-11-23 12:20:16,725 INFO L273 TraceCheckUtils]: 29: Hoare triple {9852#(<= main_~i~0 7)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9852#(<= main_~i~0 7)} is VALID [2018-11-23 12:20:16,726 INFO L273 TraceCheckUtils]: 30: Hoare triple {9852#(<= main_~i~0 7)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9853#(<= main_~i~0 8)} is VALID [2018-11-23 12:20:16,727 INFO L273 TraceCheckUtils]: 31: Hoare triple {9853#(<= main_~i~0 8)} assume !!(~i~0 < ~SIZE~0); {9853#(<= main_~i~0 8)} is VALID [2018-11-23 12:20:16,727 INFO L273 TraceCheckUtils]: 32: Hoare triple {9853#(<= main_~i~0 8)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9853#(<= main_~i~0 8)} is VALID [2018-11-23 12:20:16,728 INFO L273 TraceCheckUtils]: 33: Hoare triple {9853#(<= main_~i~0 8)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9854#(<= main_~i~0 9)} is VALID [2018-11-23 12:20:16,729 INFO L273 TraceCheckUtils]: 34: Hoare triple {9854#(<= main_~i~0 9)} assume !(~i~0 < ~SIZE~0); {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:16,729 INFO L273 TraceCheckUtils]: 35: Hoare triple {9855#(<= ~SIZE~0 9)} ~i~0 := 0; {9856#(and (<= ~SIZE~0 9) (= main_~i~0 0))} is VALID [2018-11-23 12:20:16,730 INFO L273 TraceCheckUtils]: 36: Hoare triple {9856#(and (<= ~SIZE~0 9) (= main_~i~0 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9856#(and (<= ~SIZE~0 9) (= main_~i~0 0))} is VALID [2018-11-23 12:20:16,730 INFO L256 TraceCheckUtils]: 37: Hoare triple {9856#(and (<= ~SIZE~0 9) (= main_~i~0 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9843#true} is VALID [2018-11-23 12:20:16,731 INFO L273 TraceCheckUtils]: 38: Hoare triple {9843#true} ~cond := #in~cond; {9843#true} is VALID [2018-11-23 12:20:16,731 INFO L273 TraceCheckUtils]: 39: Hoare triple {9843#true} assume !(0 == ~cond); {9843#true} is VALID [2018-11-23 12:20:16,731 INFO L273 TraceCheckUtils]: 40: Hoare triple {9843#true} assume true; {9843#true} is VALID [2018-11-23 12:20:16,732 INFO L268 TraceCheckUtils]: 41: Hoare quadruple {9843#true} {9856#(and (<= ~SIZE~0 9) (= main_~i~0 0))} #65#return; {9856#(and (<= ~SIZE~0 9) (= main_~i~0 0))} is VALID [2018-11-23 12:20:16,733 INFO L273 TraceCheckUtils]: 42: Hoare triple {9856#(and (<= ~SIZE~0 9) (= main_~i~0 0))} havoc #t~mem4; {9856#(and (<= ~SIZE~0 9) (= main_~i~0 0))} is VALID [2018-11-23 12:20:16,733 INFO L273 TraceCheckUtils]: 43: Hoare triple {9856#(and (<= ~SIZE~0 9) (= main_~i~0 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {9857#(<= ~SIZE~0 (+ main_~i~0 8))} is VALID [2018-11-23 12:20:16,734 INFO L273 TraceCheckUtils]: 44: Hoare triple {9857#(<= ~SIZE~0 (+ main_~i~0 8))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9857#(<= ~SIZE~0 (+ main_~i~0 8))} is VALID [2018-11-23 12:20:16,734 INFO L256 TraceCheckUtils]: 45: Hoare triple {9857#(<= ~SIZE~0 (+ main_~i~0 8))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9843#true} is VALID [2018-11-23 12:20:16,734 INFO L273 TraceCheckUtils]: 46: Hoare triple {9843#true} ~cond := #in~cond; {9843#true} is VALID [2018-11-23 12:20:16,735 INFO L273 TraceCheckUtils]: 47: Hoare triple {9843#true} assume !(0 == ~cond); {9843#true} is VALID [2018-11-23 12:20:16,735 INFO L273 TraceCheckUtils]: 48: Hoare triple {9843#true} assume true; {9843#true} is VALID [2018-11-23 12:20:16,736 INFO L268 TraceCheckUtils]: 49: Hoare quadruple {9843#true} {9857#(<= ~SIZE~0 (+ main_~i~0 8))} #65#return; {9857#(<= ~SIZE~0 (+ main_~i~0 8))} is VALID [2018-11-23 12:20:16,736 INFO L273 TraceCheckUtils]: 50: Hoare triple {9857#(<= ~SIZE~0 (+ main_~i~0 8))} havoc #t~mem4; {9857#(<= ~SIZE~0 (+ main_~i~0 8))} is VALID [2018-11-23 12:20:16,737 INFO L273 TraceCheckUtils]: 51: Hoare triple {9857#(<= ~SIZE~0 (+ main_~i~0 8))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {9858#(<= ~SIZE~0 (+ main_~i~0 7))} is VALID [2018-11-23 12:20:16,738 INFO L273 TraceCheckUtils]: 52: Hoare triple {9858#(<= ~SIZE~0 (+ main_~i~0 7))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9858#(<= ~SIZE~0 (+ main_~i~0 7))} is VALID [2018-11-23 12:20:16,738 INFO L256 TraceCheckUtils]: 53: Hoare triple {9858#(<= ~SIZE~0 (+ main_~i~0 7))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9843#true} is VALID [2018-11-23 12:20:16,738 INFO L273 TraceCheckUtils]: 54: Hoare triple {9843#true} ~cond := #in~cond; {9843#true} is VALID [2018-11-23 12:20:16,738 INFO L273 TraceCheckUtils]: 55: Hoare triple {9843#true} assume !(0 == ~cond); {9843#true} is VALID [2018-11-23 12:20:16,738 INFO L273 TraceCheckUtils]: 56: Hoare triple {9843#true} assume true; {9843#true} is VALID [2018-11-23 12:20:16,739 INFO L268 TraceCheckUtils]: 57: Hoare quadruple {9843#true} {9858#(<= ~SIZE~0 (+ main_~i~0 7))} #65#return; {9858#(<= ~SIZE~0 (+ main_~i~0 7))} is VALID [2018-11-23 12:20:16,740 INFO L273 TraceCheckUtils]: 58: Hoare triple {9858#(<= ~SIZE~0 (+ main_~i~0 7))} havoc #t~mem4; {9858#(<= ~SIZE~0 (+ main_~i~0 7))} is VALID [2018-11-23 12:20:16,741 INFO L273 TraceCheckUtils]: 59: Hoare triple {9858#(<= ~SIZE~0 (+ main_~i~0 7))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {9859#(<= ~SIZE~0 (+ main_~i~0 6))} is VALID [2018-11-23 12:20:16,741 INFO L273 TraceCheckUtils]: 60: Hoare triple {9859#(<= ~SIZE~0 (+ main_~i~0 6))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9859#(<= ~SIZE~0 (+ main_~i~0 6))} is VALID [2018-11-23 12:20:16,741 INFO L256 TraceCheckUtils]: 61: Hoare triple {9859#(<= ~SIZE~0 (+ main_~i~0 6))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9843#true} is VALID [2018-11-23 12:20:16,742 INFO L273 TraceCheckUtils]: 62: Hoare triple {9843#true} ~cond := #in~cond; {9843#true} is VALID [2018-11-23 12:20:16,742 INFO L273 TraceCheckUtils]: 63: Hoare triple {9843#true} assume !(0 == ~cond); {9843#true} is VALID [2018-11-23 12:20:16,742 INFO L273 TraceCheckUtils]: 64: Hoare triple {9843#true} assume true; {9843#true} is VALID [2018-11-23 12:20:16,743 INFO L268 TraceCheckUtils]: 65: Hoare quadruple {9843#true} {9859#(<= ~SIZE~0 (+ main_~i~0 6))} #65#return; {9859#(<= ~SIZE~0 (+ main_~i~0 6))} is VALID [2018-11-23 12:20:16,743 INFO L273 TraceCheckUtils]: 66: Hoare triple {9859#(<= ~SIZE~0 (+ main_~i~0 6))} havoc #t~mem4; {9859#(<= ~SIZE~0 (+ main_~i~0 6))} is VALID [2018-11-23 12:20:16,744 INFO L273 TraceCheckUtils]: 67: Hoare triple {9859#(<= ~SIZE~0 (+ main_~i~0 6))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {9860#(<= ~SIZE~0 (+ main_~i~0 5))} is VALID [2018-11-23 12:20:16,745 INFO L273 TraceCheckUtils]: 68: Hoare triple {9860#(<= ~SIZE~0 (+ main_~i~0 5))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9860#(<= ~SIZE~0 (+ main_~i~0 5))} is VALID [2018-11-23 12:20:16,745 INFO L256 TraceCheckUtils]: 69: Hoare triple {9860#(<= ~SIZE~0 (+ main_~i~0 5))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9843#true} is VALID [2018-11-23 12:20:16,745 INFO L273 TraceCheckUtils]: 70: Hoare triple {9843#true} ~cond := #in~cond; {9843#true} is VALID [2018-11-23 12:20:16,746 INFO L273 TraceCheckUtils]: 71: Hoare triple {9843#true} assume !(0 == ~cond); {9843#true} is VALID [2018-11-23 12:20:16,746 INFO L273 TraceCheckUtils]: 72: Hoare triple {9843#true} assume true; {9843#true} is VALID [2018-11-23 12:20:16,747 INFO L268 TraceCheckUtils]: 73: Hoare quadruple {9843#true} {9860#(<= ~SIZE~0 (+ main_~i~0 5))} #65#return; {9860#(<= ~SIZE~0 (+ main_~i~0 5))} is VALID [2018-11-23 12:20:16,747 INFO L273 TraceCheckUtils]: 74: Hoare triple {9860#(<= ~SIZE~0 (+ main_~i~0 5))} havoc #t~mem4; {9860#(<= ~SIZE~0 (+ main_~i~0 5))} is VALID [2018-11-23 12:20:16,748 INFO L273 TraceCheckUtils]: 75: Hoare triple {9860#(<= ~SIZE~0 (+ main_~i~0 5))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {9861#(<= ~SIZE~0 (+ main_~i~0 4))} is VALID [2018-11-23 12:20:16,749 INFO L273 TraceCheckUtils]: 76: Hoare triple {9861#(<= ~SIZE~0 (+ main_~i~0 4))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9861#(<= ~SIZE~0 (+ main_~i~0 4))} is VALID [2018-11-23 12:20:16,749 INFO L256 TraceCheckUtils]: 77: Hoare triple {9861#(<= ~SIZE~0 (+ main_~i~0 4))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9843#true} is VALID [2018-11-23 12:20:16,749 INFO L273 TraceCheckUtils]: 78: Hoare triple {9843#true} ~cond := #in~cond; {9843#true} is VALID [2018-11-23 12:20:16,749 INFO L273 TraceCheckUtils]: 79: Hoare triple {9843#true} assume !(0 == ~cond); {9843#true} is VALID [2018-11-23 12:20:16,749 INFO L273 TraceCheckUtils]: 80: Hoare triple {9843#true} assume true; {9843#true} is VALID [2018-11-23 12:20:16,750 INFO L268 TraceCheckUtils]: 81: Hoare quadruple {9843#true} {9861#(<= ~SIZE~0 (+ main_~i~0 4))} #65#return; {9861#(<= ~SIZE~0 (+ main_~i~0 4))} is VALID [2018-11-23 12:20:16,751 INFO L273 TraceCheckUtils]: 82: Hoare triple {9861#(<= ~SIZE~0 (+ main_~i~0 4))} havoc #t~mem4; {9861#(<= ~SIZE~0 (+ main_~i~0 4))} is VALID [2018-11-23 12:20:16,751 INFO L273 TraceCheckUtils]: 83: Hoare triple {9861#(<= ~SIZE~0 (+ main_~i~0 4))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {9862#(<= ~SIZE~0 (+ main_~i~0 3))} is VALID [2018-11-23 12:20:16,751 INFO L273 TraceCheckUtils]: 84: Hoare triple {9862#(<= ~SIZE~0 (+ main_~i~0 3))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9862#(<= ~SIZE~0 (+ main_~i~0 3))} is VALID [2018-11-23 12:20:16,752 INFO L256 TraceCheckUtils]: 85: Hoare triple {9862#(<= ~SIZE~0 (+ main_~i~0 3))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9843#true} is VALID [2018-11-23 12:20:16,752 INFO L273 TraceCheckUtils]: 86: Hoare triple {9843#true} ~cond := #in~cond; {9843#true} is VALID [2018-11-23 12:20:16,752 INFO L273 TraceCheckUtils]: 87: Hoare triple {9843#true} assume !(0 == ~cond); {9843#true} is VALID [2018-11-23 12:20:16,752 INFO L273 TraceCheckUtils]: 88: Hoare triple {9843#true} assume true; {9843#true} is VALID [2018-11-23 12:20:16,752 INFO L268 TraceCheckUtils]: 89: Hoare quadruple {9843#true} {9862#(<= ~SIZE~0 (+ main_~i~0 3))} #65#return; {9862#(<= ~SIZE~0 (+ main_~i~0 3))} is VALID [2018-11-23 12:20:16,753 INFO L273 TraceCheckUtils]: 90: Hoare triple {9862#(<= ~SIZE~0 (+ main_~i~0 3))} havoc #t~mem4; {9862#(<= ~SIZE~0 (+ main_~i~0 3))} is VALID [2018-11-23 12:20:16,753 INFO L273 TraceCheckUtils]: 91: Hoare triple {9862#(<= ~SIZE~0 (+ main_~i~0 3))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {9863#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:20:16,754 INFO L273 TraceCheckUtils]: 92: Hoare triple {9863#(<= ~SIZE~0 (+ main_~i~0 2))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9863#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:20:16,754 INFO L256 TraceCheckUtils]: 93: Hoare triple {9863#(<= ~SIZE~0 (+ main_~i~0 2))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9843#true} is VALID [2018-11-23 12:20:16,754 INFO L273 TraceCheckUtils]: 94: Hoare triple {9843#true} ~cond := #in~cond; {9843#true} is VALID [2018-11-23 12:20:16,754 INFO L273 TraceCheckUtils]: 95: Hoare triple {9843#true} assume !(0 == ~cond); {9843#true} is VALID [2018-11-23 12:20:16,755 INFO L273 TraceCheckUtils]: 96: Hoare triple {9843#true} assume true; {9843#true} is VALID [2018-11-23 12:20:16,756 INFO L268 TraceCheckUtils]: 97: Hoare quadruple {9843#true} {9863#(<= ~SIZE~0 (+ main_~i~0 2))} #65#return; {9863#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:20:16,756 INFO L273 TraceCheckUtils]: 98: Hoare triple {9863#(<= ~SIZE~0 (+ main_~i~0 2))} havoc #t~mem4; {9863#(<= ~SIZE~0 (+ main_~i~0 2))} is VALID [2018-11-23 12:20:16,757 INFO L273 TraceCheckUtils]: 99: Hoare triple {9863#(<= ~SIZE~0 (+ main_~i~0 2))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {9864#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:20:16,757 INFO L273 TraceCheckUtils]: 100: Hoare triple {9864#(<= ~SIZE~0 (+ main_~i~0 1))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9864#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:20:16,758 INFO L256 TraceCheckUtils]: 101: Hoare triple {9864#(<= ~SIZE~0 (+ main_~i~0 1))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9843#true} is VALID [2018-11-23 12:20:16,758 INFO L273 TraceCheckUtils]: 102: Hoare triple {9843#true} ~cond := #in~cond; {9843#true} is VALID [2018-11-23 12:20:16,758 INFO L273 TraceCheckUtils]: 103: Hoare triple {9843#true} assume !(0 == ~cond); {9843#true} is VALID [2018-11-23 12:20:16,758 INFO L273 TraceCheckUtils]: 104: Hoare triple {9843#true} assume true; {9843#true} is VALID [2018-11-23 12:20:16,759 INFO L268 TraceCheckUtils]: 105: Hoare quadruple {9843#true} {9864#(<= ~SIZE~0 (+ main_~i~0 1))} #65#return; {9864#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:20:16,760 INFO L273 TraceCheckUtils]: 106: Hoare triple {9864#(<= ~SIZE~0 (+ main_~i~0 1))} havoc #t~mem4; {9864#(<= ~SIZE~0 (+ main_~i~0 1))} is VALID [2018-11-23 12:20:16,760 INFO L273 TraceCheckUtils]: 107: Hoare triple {9864#(<= ~SIZE~0 (+ main_~i~0 1))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {9865#(<= ~SIZE~0 main_~i~0)} is VALID [2018-11-23 12:20:16,761 INFO L273 TraceCheckUtils]: 108: Hoare triple {9865#(<= ~SIZE~0 main_~i~0)} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9844#false} is VALID [2018-11-23 12:20:16,761 INFO L256 TraceCheckUtils]: 109: Hoare triple {9844#false} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9844#false} is VALID [2018-11-23 12:20:16,762 INFO L273 TraceCheckUtils]: 110: Hoare triple {9844#false} ~cond := #in~cond; {9844#false} is VALID [2018-11-23 12:20:16,762 INFO L273 TraceCheckUtils]: 111: Hoare triple {9844#false} assume 0 == ~cond; {9844#false} is VALID [2018-11-23 12:20:16,762 INFO L273 TraceCheckUtils]: 112: Hoare triple {9844#false} assume !false; {9844#false} is VALID [2018-11-23 12:20:16,772 INFO L134 CoverageAnalysis]: Checked inductivity of 441 backedges. 147 proven. 150 refuted. 0 times theorem prover too weak. 144 trivial. 0 not checked. [2018-11-23 12:20:16,772 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:20:16,772 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 17 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 17 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:20:16,781 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:20:16,817 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:20:16,818 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:20:16,839 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:20:16,840 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:20:17,423 INFO L256 TraceCheckUtils]: 0: Hoare triple {9843#true} call ULTIMATE.init(); {9843#true} is VALID [2018-11-23 12:20:17,423 INFO L273 TraceCheckUtils]: 1: Hoare triple {9843#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {9843#true} is VALID [2018-11-23 12:20:17,424 INFO L273 TraceCheckUtils]: 2: Hoare triple {9843#true} assume true; {9843#true} is VALID [2018-11-23 12:20:17,424 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {9843#true} {9843#true} #61#return; {9843#true} is VALID [2018-11-23 12:20:17,424 INFO L256 TraceCheckUtils]: 4: Hoare triple {9843#true} call #t~ret5 := main(); {9843#true} is VALID [2018-11-23 12:20:17,424 INFO L273 TraceCheckUtils]: 5: Hoare triple {9843#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {9843#true} is VALID [2018-11-23 12:20:17,425 INFO L273 TraceCheckUtils]: 6: Hoare triple {9843#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {9887#(<= main_~i~0 0)} is VALID [2018-11-23 12:20:17,425 INFO L273 TraceCheckUtils]: 7: Hoare triple {9887#(<= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0); {9887#(<= main_~i~0 0)} is VALID [2018-11-23 12:20:17,425 INFO L273 TraceCheckUtils]: 8: Hoare triple {9887#(<= main_~i~0 0)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9887#(<= main_~i~0 0)} is VALID [2018-11-23 12:20:17,426 INFO L273 TraceCheckUtils]: 9: Hoare triple {9887#(<= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9846#(<= main_~i~0 1)} is VALID [2018-11-23 12:20:17,426 INFO L273 TraceCheckUtils]: 10: Hoare triple {9846#(<= main_~i~0 1)} assume !!(~i~0 < ~SIZE~0); {9846#(<= main_~i~0 1)} is VALID [2018-11-23 12:20:17,427 INFO L273 TraceCheckUtils]: 11: Hoare triple {9846#(<= main_~i~0 1)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9846#(<= main_~i~0 1)} is VALID [2018-11-23 12:20:17,427 INFO L273 TraceCheckUtils]: 12: Hoare triple {9846#(<= main_~i~0 1)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9847#(<= main_~i~0 2)} is VALID [2018-11-23 12:20:17,428 INFO L273 TraceCheckUtils]: 13: Hoare triple {9847#(<= main_~i~0 2)} assume !!(~i~0 < ~SIZE~0); {9847#(<= main_~i~0 2)} is VALID [2018-11-23 12:20:17,428 INFO L273 TraceCheckUtils]: 14: Hoare triple {9847#(<= main_~i~0 2)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9847#(<= main_~i~0 2)} is VALID [2018-11-23 12:20:17,429 INFO L273 TraceCheckUtils]: 15: Hoare triple {9847#(<= main_~i~0 2)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9848#(<= main_~i~0 3)} is VALID [2018-11-23 12:20:17,430 INFO L273 TraceCheckUtils]: 16: Hoare triple {9848#(<= main_~i~0 3)} assume !!(~i~0 < ~SIZE~0); {9848#(<= main_~i~0 3)} is VALID [2018-11-23 12:20:17,430 INFO L273 TraceCheckUtils]: 17: Hoare triple {9848#(<= main_~i~0 3)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9848#(<= main_~i~0 3)} is VALID [2018-11-23 12:20:17,431 INFO L273 TraceCheckUtils]: 18: Hoare triple {9848#(<= main_~i~0 3)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9849#(<= main_~i~0 4)} is VALID [2018-11-23 12:20:17,431 INFO L273 TraceCheckUtils]: 19: Hoare triple {9849#(<= main_~i~0 4)} assume !!(~i~0 < ~SIZE~0); {9849#(<= main_~i~0 4)} is VALID [2018-11-23 12:20:17,432 INFO L273 TraceCheckUtils]: 20: Hoare triple {9849#(<= main_~i~0 4)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9849#(<= main_~i~0 4)} is VALID [2018-11-23 12:20:17,433 INFO L273 TraceCheckUtils]: 21: Hoare triple {9849#(<= main_~i~0 4)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9850#(<= main_~i~0 5)} is VALID [2018-11-23 12:20:17,433 INFO L273 TraceCheckUtils]: 22: Hoare triple {9850#(<= main_~i~0 5)} assume !!(~i~0 < ~SIZE~0); {9850#(<= main_~i~0 5)} is VALID [2018-11-23 12:20:17,434 INFO L273 TraceCheckUtils]: 23: Hoare triple {9850#(<= main_~i~0 5)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9850#(<= main_~i~0 5)} is VALID [2018-11-23 12:20:17,435 INFO L273 TraceCheckUtils]: 24: Hoare triple {9850#(<= main_~i~0 5)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9851#(<= main_~i~0 6)} is VALID [2018-11-23 12:20:17,435 INFO L273 TraceCheckUtils]: 25: Hoare triple {9851#(<= main_~i~0 6)} assume !!(~i~0 < ~SIZE~0); {9851#(<= main_~i~0 6)} is VALID [2018-11-23 12:20:17,436 INFO L273 TraceCheckUtils]: 26: Hoare triple {9851#(<= main_~i~0 6)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9851#(<= main_~i~0 6)} is VALID [2018-11-23 12:20:17,436 INFO L273 TraceCheckUtils]: 27: Hoare triple {9851#(<= main_~i~0 6)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9852#(<= main_~i~0 7)} is VALID [2018-11-23 12:20:17,437 INFO L273 TraceCheckUtils]: 28: Hoare triple {9852#(<= main_~i~0 7)} assume !!(~i~0 < ~SIZE~0); {9852#(<= main_~i~0 7)} is VALID [2018-11-23 12:20:17,437 INFO L273 TraceCheckUtils]: 29: Hoare triple {9852#(<= main_~i~0 7)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9852#(<= main_~i~0 7)} is VALID [2018-11-23 12:20:17,438 INFO L273 TraceCheckUtils]: 30: Hoare triple {9852#(<= main_~i~0 7)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9853#(<= main_~i~0 8)} is VALID [2018-11-23 12:20:17,439 INFO L273 TraceCheckUtils]: 31: Hoare triple {9853#(<= main_~i~0 8)} assume !!(~i~0 < ~SIZE~0); {9853#(<= main_~i~0 8)} is VALID [2018-11-23 12:20:17,439 INFO L273 TraceCheckUtils]: 32: Hoare triple {9853#(<= main_~i~0 8)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9853#(<= main_~i~0 8)} is VALID [2018-11-23 12:20:17,440 INFO L273 TraceCheckUtils]: 33: Hoare triple {9853#(<= main_~i~0 8)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {9854#(<= main_~i~0 9)} is VALID [2018-11-23 12:20:17,441 INFO L273 TraceCheckUtils]: 34: Hoare triple {9854#(<= main_~i~0 9)} assume !(~i~0 < ~SIZE~0); {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,441 INFO L273 TraceCheckUtils]: 35: Hoare triple {9855#(<= ~SIZE~0 9)} ~i~0 := 0; {9975#(and (<= 0 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,442 INFO L273 TraceCheckUtils]: 36: Hoare triple {9975#(and (<= 0 main_~i~0) (<= ~SIZE~0 9))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9975#(and (<= 0 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,443 INFO L256 TraceCheckUtils]: 37: Hoare triple {9975#(and (<= 0 main_~i~0) (<= ~SIZE~0 9))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,444 INFO L273 TraceCheckUtils]: 38: Hoare triple {9855#(<= ~SIZE~0 9)} ~cond := #in~cond; {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,445 INFO L273 TraceCheckUtils]: 39: Hoare triple {9855#(<= ~SIZE~0 9)} assume !(0 == ~cond); {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,445 INFO L273 TraceCheckUtils]: 40: Hoare triple {9855#(<= ~SIZE~0 9)} assume true; {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,446 INFO L268 TraceCheckUtils]: 41: Hoare quadruple {9855#(<= ~SIZE~0 9)} {9975#(and (<= 0 main_~i~0) (<= ~SIZE~0 9))} #65#return; {9975#(and (<= 0 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,447 INFO L273 TraceCheckUtils]: 42: Hoare triple {9975#(and (<= 0 main_~i~0) (<= ~SIZE~0 9))} havoc #t~mem4; {9975#(and (<= 0 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,447 INFO L273 TraceCheckUtils]: 43: Hoare triple {9975#(and (<= 0 main_~i~0) (<= ~SIZE~0 9))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {10000#(and (<= 1 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,448 INFO L273 TraceCheckUtils]: 44: Hoare triple {10000#(and (<= 1 main_~i~0) (<= ~SIZE~0 9))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10000#(and (<= 1 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,449 INFO L256 TraceCheckUtils]: 45: Hoare triple {10000#(and (<= 1 main_~i~0) (<= ~SIZE~0 9))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,450 INFO L273 TraceCheckUtils]: 46: Hoare triple {9855#(<= ~SIZE~0 9)} ~cond := #in~cond; {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,450 INFO L273 TraceCheckUtils]: 47: Hoare triple {9855#(<= ~SIZE~0 9)} assume !(0 == ~cond); {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,451 INFO L273 TraceCheckUtils]: 48: Hoare triple {9855#(<= ~SIZE~0 9)} assume true; {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,452 INFO L268 TraceCheckUtils]: 49: Hoare quadruple {9855#(<= ~SIZE~0 9)} {10000#(and (<= 1 main_~i~0) (<= ~SIZE~0 9))} #65#return; {10000#(and (<= 1 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,452 INFO L273 TraceCheckUtils]: 50: Hoare triple {10000#(and (<= 1 main_~i~0) (<= ~SIZE~0 9))} havoc #t~mem4; {10000#(and (<= 1 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,453 INFO L273 TraceCheckUtils]: 51: Hoare triple {10000#(and (<= 1 main_~i~0) (<= ~SIZE~0 9))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {10025#(and (<= 2 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,454 INFO L273 TraceCheckUtils]: 52: Hoare triple {10025#(and (<= 2 main_~i~0) (<= ~SIZE~0 9))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10025#(and (<= 2 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,455 INFO L256 TraceCheckUtils]: 53: Hoare triple {10025#(and (<= 2 main_~i~0) (<= ~SIZE~0 9))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,456 INFO L273 TraceCheckUtils]: 54: Hoare triple {9855#(<= ~SIZE~0 9)} ~cond := #in~cond; {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,456 INFO L273 TraceCheckUtils]: 55: Hoare triple {9855#(<= ~SIZE~0 9)} assume !(0 == ~cond); {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,457 INFO L273 TraceCheckUtils]: 56: Hoare triple {9855#(<= ~SIZE~0 9)} assume true; {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,458 INFO L268 TraceCheckUtils]: 57: Hoare quadruple {9855#(<= ~SIZE~0 9)} {10025#(and (<= 2 main_~i~0) (<= ~SIZE~0 9))} #65#return; {10025#(and (<= 2 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,458 INFO L273 TraceCheckUtils]: 58: Hoare triple {10025#(and (<= 2 main_~i~0) (<= ~SIZE~0 9))} havoc #t~mem4; {10025#(and (<= 2 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,459 INFO L273 TraceCheckUtils]: 59: Hoare triple {10025#(and (<= 2 main_~i~0) (<= ~SIZE~0 9))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {10050#(and (<= ~SIZE~0 9) (<= 3 main_~i~0))} is VALID [2018-11-23 12:20:17,460 INFO L273 TraceCheckUtils]: 60: Hoare triple {10050#(and (<= ~SIZE~0 9) (<= 3 main_~i~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10050#(and (<= ~SIZE~0 9) (<= 3 main_~i~0))} is VALID [2018-11-23 12:20:17,461 INFO L256 TraceCheckUtils]: 61: Hoare triple {10050#(and (<= ~SIZE~0 9) (<= 3 main_~i~0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,462 INFO L273 TraceCheckUtils]: 62: Hoare triple {9855#(<= ~SIZE~0 9)} ~cond := #in~cond; {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,462 INFO L273 TraceCheckUtils]: 63: Hoare triple {9855#(<= ~SIZE~0 9)} assume !(0 == ~cond); {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,463 INFO L273 TraceCheckUtils]: 64: Hoare triple {9855#(<= ~SIZE~0 9)} assume true; {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,463 INFO L268 TraceCheckUtils]: 65: Hoare quadruple {9855#(<= ~SIZE~0 9)} {10050#(and (<= ~SIZE~0 9) (<= 3 main_~i~0))} #65#return; {10050#(and (<= ~SIZE~0 9) (<= 3 main_~i~0))} is VALID [2018-11-23 12:20:17,464 INFO L273 TraceCheckUtils]: 66: Hoare triple {10050#(and (<= ~SIZE~0 9) (<= 3 main_~i~0))} havoc #t~mem4; {10050#(and (<= ~SIZE~0 9) (<= 3 main_~i~0))} is VALID [2018-11-23 12:20:17,465 INFO L273 TraceCheckUtils]: 67: Hoare triple {10050#(and (<= ~SIZE~0 9) (<= 3 main_~i~0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {10075#(and (<= 4 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,466 INFO L273 TraceCheckUtils]: 68: Hoare triple {10075#(and (<= 4 main_~i~0) (<= ~SIZE~0 9))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10075#(and (<= 4 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,467 INFO L256 TraceCheckUtils]: 69: Hoare triple {10075#(and (<= 4 main_~i~0) (<= ~SIZE~0 9))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,467 INFO L273 TraceCheckUtils]: 70: Hoare triple {9855#(<= ~SIZE~0 9)} ~cond := #in~cond; {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,468 INFO L273 TraceCheckUtils]: 71: Hoare triple {9855#(<= ~SIZE~0 9)} assume !(0 == ~cond); {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,469 INFO L273 TraceCheckUtils]: 72: Hoare triple {9855#(<= ~SIZE~0 9)} assume true; {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,477 INFO L268 TraceCheckUtils]: 73: Hoare quadruple {9855#(<= ~SIZE~0 9)} {10075#(and (<= 4 main_~i~0) (<= ~SIZE~0 9))} #65#return; {10075#(and (<= 4 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,478 INFO L273 TraceCheckUtils]: 74: Hoare triple {10075#(and (<= 4 main_~i~0) (<= ~SIZE~0 9))} havoc #t~mem4; {10075#(and (<= 4 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,479 INFO L273 TraceCheckUtils]: 75: Hoare triple {10075#(and (<= 4 main_~i~0) (<= ~SIZE~0 9))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {10100#(and (<= 5 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,479 INFO L273 TraceCheckUtils]: 76: Hoare triple {10100#(and (<= 5 main_~i~0) (<= ~SIZE~0 9))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10100#(and (<= 5 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,480 INFO L256 TraceCheckUtils]: 77: Hoare triple {10100#(and (<= 5 main_~i~0) (<= ~SIZE~0 9))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,480 INFO L273 TraceCheckUtils]: 78: Hoare triple {9855#(<= ~SIZE~0 9)} ~cond := #in~cond; {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,480 INFO L273 TraceCheckUtils]: 79: Hoare triple {9855#(<= ~SIZE~0 9)} assume !(0 == ~cond); {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,481 INFO L273 TraceCheckUtils]: 80: Hoare triple {9855#(<= ~SIZE~0 9)} assume true; {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,482 INFO L268 TraceCheckUtils]: 81: Hoare quadruple {9855#(<= ~SIZE~0 9)} {10100#(and (<= 5 main_~i~0) (<= ~SIZE~0 9))} #65#return; {10100#(and (<= 5 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,482 INFO L273 TraceCheckUtils]: 82: Hoare triple {10100#(and (<= 5 main_~i~0) (<= ~SIZE~0 9))} havoc #t~mem4; {10100#(and (<= 5 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,483 INFO L273 TraceCheckUtils]: 83: Hoare triple {10100#(and (<= 5 main_~i~0) (<= ~SIZE~0 9))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {10125#(and (<= ~SIZE~0 9) (<= 6 main_~i~0))} is VALID [2018-11-23 12:20:17,484 INFO L273 TraceCheckUtils]: 84: Hoare triple {10125#(and (<= ~SIZE~0 9) (<= 6 main_~i~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10125#(and (<= ~SIZE~0 9) (<= 6 main_~i~0))} is VALID [2018-11-23 12:20:17,485 INFO L256 TraceCheckUtils]: 85: Hoare triple {10125#(and (<= ~SIZE~0 9) (<= 6 main_~i~0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,486 INFO L273 TraceCheckUtils]: 86: Hoare triple {9855#(<= ~SIZE~0 9)} ~cond := #in~cond; {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,486 INFO L273 TraceCheckUtils]: 87: Hoare triple {9855#(<= ~SIZE~0 9)} assume !(0 == ~cond); {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,487 INFO L273 TraceCheckUtils]: 88: Hoare triple {9855#(<= ~SIZE~0 9)} assume true; {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,487 INFO L268 TraceCheckUtils]: 89: Hoare quadruple {9855#(<= ~SIZE~0 9)} {10125#(and (<= ~SIZE~0 9) (<= 6 main_~i~0))} #65#return; {10125#(and (<= ~SIZE~0 9) (<= 6 main_~i~0))} is VALID [2018-11-23 12:20:17,488 INFO L273 TraceCheckUtils]: 90: Hoare triple {10125#(and (<= ~SIZE~0 9) (<= 6 main_~i~0))} havoc #t~mem4; {10125#(and (<= ~SIZE~0 9) (<= 6 main_~i~0))} is VALID [2018-11-23 12:20:17,489 INFO L273 TraceCheckUtils]: 91: Hoare triple {10125#(and (<= ~SIZE~0 9) (<= 6 main_~i~0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {10150#(and (<= 7 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,490 INFO L273 TraceCheckUtils]: 92: Hoare triple {10150#(and (<= 7 main_~i~0) (<= ~SIZE~0 9))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10150#(and (<= 7 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,491 INFO L256 TraceCheckUtils]: 93: Hoare triple {10150#(and (<= 7 main_~i~0) (<= ~SIZE~0 9))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,491 INFO L273 TraceCheckUtils]: 94: Hoare triple {9855#(<= ~SIZE~0 9)} ~cond := #in~cond; {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,492 INFO L273 TraceCheckUtils]: 95: Hoare triple {9855#(<= ~SIZE~0 9)} assume !(0 == ~cond); {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,492 INFO L273 TraceCheckUtils]: 96: Hoare triple {9855#(<= ~SIZE~0 9)} assume true; {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,493 INFO L268 TraceCheckUtils]: 97: Hoare quadruple {9855#(<= ~SIZE~0 9)} {10150#(and (<= 7 main_~i~0) (<= ~SIZE~0 9))} #65#return; {10150#(and (<= 7 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,494 INFO L273 TraceCheckUtils]: 98: Hoare triple {10150#(and (<= 7 main_~i~0) (<= ~SIZE~0 9))} havoc #t~mem4; {10150#(and (<= 7 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,495 INFO L273 TraceCheckUtils]: 99: Hoare triple {10150#(and (<= 7 main_~i~0) (<= ~SIZE~0 9))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {10175#(and (<= 8 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,496 INFO L273 TraceCheckUtils]: 100: Hoare triple {10175#(and (<= 8 main_~i~0) (<= ~SIZE~0 9))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10175#(and (<= 8 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,497 INFO L256 TraceCheckUtils]: 101: Hoare triple {10175#(and (<= 8 main_~i~0) (<= ~SIZE~0 9))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,497 INFO L273 TraceCheckUtils]: 102: Hoare triple {9855#(<= ~SIZE~0 9)} ~cond := #in~cond; {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,498 INFO L273 TraceCheckUtils]: 103: Hoare triple {9855#(<= ~SIZE~0 9)} assume !(0 == ~cond); {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,498 INFO L273 TraceCheckUtils]: 104: Hoare triple {9855#(<= ~SIZE~0 9)} assume true; {9855#(<= ~SIZE~0 9)} is VALID [2018-11-23 12:20:17,499 INFO L268 TraceCheckUtils]: 105: Hoare quadruple {9855#(<= ~SIZE~0 9)} {10175#(and (<= 8 main_~i~0) (<= ~SIZE~0 9))} #65#return; {10175#(and (<= 8 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,500 INFO L273 TraceCheckUtils]: 106: Hoare triple {10175#(and (<= 8 main_~i~0) (<= ~SIZE~0 9))} havoc #t~mem4; {10175#(and (<= 8 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,501 INFO L273 TraceCheckUtils]: 107: Hoare triple {10175#(and (<= 8 main_~i~0) (<= ~SIZE~0 9))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {10200#(and (<= 9 main_~i~0) (<= ~SIZE~0 9))} is VALID [2018-11-23 12:20:17,502 INFO L273 TraceCheckUtils]: 108: Hoare triple {10200#(and (<= 9 main_~i~0) (<= ~SIZE~0 9))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9844#false} is VALID [2018-11-23 12:20:17,502 INFO L256 TraceCheckUtils]: 109: Hoare triple {9844#false} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {9844#false} is VALID [2018-11-23 12:20:17,502 INFO L273 TraceCheckUtils]: 110: Hoare triple {9844#false} ~cond := #in~cond; {9844#false} is VALID [2018-11-23 12:20:17,502 INFO L273 TraceCheckUtils]: 111: Hoare triple {9844#false} assume 0 == ~cond; {9844#false} is VALID [2018-11-23 12:20:17,502 INFO L273 TraceCheckUtils]: 112: Hoare triple {9844#false} assume !false; {9844#false} is VALID [2018-11-23 12:20:17,516 INFO L134 CoverageAnalysis]: Checked inductivity of 441 backedges. 180 proven. 117 refuted. 0 times theorem prover too weak. 144 trivial. 0 not checked. [2018-11-23 12:20:17,535 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:20:17,535 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [23, 23] total 34 [2018-11-23 12:20:17,536 INFO L78 Accepts]: Start accepts. Automaton has 34 states. Word has length 113 [2018-11-23 12:20:17,536 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:20:17,536 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 34 states. [2018-11-23 12:20:17,704 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 143 edges. 143 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:20:17,704 INFO L459 AbstractCegarLoop]: Interpolant automaton has 34 states [2018-11-23 12:20:17,704 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 34 interpolants. [2018-11-23 12:20:17,705 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=269, Invalid=853, Unknown=0, NotChecked=0, Total=1122 [2018-11-23 12:20:17,705 INFO L87 Difference]: Start difference. First operand 117 states and 119 transitions. Second operand 34 states. [2018-11-23 12:20:20,292 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:20,292 INFO L93 Difference]: Finished difference Result 285 states and 292 transitions. [2018-11-23 12:20:20,292 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2018-11-23 12:20:20,292 INFO L78 Accepts]: Start accepts. Automaton has 34 states. Word has length 113 [2018-11-23 12:20:20,293 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:20:20,293 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 34 states. [2018-11-23 12:20:20,296 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 171 transitions. [2018-11-23 12:20:20,296 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 34 states. [2018-11-23 12:20:20,299 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 171 transitions. [2018-11-23 12:20:20,299 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 25 states and 171 transitions. [2018-11-23 12:20:20,470 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 171 edges. 171 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:20:20,473 INFO L225 Difference]: With dead ends: 285 [2018-11-23 12:20:20,474 INFO L226 Difference]: Without dead ends: 127 [2018-11-23 12:20:20,475 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 145 GetRequests, 103 SyntacticMatches, 0 SemanticMatches, 42 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 444 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=454, Invalid=1438, Unknown=0, NotChecked=0, Total=1892 [2018-11-23 12:20:20,475 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 127 states. [2018-11-23 12:20:20,925 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 127 to 120. [2018-11-23 12:20:20,926 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:20:20,926 INFO L82 GeneralOperation]: Start isEquivalent. First operand 127 states. Second operand 120 states. [2018-11-23 12:20:20,926 INFO L74 IsIncluded]: Start isIncluded. First operand 127 states. Second operand 120 states. [2018-11-23 12:20:20,926 INFO L87 Difference]: Start difference. First operand 127 states. Second operand 120 states. [2018-11-23 12:20:20,930 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:20,930 INFO L93 Difference]: Finished difference Result 127 states and 130 transitions. [2018-11-23 12:20:20,930 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 130 transitions. [2018-11-23 12:20:20,931 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:20:20,931 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:20:20,931 INFO L74 IsIncluded]: Start isIncluded. First operand 120 states. Second operand 127 states. [2018-11-23 12:20:20,931 INFO L87 Difference]: Start difference. First operand 120 states. Second operand 127 states. [2018-11-23 12:20:20,934 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:20:20,934 INFO L93 Difference]: Finished difference Result 127 states and 130 transitions. [2018-11-23 12:20:20,934 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 130 transitions. [2018-11-23 12:20:20,934 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:20:20,935 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:20:20,935 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:20:20,935 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:20:20,935 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 120 states. [2018-11-23 12:20:20,937 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 120 states to 120 states and 122 transitions. [2018-11-23 12:20:20,938 INFO L78 Accepts]: Start accepts. Automaton has 120 states and 122 transitions. Word has length 113 [2018-11-23 12:20:20,938 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:20:20,938 INFO L480 AbstractCegarLoop]: Abstraction has 120 states and 122 transitions. [2018-11-23 12:20:20,938 INFO L481 AbstractCegarLoop]: Interpolant automaton has 34 states. [2018-11-23 12:20:20,938 INFO L276 IsEmpty]: Start isEmpty. Operand 120 states and 122 transitions. [2018-11-23 12:20:20,939 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 117 [2018-11-23 12:20:20,939 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:20:20,939 INFO L402 BasicCegarLoop]: trace histogram [10, 10, 10, 10, 10, 10, 9, 9, 9, 9, 9, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:20:20,940 INFO L423 AbstractCegarLoop]: === Iteration 19 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:20:20,940 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:20:20,940 INFO L82 PathProgramCache]: Analyzing trace with hash -364979948, now seen corresponding path program 15 times [2018-11-23 12:20:20,940 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:20:20,940 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:20:20,941 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:20:20,941 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:20:20,941 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:20:20,964 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:20:22,010 INFO L256 TraceCheckUtils]: 0: Hoare triple {11045#true} call ULTIMATE.init(); {11045#true} is VALID [2018-11-23 12:20:22,010 INFO L273 TraceCheckUtils]: 1: Hoare triple {11045#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {11045#true} is VALID [2018-11-23 12:20:22,010 INFO L273 TraceCheckUtils]: 2: Hoare triple {11045#true} assume true; {11045#true} is VALID [2018-11-23 12:20:22,010 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {11045#true} {11045#true} #61#return; {11045#true} is VALID [2018-11-23 12:20:22,011 INFO L256 TraceCheckUtils]: 4: Hoare triple {11045#true} call #t~ret5 := main(); {11045#true} is VALID [2018-11-23 12:20:22,011 INFO L273 TraceCheckUtils]: 5: Hoare triple {11045#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {11045#true} is VALID [2018-11-23 12:20:22,011 INFO L273 TraceCheckUtils]: 6: Hoare triple {11045#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {11047#(= main_~i~0 0)} is VALID [2018-11-23 12:20:22,011 INFO L273 TraceCheckUtils]: 7: Hoare triple {11047#(= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0); {11047#(= main_~i~0 0)} is VALID [2018-11-23 12:20:22,012 INFO L273 TraceCheckUtils]: 8: Hoare triple {11047#(= main_~i~0 0)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11047#(= main_~i~0 0)} is VALID [2018-11-23 12:20:22,012 INFO L273 TraceCheckUtils]: 9: Hoare triple {11047#(= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {11048#(and (<= 1 main_~i~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:20:22,013 INFO L273 TraceCheckUtils]: 10: Hoare triple {11048#(and (<= 1 main_~i~0) (<= main_~i~0 1))} assume !!(~i~0 < ~SIZE~0); {11048#(and (<= 1 main_~i~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:20:22,014 INFO L273 TraceCheckUtils]: 11: Hoare triple {11048#(and (<= 1 main_~i~0) (<= main_~i~0 1))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11048#(and (<= 1 main_~i~0) (<= main_~i~0 1))} is VALID [2018-11-23 12:20:22,014 INFO L273 TraceCheckUtils]: 12: Hoare triple {11048#(and (<= 1 main_~i~0) (<= main_~i~0 1))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {11049#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:20:22,015 INFO L273 TraceCheckUtils]: 13: Hoare triple {11049#(and (<= 2 main_~i~0) (<= main_~i~0 2))} assume !!(~i~0 < ~SIZE~0); {11049#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:20:22,016 INFO L273 TraceCheckUtils]: 14: Hoare triple {11049#(and (<= 2 main_~i~0) (<= main_~i~0 2))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11049#(and (<= 2 main_~i~0) (<= main_~i~0 2))} is VALID [2018-11-23 12:20:22,017 INFO L273 TraceCheckUtils]: 15: Hoare triple {11049#(and (<= 2 main_~i~0) (<= main_~i~0 2))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {11050#(and (<= main_~i~0 3) (<= 3 main_~i~0))} is VALID [2018-11-23 12:20:22,018 INFO L273 TraceCheckUtils]: 16: Hoare triple {11050#(and (<= main_~i~0 3) (<= 3 main_~i~0))} assume !!(~i~0 < ~SIZE~0); {11050#(and (<= main_~i~0 3) (<= 3 main_~i~0))} is VALID [2018-11-23 12:20:22,018 INFO L273 TraceCheckUtils]: 17: Hoare triple {11050#(and (<= main_~i~0 3) (<= 3 main_~i~0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11050#(and (<= main_~i~0 3) (<= 3 main_~i~0))} is VALID [2018-11-23 12:20:22,019 INFO L273 TraceCheckUtils]: 18: Hoare triple {11050#(and (<= main_~i~0 3) (<= 3 main_~i~0))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {11051#(and (<= 4 main_~i~0) (<= main_~i~0 4))} is VALID [2018-11-23 12:20:22,020 INFO L273 TraceCheckUtils]: 19: Hoare triple {11051#(and (<= 4 main_~i~0) (<= main_~i~0 4))} assume !!(~i~0 < ~SIZE~0); {11051#(and (<= 4 main_~i~0) (<= main_~i~0 4))} is VALID [2018-11-23 12:20:22,021 INFO L273 TraceCheckUtils]: 20: Hoare triple {11051#(and (<= 4 main_~i~0) (<= main_~i~0 4))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11051#(and (<= 4 main_~i~0) (<= main_~i~0 4))} is VALID [2018-11-23 12:20:22,021 INFO L273 TraceCheckUtils]: 21: Hoare triple {11051#(and (<= 4 main_~i~0) (<= main_~i~0 4))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {11052#(and (<= 5 main_~i~0) (<= main_~i~0 5))} is VALID [2018-11-23 12:20:22,022 INFO L273 TraceCheckUtils]: 22: Hoare triple {11052#(and (<= 5 main_~i~0) (<= main_~i~0 5))} assume !!(~i~0 < ~SIZE~0); {11052#(and (<= 5 main_~i~0) (<= main_~i~0 5))} is VALID [2018-11-23 12:20:22,023 INFO L273 TraceCheckUtils]: 23: Hoare triple {11052#(and (<= 5 main_~i~0) (<= main_~i~0 5))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11052#(and (<= 5 main_~i~0) (<= main_~i~0 5))} is VALID [2018-11-23 12:20:22,024 INFO L273 TraceCheckUtils]: 24: Hoare triple {11052#(and (<= 5 main_~i~0) (<= main_~i~0 5))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {11053#(and (<= 6 main_~i~0) (<= main_~i~0 6))} is VALID [2018-11-23 12:20:22,024 INFO L273 TraceCheckUtils]: 25: Hoare triple {11053#(and (<= 6 main_~i~0) (<= main_~i~0 6))} assume !!(~i~0 < ~SIZE~0); {11053#(and (<= 6 main_~i~0) (<= main_~i~0 6))} is VALID [2018-11-23 12:20:22,025 INFO L273 TraceCheckUtils]: 26: Hoare triple {11053#(and (<= 6 main_~i~0) (<= main_~i~0 6))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11053#(and (<= 6 main_~i~0) (<= main_~i~0 6))} is VALID [2018-11-23 12:20:22,026 INFO L273 TraceCheckUtils]: 27: Hoare triple {11053#(and (<= 6 main_~i~0) (<= main_~i~0 6))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {11054#(and (<= 7 main_~i~0) (<= main_~i~0 7))} is VALID [2018-11-23 12:20:22,027 INFO L273 TraceCheckUtils]: 28: Hoare triple {11054#(and (<= 7 main_~i~0) (<= main_~i~0 7))} assume !!(~i~0 < ~SIZE~0); {11054#(and (<= 7 main_~i~0) (<= main_~i~0 7))} is VALID [2018-11-23 12:20:22,027 INFO L273 TraceCheckUtils]: 29: Hoare triple {11054#(and (<= 7 main_~i~0) (<= main_~i~0 7))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11054#(and (<= 7 main_~i~0) (<= main_~i~0 7))} is VALID [2018-11-23 12:20:22,028 INFO L273 TraceCheckUtils]: 30: Hoare triple {11054#(and (<= 7 main_~i~0) (<= main_~i~0 7))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {11055#(and (<= 8 main_~i~0) (<= main_~i~0 8))} is VALID [2018-11-23 12:20:22,029 INFO L273 TraceCheckUtils]: 31: Hoare triple {11055#(and (<= 8 main_~i~0) (<= main_~i~0 8))} assume !!(~i~0 < ~SIZE~0); {11055#(and (<= 8 main_~i~0) (<= main_~i~0 8))} is VALID [2018-11-23 12:20:22,030 INFO L273 TraceCheckUtils]: 32: Hoare triple {11055#(and (<= 8 main_~i~0) (<= main_~i~0 8))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11055#(and (<= 8 main_~i~0) (<= main_~i~0 8))} is VALID [2018-11-23 12:20:22,031 INFO L273 TraceCheckUtils]: 33: Hoare triple {11055#(and (<= 8 main_~i~0) (<= main_~i~0 8))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {11056#(and (<= main_~i~0 9) (<= 9 main_~i~0))} is VALID [2018-11-23 12:20:22,031 INFO L273 TraceCheckUtils]: 34: Hoare triple {11056#(and (<= main_~i~0 9) (<= 9 main_~i~0))} assume !!(~i~0 < ~SIZE~0); {11056#(and (<= main_~i~0 9) (<= 9 main_~i~0))} is VALID [2018-11-23 12:20:22,032 INFO L273 TraceCheckUtils]: 35: Hoare triple {11056#(and (<= main_~i~0 9) (<= 9 main_~i~0))} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11057#(and (<= main_~i~0 9) (<= 9 main_~i~0) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0)))))} is VALID [2018-11-23 12:20:22,033 INFO L273 TraceCheckUtils]: 36: Hoare triple {11057#(and (<= main_~i~0 9) (<= 9 main_~i~0) (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0)))))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {11058#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 9))))} is VALID [2018-11-23 12:20:22,034 INFO L273 TraceCheckUtils]: 37: Hoare triple {11058#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 9))))} assume !(~i~0 < ~SIZE~0); {11058#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 9))))} is VALID [2018-11-23 12:20:22,035 INFO L273 TraceCheckUtils]: 38: Hoare triple {11058#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 9))))} ~i~0 := 0; {11059#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 9)))) (= main_~i~0 0))} is VALID [2018-11-23 12:20:22,035 INFO L273 TraceCheckUtils]: 39: Hoare triple {11059#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 9)))) (= main_~i~0 0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11059#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 9)))) (= main_~i~0 0))} is VALID [2018-11-23 12:20:22,036 INFO L256 TraceCheckUtils]: 40: Hoare triple {11059#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 9)))) (= main_~i~0 0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {11045#true} is VALID [2018-11-23 12:20:22,036 INFO L273 TraceCheckUtils]: 41: Hoare triple {11045#true} ~cond := #in~cond; {11060#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} is VALID [2018-11-23 12:20:22,037 INFO L273 TraceCheckUtils]: 42: Hoare triple {11060#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} assume !(0 == ~cond); {11061#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:20:22,037 INFO L273 TraceCheckUtils]: 43: Hoare triple {11061#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {11061#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:20:22,038 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {11061#(not (= |__VERIFIER_assert_#in~cond| 0))} {11059#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 9)))) (= main_~i~0 0))} #65#return; {11059#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 9)))) (= main_~i~0 0))} is VALID [2018-11-23 12:20:22,039 INFO L273 TraceCheckUtils]: 45: Hoare triple {11059#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 9)))) (= main_~i~0 0))} havoc #t~mem4; {11059#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 9)))) (= main_~i~0 0))} is VALID [2018-11-23 12:20:22,040 INFO L273 TraceCheckUtils]: 46: Hoare triple {11059#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 9)))) (= main_~i~0 0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {11062#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 8)))))} is VALID [2018-11-23 12:20:22,041 INFO L273 TraceCheckUtils]: 47: Hoare triple {11062#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 8)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11062#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 8)))))} is VALID [2018-11-23 12:20:22,041 INFO L256 TraceCheckUtils]: 48: Hoare triple {11062#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 8)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {11045#true} is VALID [2018-11-23 12:20:22,041 INFO L273 TraceCheckUtils]: 49: Hoare triple {11045#true} ~cond := #in~cond; {11045#true} is VALID [2018-11-23 12:20:22,041 INFO L273 TraceCheckUtils]: 50: Hoare triple {11045#true} assume !(0 == ~cond); {11045#true} is VALID [2018-11-23 12:20:22,042 INFO L273 TraceCheckUtils]: 51: Hoare triple {11045#true} assume true; {11045#true} is VALID [2018-11-23 12:20:22,046 INFO L268 TraceCheckUtils]: 52: Hoare quadruple {11045#true} {11062#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 8)))))} #65#return; {11062#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 8)))))} is VALID [2018-11-23 12:20:22,046 INFO L273 TraceCheckUtils]: 53: Hoare triple {11062#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 8)))))} havoc #t~mem4; {11062#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 8)))))} is VALID [2018-11-23 12:20:22,047 INFO L273 TraceCheckUtils]: 54: Hoare triple {11062#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 8)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {11063#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 7)))))} is VALID [2018-11-23 12:20:22,047 INFO L273 TraceCheckUtils]: 55: Hoare triple {11063#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 7)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11063#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 7)))))} is VALID [2018-11-23 12:20:22,047 INFO L256 TraceCheckUtils]: 56: Hoare triple {11063#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 7)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {11045#true} is VALID [2018-11-23 12:20:22,048 INFO L273 TraceCheckUtils]: 57: Hoare triple {11045#true} ~cond := #in~cond; {11045#true} is VALID [2018-11-23 12:20:22,048 INFO L273 TraceCheckUtils]: 58: Hoare triple {11045#true} assume !(0 == ~cond); {11045#true} is VALID [2018-11-23 12:20:22,048 INFO L273 TraceCheckUtils]: 59: Hoare triple {11045#true} assume true; {11045#true} is VALID [2018-11-23 12:20:22,049 INFO L268 TraceCheckUtils]: 60: Hoare quadruple {11045#true} {11063#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 7)))))} #65#return; {11063#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 7)))))} is VALID [2018-11-23 12:20:22,049 INFO L273 TraceCheckUtils]: 61: Hoare triple {11063#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 7)))))} havoc #t~mem4; {11063#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 7)))))} is VALID [2018-11-23 12:20:22,050 INFO L273 TraceCheckUtils]: 62: Hoare triple {11063#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 7)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {11064#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 6)))))} is VALID [2018-11-23 12:20:22,050 INFO L273 TraceCheckUtils]: 63: Hoare triple {11064#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 6)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11064#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 6)))))} is VALID [2018-11-23 12:20:22,050 INFO L256 TraceCheckUtils]: 64: Hoare triple {11064#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 6)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {11045#true} is VALID [2018-11-23 12:20:22,050 INFO L273 TraceCheckUtils]: 65: Hoare triple {11045#true} ~cond := #in~cond; {11045#true} is VALID [2018-11-23 12:20:22,050 INFO L273 TraceCheckUtils]: 66: Hoare triple {11045#true} assume !(0 == ~cond); {11045#true} is VALID [2018-11-23 12:20:22,050 INFO L273 TraceCheckUtils]: 67: Hoare triple {11045#true} assume true; {11045#true} is VALID [2018-11-23 12:20:22,051 INFO L268 TraceCheckUtils]: 68: Hoare quadruple {11045#true} {11064#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 6)))))} #65#return; {11064#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 6)))))} is VALID [2018-11-23 12:20:22,052 INFO L273 TraceCheckUtils]: 69: Hoare triple {11064#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 6)))))} havoc #t~mem4; {11064#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 6)))))} is VALID [2018-11-23 12:20:22,053 INFO L273 TraceCheckUtils]: 70: Hoare triple {11064#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 6)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {11065#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} is VALID [2018-11-23 12:20:22,054 INFO L273 TraceCheckUtils]: 71: Hoare triple {11065#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11065#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} is VALID [2018-11-23 12:20:22,054 INFO L256 TraceCheckUtils]: 72: Hoare triple {11065#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {11045#true} is VALID [2018-11-23 12:20:22,054 INFO L273 TraceCheckUtils]: 73: Hoare triple {11045#true} ~cond := #in~cond; {11045#true} is VALID [2018-11-23 12:20:22,054 INFO L273 TraceCheckUtils]: 74: Hoare triple {11045#true} assume !(0 == ~cond); {11045#true} is VALID [2018-11-23 12:20:22,054 INFO L273 TraceCheckUtils]: 75: Hoare triple {11045#true} assume true; {11045#true} is VALID [2018-11-23 12:20:22,055 INFO L268 TraceCheckUtils]: 76: Hoare quadruple {11045#true} {11065#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} #65#return; {11065#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} is VALID [2018-11-23 12:20:22,056 INFO L273 TraceCheckUtils]: 77: Hoare triple {11065#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} havoc #t~mem4; {11065#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} is VALID [2018-11-23 12:20:22,057 INFO L273 TraceCheckUtils]: 78: Hoare triple {11065#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 5)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {11066#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} is VALID [2018-11-23 12:20:22,057 INFO L273 TraceCheckUtils]: 79: Hoare triple {11066#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11066#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} is VALID [2018-11-23 12:20:22,057 INFO L256 TraceCheckUtils]: 80: Hoare triple {11066#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {11045#true} is VALID [2018-11-23 12:20:22,057 INFO L273 TraceCheckUtils]: 81: Hoare triple {11045#true} ~cond := #in~cond; {11045#true} is VALID [2018-11-23 12:20:22,057 INFO L273 TraceCheckUtils]: 82: Hoare triple {11045#true} assume !(0 == ~cond); {11045#true} is VALID [2018-11-23 12:20:22,058 INFO L273 TraceCheckUtils]: 83: Hoare triple {11045#true} assume true; {11045#true} is VALID [2018-11-23 12:20:22,058 INFO L268 TraceCheckUtils]: 84: Hoare quadruple {11045#true} {11066#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} #65#return; {11066#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} is VALID [2018-11-23 12:20:22,059 INFO L273 TraceCheckUtils]: 85: Hoare triple {11066#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} havoc #t~mem4; {11066#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} is VALID [2018-11-23 12:20:22,060 INFO L273 TraceCheckUtils]: 86: Hoare triple {11066#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 4)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {11067#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} is VALID [2018-11-23 12:20:22,060 INFO L273 TraceCheckUtils]: 87: Hoare triple {11067#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11067#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} is VALID [2018-11-23 12:20:22,061 INFO L256 TraceCheckUtils]: 88: Hoare triple {11067#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {11045#true} is VALID [2018-11-23 12:20:22,061 INFO L273 TraceCheckUtils]: 89: Hoare triple {11045#true} ~cond := #in~cond; {11045#true} is VALID [2018-11-23 12:20:22,061 INFO L273 TraceCheckUtils]: 90: Hoare triple {11045#true} assume !(0 == ~cond); {11045#true} is VALID [2018-11-23 12:20:22,061 INFO L273 TraceCheckUtils]: 91: Hoare triple {11045#true} assume true; {11045#true} is VALID [2018-11-23 12:20:22,062 INFO L268 TraceCheckUtils]: 92: Hoare quadruple {11045#true} {11067#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} #65#return; {11067#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} is VALID [2018-11-23 12:20:22,063 INFO L273 TraceCheckUtils]: 93: Hoare triple {11067#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} havoc #t~mem4; {11067#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} is VALID [2018-11-23 12:20:22,064 INFO L273 TraceCheckUtils]: 94: Hoare triple {11067#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 3)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {11068#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} is VALID [2018-11-23 12:20:22,064 INFO L273 TraceCheckUtils]: 95: Hoare triple {11068#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11068#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} is VALID [2018-11-23 12:20:22,065 INFO L256 TraceCheckUtils]: 96: Hoare triple {11068#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {11045#true} is VALID [2018-11-23 12:20:22,065 INFO L273 TraceCheckUtils]: 97: Hoare triple {11045#true} ~cond := #in~cond; {11045#true} is VALID [2018-11-23 12:20:22,065 INFO L273 TraceCheckUtils]: 98: Hoare triple {11045#true} assume !(0 == ~cond); {11045#true} is VALID [2018-11-23 12:20:22,065 INFO L273 TraceCheckUtils]: 99: Hoare triple {11045#true} assume true; {11045#true} is VALID [2018-11-23 12:20:22,066 INFO L268 TraceCheckUtils]: 100: Hoare quadruple {11045#true} {11068#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} #65#return; {11068#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} is VALID [2018-11-23 12:20:22,067 INFO L273 TraceCheckUtils]: 101: Hoare triple {11068#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} havoc #t~mem4; {11068#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} is VALID [2018-11-23 12:20:22,068 INFO L273 TraceCheckUtils]: 102: Hoare triple {11068#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 2)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {11069#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:20:22,068 INFO L273 TraceCheckUtils]: 103: Hoare triple {11069#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11069#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:20:22,069 INFO L256 TraceCheckUtils]: 104: Hoare triple {11069#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {11045#true} is VALID [2018-11-23 12:20:22,069 INFO L273 TraceCheckUtils]: 105: Hoare triple {11045#true} ~cond := #in~cond; {11045#true} is VALID [2018-11-23 12:20:22,069 INFO L273 TraceCheckUtils]: 106: Hoare triple {11045#true} assume !(0 == ~cond); {11045#true} is VALID [2018-11-23 12:20:22,069 INFO L273 TraceCheckUtils]: 107: Hoare triple {11045#true} assume true; {11045#true} is VALID [2018-11-23 12:20:22,070 INFO L268 TraceCheckUtils]: 108: Hoare quadruple {11045#true} {11069#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} #65#return; {11069#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:20:22,071 INFO L273 TraceCheckUtils]: 109: Hoare triple {11069#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} havoc #t~mem4; {11069#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} is VALID [2018-11-23 12:20:22,071 INFO L273 TraceCheckUtils]: 110: Hoare triple {11069#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 (+ main_~i~0 1)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {11070#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0))))} is VALID [2018-11-23 12:20:22,072 INFO L273 TraceCheckUtils]: 111: Hoare triple {11070#(= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| (* 4 main_~i~0))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11071#(= |main_#t~mem4| 0)} is VALID [2018-11-23 12:20:22,072 INFO L256 TraceCheckUtils]: 112: Hoare triple {11071#(= |main_#t~mem4| 0)} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {11061#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-23 12:20:22,073 INFO L273 TraceCheckUtils]: 113: Hoare triple {11061#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {11072#(not (= __VERIFIER_assert_~cond 0))} is VALID [2018-11-23 12:20:22,073 INFO L273 TraceCheckUtils]: 114: Hoare triple {11072#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {11046#false} is VALID [2018-11-23 12:20:22,073 INFO L273 TraceCheckUtils]: 115: Hoare triple {11046#false} assume !false; {11046#false} is VALID [2018-11-23 12:20:22,094 INFO L134 CoverageAnalysis]: Checked inductivity of 469 backedges. 17 proven. 332 refuted. 0 times theorem prover too weak. 120 trivial. 0 not checked. [2018-11-23 12:20:22,094 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:20:22,094 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 18 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 18 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 12:20:22,104 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:20:22,214 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 11 check-sat command(s) [2018-11-23 12:20:22,214 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:20:22,250 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:20:22,252 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:20:22,580 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 12 [2018-11-23 12:20:22,597 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 11 [2018-11-23 12:20:22,599 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:20:22,602 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:22,609 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:22,609 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:19, output treesize:15 [2018-11-23 12:20:34,860 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 23 treesize of output 19 [2018-11-23 12:20:34,865 INFO L683 Elim1Store]: detected equality via solver [2018-11-23 12:20:34,866 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 15 [2018-11-23 12:20:34,867 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:20:34,871 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:34,883 INFO L267 ElimStorePlain]: Start of recursive call 1: 4 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:20:34,884 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 5 variables, input treesize:32, output treesize:3 [2018-11-23 12:20:34,886 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:20:34,886 WARN L384 uantifierElimination]: Input elimination task: ∃ [|#memory_int|, |main_~#a~0.base|, main_~i~0, |main_~#a~0.offset|, v_main_~i~0_159]. (let ((.cse0 (select |#memory_int| |main_~#a~0.base|))) (and (= |main_#t~mem4| (select .cse0 (+ (* 4 main_~i~0) |main_~#a~0.offset|))) (= (select .cse0 (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= 9 main_~i~0) (<= main_~i~0 v_main_~i~0_159))) [2018-11-23 12:20:34,887 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (= 0 |main_#t~mem4|) [2018-11-23 12:20:34,984 INFO L256 TraceCheckUtils]: 0: Hoare triple {11045#true} call ULTIMATE.init(); {11045#true} is VALID [2018-11-23 12:20:34,984 INFO L273 TraceCheckUtils]: 1: Hoare triple {11045#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];~SIZE~0 := 0; {11045#true} is VALID [2018-11-23 12:20:34,984 INFO L273 TraceCheckUtils]: 2: Hoare triple {11045#true} assume true; {11045#true} is VALID [2018-11-23 12:20:34,984 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {11045#true} {11045#true} #61#return; {11045#true} is VALID [2018-11-23 12:20:34,985 INFO L256 TraceCheckUtils]: 4: Hoare triple {11045#true} call #t~ret5 := main(); {11045#true} is VALID [2018-11-23 12:20:34,985 INFO L273 TraceCheckUtils]: 5: Hoare triple {11045#true} assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~SIZE~0 := #t~nondet1;havoc #t~nondet1; {11045#true} is VALID [2018-11-23 12:20:34,986 INFO L273 TraceCheckUtils]: 6: Hoare triple {11045#true} assume ~SIZE~0 > 1;havoc ~i~0;call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(4 * ~SIZE~0);~i~0 := 0; {11094#(<= main_~i~0 0)} is VALID [2018-11-23 12:20:34,986 INFO L273 TraceCheckUtils]: 7: Hoare triple {11094#(<= main_~i~0 0)} assume !!(~i~0 < ~SIZE~0); {11094#(<= main_~i~0 0)} is VALID [2018-11-23 12:20:34,986 INFO L273 TraceCheckUtils]: 8: Hoare triple {11094#(<= main_~i~0 0)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11094#(<= main_~i~0 0)} is VALID [2018-11-23 12:20:34,987 INFO L273 TraceCheckUtils]: 9: Hoare triple {11094#(<= main_~i~0 0)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {11104#(<= main_~i~0 1)} is VALID [2018-11-23 12:20:34,987 INFO L273 TraceCheckUtils]: 10: Hoare triple {11104#(<= main_~i~0 1)} assume !!(~i~0 < ~SIZE~0); {11104#(<= main_~i~0 1)} is VALID [2018-11-23 12:20:34,987 INFO L273 TraceCheckUtils]: 11: Hoare triple {11104#(<= main_~i~0 1)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11104#(<= main_~i~0 1)} is VALID [2018-11-23 12:20:34,988 INFO L273 TraceCheckUtils]: 12: Hoare triple {11104#(<= main_~i~0 1)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {11114#(<= main_~i~0 2)} is VALID [2018-11-23 12:20:34,988 INFO L273 TraceCheckUtils]: 13: Hoare triple {11114#(<= main_~i~0 2)} assume !!(~i~0 < ~SIZE~0); {11114#(<= main_~i~0 2)} is VALID [2018-11-23 12:20:34,989 INFO L273 TraceCheckUtils]: 14: Hoare triple {11114#(<= main_~i~0 2)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11114#(<= main_~i~0 2)} is VALID [2018-11-23 12:20:34,990 INFO L273 TraceCheckUtils]: 15: Hoare triple {11114#(<= main_~i~0 2)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {11124#(<= main_~i~0 3)} is VALID [2018-11-23 12:20:34,990 INFO L273 TraceCheckUtils]: 16: Hoare triple {11124#(<= main_~i~0 3)} assume !!(~i~0 < ~SIZE~0); {11124#(<= main_~i~0 3)} is VALID [2018-11-23 12:20:34,991 INFO L273 TraceCheckUtils]: 17: Hoare triple {11124#(<= main_~i~0 3)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11124#(<= main_~i~0 3)} is VALID [2018-11-23 12:20:34,991 INFO L273 TraceCheckUtils]: 18: Hoare triple {11124#(<= main_~i~0 3)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {11134#(<= main_~i~0 4)} is VALID [2018-11-23 12:20:34,992 INFO L273 TraceCheckUtils]: 19: Hoare triple {11134#(<= main_~i~0 4)} assume !!(~i~0 < ~SIZE~0); {11134#(<= main_~i~0 4)} is VALID [2018-11-23 12:20:34,992 INFO L273 TraceCheckUtils]: 20: Hoare triple {11134#(<= main_~i~0 4)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11134#(<= main_~i~0 4)} is VALID [2018-11-23 12:20:34,993 INFO L273 TraceCheckUtils]: 21: Hoare triple {11134#(<= main_~i~0 4)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {11144#(<= main_~i~0 5)} is VALID [2018-11-23 12:20:34,993 INFO L273 TraceCheckUtils]: 22: Hoare triple {11144#(<= main_~i~0 5)} assume !!(~i~0 < ~SIZE~0); {11144#(<= main_~i~0 5)} is VALID [2018-11-23 12:20:34,994 INFO L273 TraceCheckUtils]: 23: Hoare triple {11144#(<= main_~i~0 5)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11144#(<= main_~i~0 5)} is VALID [2018-11-23 12:20:34,995 INFO L273 TraceCheckUtils]: 24: Hoare triple {11144#(<= main_~i~0 5)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {11154#(<= main_~i~0 6)} is VALID [2018-11-23 12:20:34,995 INFO L273 TraceCheckUtils]: 25: Hoare triple {11154#(<= main_~i~0 6)} assume !!(~i~0 < ~SIZE~0); {11154#(<= main_~i~0 6)} is VALID [2018-11-23 12:20:34,996 INFO L273 TraceCheckUtils]: 26: Hoare triple {11154#(<= main_~i~0 6)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11154#(<= main_~i~0 6)} is VALID [2018-11-23 12:20:34,996 INFO L273 TraceCheckUtils]: 27: Hoare triple {11154#(<= main_~i~0 6)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {11164#(<= main_~i~0 7)} is VALID [2018-11-23 12:20:34,997 INFO L273 TraceCheckUtils]: 28: Hoare triple {11164#(<= main_~i~0 7)} assume !!(~i~0 < ~SIZE~0); {11164#(<= main_~i~0 7)} is VALID [2018-11-23 12:20:34,997 INFO L273 TraceCheckUtils]: 29: Hoare triple {11164#(<= main_~i~0 7)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11164#(<= main_~i~0 7)} is VALID [2018-11-23 12:20:34,998 INFO L273 TraceCheckUtils]: 30: Hoare triple {11164#(<= main_~i~0 7)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {11174#(<= main_~i~0 8)} is VALID [2018-11-23 12:20:34,999 INFO L273 TraceCheckUtils]: 31: Hoare triple {11174#(<= main_~i~0 8)} assume !!(~i~0 < ~SIZE~0); {11174#(<= main_~i~0 8)} is VALID [2018-11-23 12:20:34,999 INFO L273 TraceCheckUtils]: 32: Hoare triple {11174#(<= main_~i~0 8)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11174#(<= main_~i~0 8)} is VALID [2018-11-23 12:20:35,000 INFO L273 TraceCheckUtils]: 33: Hoare triple {11174#(<= main_~i~0 8)} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {11184#(<= main_~i~0 9)} is VALID [2018-11-23 12:20:35,000 INFO L273 TraceCheckUtils]: 34: Hoare triple {11184#(<= main_~i~0 9)} assume !!(~i~0 < ~SIZE~0); {11184#(<= main_~i~0 9)} is VALID [2018-11-23 12:20:35,001 INFO L273 TraceCheckUtils]: 35: Hoare triple {11184#(<= main_~i~0 9)} assume !(~i~0 / 65536 > 250);call write~int(0, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11191#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~i~0) |main_~#a~0.offset|))) (<= main_~i~0 9))} is VALID [2018-11-23 12:20:35,003 INFO L273 TraceCheckUtils]: 36: Hoare triple {11191#(and (= 0 (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~i~0) |main_~#a~0.offset|))) (<= main_~i~0 9))} #t~post2 := ~i~0;~i~0 := 1 + #t~post2;havoc #t~post2; {11195#(exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= main_~i~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:35,004 INFO L273 TraceCheckUtils]: 37: Hoare triple {11195#(exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= main_~i~0 (+ v_main_~i~0_159 1))))} assume !(~i~0 < ~SIZE~0); {11199#(exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:35,005 INFO L273 TraceCheckUtils]: 38: Hoare triple {11199#(exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} ~i~0 := 0; {11203#(and (<= 0 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} is VALID [2018-11-23 12:20:35,005 INFO L273 TraceCheckUtils]: 39: Hoare triple {11203#(and (<= 0 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11203#(and (<= 0 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} is VALID [2018-11-23 12:20:37,009 INFO L256 TraceCheckUtils]: 40: Hoare triple {11203#(and (<= 0 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is UNKNOWN [2018-11-23 12:20:37,010 INFO L273 TraceCheckUtils]: 41: Hoare triple {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} ~cond := #in~cond; {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:37,010 INFO L273 TraceCheckUtils]: 42: Hoare triple {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} assume !(0 == ~cond); {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:37,010 INFO L273 TraceCheckUtils]: 43: Hoare triple {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} assume true; {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:37,011 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} {11203#(and (<= 0 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} #65#return; {11203#(and (<= 0 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} is VALID [2018-11-23 12:20:37,012 INFO L273 TraceCheckUtils]: 45: Hoare triple {11203#(and (<= 0 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} havoc #t~mem4; {11203#(and (<= 0 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} is VALID [2018-11-23 12:20:37,014 INFO L273 TraceCheckUtils]: 46: Hoare triple {11203#(and (<= 0 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {11229#(and (<= 1 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} is VALID [2018-11-23 12:20:37,015 INFO L273 TraceCheckUtils]: 47: Hoare triple {11229#(and (<= 1 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11229#(and (<= 1 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} is VALID [2018-11-23 12:20:38,045 INFO L256 TraceCheckUtils]: 48: Hoare triple {11229#(and (<= 1 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {11236#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_38| Int) (|v_main_~#a~0.base_BEFORE_CALL_38| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_38|) (+ |v_main_~#a~0.offset_BEFORE_CALL_38| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is UNKNOWN [2018-11-23 12:20:38,045 INFO L273 TraceCheckUtils]: 49: Hoare triple {11236#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_38| Int) (|v_main_~#a~0.base_BEFORE_CALL_38| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_38|) (+ |v_main_~#a~0.offset_BEFORE_CALL_38| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} ~cond := #in~cond; {11236#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_38| Int) (|v_main_~#a~0.base_BEFORE_CALL_38| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_38|) (+ |v_main_~#a~0.offset_BEFORE_CALL_38| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:38,046 INFO L273 TraceCheckUtils]: 50: Hoare triple {11236#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_38| Int) (|v_main_~#a~0.base_BEFORE_CALL_38| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_38|) (+ |v_main_~#a~0.offset_BEFORE_CALL_38| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} assume !(0 == ~cond); {11236#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_38| Int) (|v_main_~#a~0.base_BEFORE_CALL_38| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_38|) (+ |v_main_~#a~0.offset_BEFORE_CALL_38| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:38,046 INFO L273 TraceCheckUtils]: 51: Hoare triple {11236#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_38| Int) (|v_main_~#a~0.base_BEFORE_CALL_38| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_38|) (+ |v_main_~#a~0.offset_BEFORE_CALL_38| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} assume true; {11236#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_38| Int) (|v_main_~#a~0.base_BEFORE_CALL_38| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_38|) (+ |v_main_~#a~0.offset_BEFORE_CALL_38| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:38,047 INFO L268 TraceCheckUtils]: 52: Hoare quadruple {11236#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_38| Int) (|v_main_~#a~0.base_BEFORE_CALL_38| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_38|) (+ |v_main_~#a~0.offset_BEFORE_CALL_38| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} {11229#(and (<= 1 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} #65#return; {11229#(and (<= 1 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} is VALID [2018-11-23 12:20:38,047 INFO L273 TraceCheckUtils]: 53: Hoare triple {11229#(and (<= 1 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} havoc #t~mem4; {11229#(and (<= 1 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} is VALID [2018-11-23 12:20:38,048 INFO L273 TraceCheckUtils]: 54: Hoare triple {11229#(and (<= 1 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {11255#(and (<= 2 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} is VALID [2018-11-23 12:20:38,048 INFO L273 TraceCheckUtils]: 55: Hoare triple {11255#(and (<= 2 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11255#(and (<= 2 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} is VALID [2018-11-23 12:20:38,059 INFO L256 TraceCheckUtils]: 56: Hoare triple {11255#(and (<= 2 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:38,060 INFO L273 TraceCheckUtils]: 57: Hoare triple {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} ~cond := #in~cond; {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:38,060 INFO L273 TraceCheckUtils]: 58: Hoare triple {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} assume !(0 == ~cond); {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:38,060 INFO L273 TraceCheckUtils]: 59: Hoare triple {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} assume true; {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:38,061 INFO L268 TraceCheckUtils]: 60: Hoare quadruple {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} {11255#(and (<= 2 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} #65#return; {11255#(and (<= 2 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} is VALID [2018-11-23 12:20:38,062 INFO L273 TraceCheckUtils]: 61: Hoare triple {11255#(and (<= 2 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} havoc #t~mem4; {11255#(and (<= 2 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} is VALID [2018-11-23 12:20:38,063 INFO L273 TraceCheckUtils]: 62: Hoare triple {11255#(and (<= 2 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {11280#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 3 main_~i~0))} is VALID [2018-11-23 12:20:38,064 INFO L273 TraceCheckUtils]: 63: Hoare triple {11280#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 3 main_~i~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11280#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 3 main_~i~0))} is VALID [2018-11-23 12:20:38,076 INFO L256 TraceCheckUtils]: 64: Hoare triple {11280#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 3 main_~i~0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {11236#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_38| Int) (|v_main_~#a~0.base_BEFORE_CALL_38| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_38|) (+ |v_main_~#a~0.offset_BEFORE_CALL_38| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:38,077 INFO L273 TraceCheckUtils]: 65: Hoare triple {11236#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_38| Int) (|v_main_~#a~0.base_BEFORE_CALL_38| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_38|) (+ |v_main_~#a~0.offset_BEFORE_CALL_38| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} ~cond := #in~cond; {11236#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_38| Int) (|v_main_~#a~0.base_BEFORE_CALL_38| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_38|) (+ |v_main_~#a~0.offset_BEFORE_CALL_38| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:38,077 INFO L273 TraceCheckUtils]: 66: Hoare triple {11236#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_38| Int) (|v_main_~#a~0.base_BEFORE_CALL_38| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_38|) (+ |v_main_~#a~0.offset_BEFORE_CALL_38| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} assume !(0 == ~cond); {11236#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_38| Int) (|v_main_~#a~0.base_BEFORE_CALL_38| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_38|) (+ |v_main_~#a~0.offset_BEFORE_CALL_38| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:38,077 INFO L273 TraceCheckUtils]: 67: Hoare triple {11236#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_38| Int) (|v_main_~#a~0.base_BEFORE_CALL_38| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_38|) (+ |v_main_~#a~0.offset_BEFORE_CALL_38| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} assume true; {11236#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_38| Int) (|v_main_~#a~0.base_BEFORE_CALL_38| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_38|) (+ |v_main_~#a~0.offset_BEFORE_CALL_38| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:38,078 INFO L268 TraceCheckUtils]: 68: Hoare quadruple {11236#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_38| Int) (|v_main_~#a~0.base_BEFORE_CALL_38| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_38|) (+ |v_main_~#a~0.offset_BEFORE_CALL_38| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} {11280#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 3 main_~i~0))} #65#return; {11280#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 3 main_~i~0))} is VALID [2018-11-23 12:20:38,078 INFO L273 TraceCheckUtils]: 69: Hoare triple {11280#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 3 main_~i~0))} havoc #t~mem4; {11280#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 3 main_~i~0))} is VALID [2018-11-23 12:20:38,079 INFO L273 TraceCheckUtils]: 70: Hoare triple {11280#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 3 main_~i~0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {11305#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 4 main_~i~0))} is VALID [2018-11-23 12:20:38,080 INFO L273 TraceCheckUtils]: 71: Hoare triple {11305#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 4 main_~i~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11305#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 4 main_~i~0))} is VALID [2018-11-23 12:20:38,106 INFO L256 TraceCheckUtils]: 72: Hoare triple {11305#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 4 main_~i~0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {11236#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_38| Int) (|v_main_~#a~0.base_BEFORE_CALL_38| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_38|) (+ |v_main_~#a~0.offset_BEFORE_CALL_38| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:38,107 INFO L273 TraceCheckUtils]: 73: Hoare triple {11236#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_38| Int) (|v_main_~#a~0.base_BEFORE_CALL_38| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_38|) (+ |v_main_~#a~0.offset_BEFORE_CALL_38| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} ~cond := #in~cond; {11236#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_38| Int) (|v_main_~#a~0.base_BEFORE_CALL_38| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_38|) (+ |v_main_~#a~0.offset_BEFORE_CALL_38| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:38,107 INFO L273 TraceCheckUtils]: 74: Hoare triple {11236#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_38| Int) (|v_main_~#a~0.base_BEFORE_CALL_38| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_38|) (+ |v_main_~#a~0.offset_BEFORE_CALL_38| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} assume !(0 == ~cond); {11236#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_38| Int) (|v_main_~#a~0.base_BEFORE_CALL_38| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_38|) (+ |v_main_~#a~0.offset_BEFORE_CALL_38| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:38,107 INFO L273 TraceCheckUtils]: 75: Hoare triple {11236#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_38| Int) (|v_main_~#a~0.base_BEFORE_CALL_38| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_38|) (+ |v_main_~#a~0.offset_BEFORE_CALL_38| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} assume true; {11236#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_38| Int) (|v_main_~#a~0.base_BEFORE_CALL_38| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_38|) (+ |v_main_~#a~0.offset_BEFORE_CALL_38| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:38,108 INFO L268 TraceCheckUtils]: 76: Hoare quadruple {11236#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_38| Int) (|v_main_~#a~0.base_BEFORE_CALL_38| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_38|) (+ |v_main_~#a~0.offset_BEFORE_CALL_38| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} {11305#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 4 main_~i~0))} #65#return; {11305#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 4 main_~i~0))} is VALID [2018-11-23 12:20:38,108 INFO L273 TraceCheckUtils]: 77: Hoare triple {11305#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 4 main_~i~0))} havoc #t~mem4; {11305#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 4 main_~i~0))} is VALID [2018-11-23 12:20:38,109 INFO L273 TraceCheckUtils]: 78: Hoare triple {11305#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 4 main_~i~0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {11330#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 5 main_~i~0))} is VALID [2018-11-23 12:20:38,110 INFO L273 TraceCheckUtils]: 79: Hoare triple {11330#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 5 main_~i~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11330#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 5 main_~i~0))} is VALID [2018-11-23 12:20:38,121 INFO L256 TraceCheckUtils]: 80: Hoare triple {11330#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 5 main_~i~0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:38,122 INFO L273 TraceCheckUtils]: 81: Hoare triple {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} ~cond := #in~cond; {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:38,123 INFO L273 TraceCheckUtils]: 82: Hoare triple {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} assume !(0 == ~cond); {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:38,125 INFO L273 TraceCheckUtils]: 83: Hoare triple {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} assume true; {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:38,128 INFO L268 TraceCheckUtils]: 84: Hoare quadruple {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} {11330#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 5 main_~i~0))} #65#return; {11330#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 5 main_~i~0))} is VALID [2018-11-23 12:20:38,128 INFO L273 TraceCheckUtils]: 85: Hoare triple {11330#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 5 main_~i~0))} havoc #t~mem4; {11330#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 5 main_~i~0))} is VALID [2018-11-23 12:20:38,130 INFO L273 TraceCheckUtils]: 86: Hoare triple {11330#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 5 main_~i~0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {11355#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 6 main_~i~0))} is VALID [2018-11-23 12:20:38,132 INFO L273 TraceCheckUtils]: 87: Hoare triple {11355#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 6 main_~i~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11355#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 6 main_~i~0))} is VALID [2018-11-23 12:20:38,141 INFO L256 TraceCheckUtils]: 88: Hoare triple {11355#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 6 main_~i~0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:38,142 INFO L273 TraceCheckUtils]: 89: Hoare triple {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} ~cond := #in~cond; {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:38,144 INFO L273 TraceCheckUtils]: 90: Hoare triple {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} assume !(0 == ~cond); {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:38,144 INFO L273 TraceCheckUtils]: 91: Hoare triple {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} assume true; {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:38,145 INFO L268 TraceCheckUtils]: 92: Hoare quadruple {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} {11355#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 6 main_~i~0))} #65#return; {11355#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 6 main_~i~0))} is VALID [2018-11-23 12:20:38,146 INFO L273 TraceCheckUtils]: 93: Hoare triple {11355#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 6 main_~i~0))} havoc #t~mem4; {11355#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 6 main_~i~0))} is VALID [2018-11-23 12:20:38,146 INFO L273 TraceCheckUtils]: 94: Hoare triple {11355#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 6 main_~i~0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {11380#(and (<= 7 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} is VALID [2018-11-23 12:20:38,149 INFO L273 TraceCheckUtils]: 95: Hoare triple {11380#(and (<= 7 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11380#(and (<= 7 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} is VALID [2018-11-23 12:20:40,152 INFO L256 TraceCheckUtils]: 96: Hoare triple {11380#(and (<= 7 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is UNKNOWN [2018-11-23 12:20:40,154 INFO L273 TraceCheckUtils]: 97: Hoare triple {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} ~cond := #in~cond; {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:40,154 INFO L273 TraceCheckUtils]: 98: Hoare triple {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} assume !(0 == ~cond); {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:40,154 INFO L273 TraceCheckUtils]: 99: Hoare triple {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} assume true; {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:40,155 INFO L268 TraceCheckUtils]: 100: Hoare quadruple {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} {11380#(and (<= 7 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} #65#return; {11380#(and (<= 7 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} is VALID [2018-11-23 12:20:40,156 INFO L273 TraceCheckUtils]: 101: Hoare triple {11380#(and (<= 7 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} havoc #t~mem4; {11380#(and (<= 7 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} is VALID [2018-11-23 12:20:40,157 INFO L273 TraceCheckUtils]: 102: Hoare triple {11380#(and (<= 7 main_~i~0) (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {11405#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 8 main_~i~0))} is VALID [2018-11-23 12:20:40,158 INFO L273 TraceCheckUtils]: 103: Hoare triple {11405#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 8 main_~i~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11405#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 8 main_~i~0))} is VALID [2018-11-23 12:20:40,168 INFO L256 TraceCheckUtils]: 104: Hoare triple {11405#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 8 main_~i~0))} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:40,168 INFO L273 TraceCheckUtils]: 105: Hoare triple {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} ~cond := #in~cond; {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:40,169 INFO L273 TraceCheckUtils]: 106: Hoare triple {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} assume !(0 == ~cond); {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:40,169 INFO L273 TraceCheckUtils]: 107: Hoare triple {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} assume true; {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} is VALID [2018-11-23 12:20:40,170 INFO L268 TraceCheckUtils]: 108: Hoare quadruple {11210#(exists ((|v_main_~#a~0.offset_BEFORE_CALL_37| Int) (|v_main_~#a~0.base_BEFORE_CALL_37| Int) (v_main_~i~0_159 Int)) (and (<= v_main_~i~0_159 9) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_37|) (+ |v_main_~#a~0.offset_BEFORE_CALL_37| (* 4 v_main_~i~0_159))) 0) (<= ~SIZE~0 (+ v_main_~i~0_159 1))))} {11405#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 8 main_~i~0))} #65#return; {11405#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 8 main_~i~0))} is VALID [2018-11-23 12:20:40,170 INFO L273 TraceCheckUtils]: 109: Hoare triple {11405#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 8 main_~i~0))} havoc #t~mem4; {11405#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 8 main_~i~0))} is VALID [2018-11-23 12:20:40,171 INFO L273 TraceCheckUtils]: 110: Hoare triple {11405#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 8 main_~i~0))} #t~post3 := ~i~0;~i~0 := 1 + #t~post3;havoc #t~post3; {11430#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 9 main_~i~0))} is VALID [2018-11-23 12:20:40,172 INFO L273 TraceCheckUtils]: 111: Hoare triple {11430#(and (exists ((v_main_~i~0_159 Int)) (and (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 v_main_~i~0_159) |main_~#a~0.offset|)) 0) (<= v_main_~i~0_159 9) (<= ~SIZE~0 (+ v_main_~i~0_159 1)))) (<= 9 main_~i~0))} assume !!(~i~0 < ~SIZE~0);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11071#(= |main_#t~mem4| 0)} is VALID [2018-11-23 12:20:40,173 INFO L256 TraceCheckUtils]: 112: Hoare triple {11071#(= |main_#t~mem4| 0)} call __VERIFIER_assert((if 0 == #t~mem4 then 1 else 0)); {11437#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:20:40,174 INFO L273 TraceCheckUtils]: 113: Hoare triple {11437#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {11441#(= 1 __VERIFIER_assert_~cond)} is VALID [2018-11-23 12:20:40,175 INFO L273 TraceCheckUtils]: 114: Hoare triple {11441#(= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11046#false} is VALID [2018-11-23 12:20:40,175 INFO L273 TraceCheckUtils]: 115: Hoare triple {11046#false} assume !false; {11046#false} is VALID [2018-11-23 12:20:40,223 INFO L134 CoverageAnalysis]: Checked inductivity of 469 backedges. 173 proven. 172 refuted. 52 times theorem prover too weak. 72 trivial. 0 not checked. [2018-11-23 12:20:40,242 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:20:40,242 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [28, 30] total 55 [2018-11-23 12:20:40,243 INFO L78 Accepts]: Start accepts. Automaton has 55 states. Word has length 116 [2018-11-23 12:20:40,243 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:20:40,244 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 55 states. [2018-11-23 12:20:47,361 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 183 edges. 178 inductive. 0 not inductive. 5 times theorem prover too weak to decide inductivity. [2018-11-23 12:20:47,362 INFO L459 AbstractCegarLoop]: Interpolant automaton has 55 states [2018-11-23 12:20:47,362 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 55 interpolants. [2018-11-23 12:20:47,363 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=308, Invalid=2660, Unknown=2, NotChecked=0, Total=2970 [2018-11-23 12:20:47,363 INFO L87 Difference]: Start difference. First operand 120 states and 122 transitions. Second operand 55 states.