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-examples/sorting_bubblesort_true-unreach-call_ground.i -------------------------------------------------------------------------------- This is Ultimate 0.1.23-61f4311 [2018-11-23 11:58:27,677 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 11:58:27,680 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 11:58:27,697 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 11:58:27,697 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 11:58:27,698 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 11:58:27,700 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 11:58:27,703 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 11:58:27,704 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 11:58:27,711 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 11:58:27,712 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 11:58:27,713 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 11:58:27,714 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 11:58:27,715 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 11:58:27,718 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 11:58:27,719 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 11:58:27,719 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 11:58:27,724 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 11:58:27,726 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 11:58:27,730 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 11:58:27,731 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 11:58:27,733 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 11:58:27,736 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 11:58:27,736 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 11:58:27,736 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 11:58:27,737 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 11:58:27,739 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 11:58:27,740 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 11:58:27,741 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 11:58:27,742 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 11:58:27,742 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 11:58:27,744 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 11:58:27,744 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 11:58:27,746 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 11:58:27,747 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 11:58:27,748 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 11:58:27,749 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 11:58:27,775 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 11:58:27,775 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 11:58:27,776 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 11:58:27,776 INFO L133 SettingsManager]: * ... calls to implemented procedures=ONLY_FOR_CONCURRENT_PROGRAMS [2018-11-23 11:58:27,778 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 11:58:27,778 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 11:58:27,778 INFO L133 SettingsManager]: * Use SBE=true [2018-11-23 11:58:27,778 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 11:58:27,779 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 11:58:27,780 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-23 11:58:27,780 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 11:58:27,780 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 11:58:27,780 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 11:58:27,780 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 11:58:27,781 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 11:58:27,781 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 11:58:27,781 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 11:58:27,781 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 11:58:27,781 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 11:58:27,783 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 11:58:27,783 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-23 11:58:27,783 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 11:58:27,783 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-23 11:58:27,784 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 11:58:27,784 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 11:58:27,784 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 11:58:27,784 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 11:58:27,784 INFO L133 SettingsManager]: * Trace refinement strategy=CAMEL [2018-11-23 11:58:27,785 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 11:58:27,785 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-11-23 11:58:27,785 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2018-11-23 11:58:27,832 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 11:58:27,846 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 11:58:27,850 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 11:58:27,852 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 11:58:27,852 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 11:58:27,853 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/array-examples/sorting_bubblesort_true-unreach-call_ground.i [2018-11-23 11:58:27,920 INFO L221 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/697928091/3f115f066e1d4c7eb826647ed1045fe7/FLAGaf13e300e [2018-11-23 11:58:28,417 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 11:58:28,418 INFO L161 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/array-examples/sorting_bubblesort_true-unreach-call_ground.i [2018-11-23 11:58:28,424 INFO L355 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/697928091/3f115f066e1d4c7eb826647ed1045fe7/FLAGaf13e300e [2018-11-23 11:58:28,788 INFO L363 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/697928091/3f115f066e1d4c7eb826647ed1045fe7 [2018-11-23 11:58:28,797 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 11:58:28,798 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 11:58:28,799 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 11:58:28,799 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 11:58:28,803 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 11:58:28,805 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 11:58:28" (1/1) ... [2018-11-23 11:58:28,808 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@63acc025 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:58:28, skipping insertion in model container [2018-11-23 11:58:28,808 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 11:58:28" (1/1) ... [2018-11-23 11:58:28,819 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 11:58:28,843 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 11:58:29,047 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 11:58:29,052 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 11:58:29,081 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 11:58:29,107 INFO L195 MainTranslator]: Completed translation [2018-11-23 11:58:29,107 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:58:29 WrapperNode [2018-11-23 11:58:29,108 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 11:58:29,109 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 11:58:29,109 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 11:58:29,109 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 11:58:29,118 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:58:29" (1/1) ... [2018-11-23 11:58:29,127 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:58:29" (1/1) ... [2018-11-23 11:58:29,135 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 11:58:29,136 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 11:58:29,136 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 11:58:29,136 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 11:58:29,147 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:58:29" (1/1) ... [2018-11-23 11:58:29,147 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:58:29" (1/1) ... [2018-11-23 11:58:29,149 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:58:29" (1/1) ... [2018-11-23 11:58:29,149 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:58:29" (1/1) ... [2018-11-23 11:58:29,161 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:58:29" (1/1) ... [2018-11-23 11:58:29,168 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:58:29" (1/1) ... [2018-11-23 11:58:29,170 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:58:29" (1/1) ... [2018-11-23 11:58:29,172 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 11:58:29,173 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 11:58:29,173 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 11:58:29,173 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 11:58:29,174 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:58:29" (1/1) ... No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 11:58:29,307 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2018-11-23 11:58:29,307 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-23 11:58:29,307 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-23 11:58:29,307 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 11:58:29,307 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 11:58:29,307 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 11:58:29,308 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-23 11:58:29,308 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-23 11:58:29,308 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-23 11:58:29,308 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2018-11-23 11:58:29,308 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2018-11-23 11:58:29,308 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 11:58:29,896 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 11:58:29,896 INFO L280 CfgBuilder]: Removed 4 assue(true) statements. [2018-11-23 11:58:29,899 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 11:58:29 BoogieIcfgContainer [2018-11-23 11:58:29,899 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 11:58:29,900 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-23 11:58:29,901 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-23 11:58:29,904 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-23 11:58:29,904 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 11:58:28" (1/3) ... [2018-11-23 11:58:29,905 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6953e25a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 11:58:29, skipping insertion in model container [2018-11-23 11:58:29,906 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:58:29" (2/3) ... [2018-11-23 11:58:29,906 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6953e25a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 11:58:29, skipping insertion in model container [2018-11-23 11:58:29,906 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 11:58:29" (3/3) ... [2018-11-23 11:58:29,909 INFO L112 eAbstractionObserver]: Analyzing ICFG sorting_bubblesort_true-unreach-call_ground.i [2018-11-23 11:58:29,920 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-23 11:58:29,930 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-23 11:58:29,948 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-23 11:58:29,992 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-23 11:58:29,993 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-23 11:58:29,993 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-23 11:58:29,993 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-23 11:58:29,994 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-23 11:58:29,994 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-23 11:58:29,994 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-23 11:58:29,994 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-23 11:58:29,995 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-23 11:58:30,013 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states. [2018-11-23 11:58:30,019 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 15 [2018-11-23 11:58:30,020 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 11:58:30,021 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 11:58:30,024 INFO L423 AbstractCegarLoop]: === Iteration 1 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 11:58:30,030 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 11:58:30,030 INFO L82 PathProgramCache]: Analyzing trace with hash -1964500077, now seen corresponding path program 1 times [2018-11-23 11:58:30,032 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 11:58:30,033 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 11:58:30,083 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 11:58:30,084 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 11:58:30,084 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 11:58:30,123 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:58:30,177 INFO L256 TraceCheckUtils]: 0: Hoare triple {31#true} call ULTIMATE.init(); {31#true} is VALID [2018-11-23 11:58:30,181 INFO L273 TraceCheckUtils]: 1: Hoare triple {31#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {31#true} is VALID [2018-11-23 11:58:30,182 INFO L273 TraceCheckUtils]: 2: Hoare triple {31#true} assume true; {31#true} is VALID [2018-11-23 11:58:30,182 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {31#true} {31#true} #79#return; {31#true} is VALID [2018-11-23 11:58:30,182 INFO L256 TraceCheckUtils]: 4: Hoare triple {31#true} call #t~ret8 := main(); {31#true} is VALID [2018-11-23 11:58:30,183 INFO L273 TraceCheckUtils]: 5: Hoare triple {31#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {31#true} is VALID [2018-11-23 11:58:30,186 INFO L273 TraceCheckUtils]: 6: Hoare triple {31#true} assume !true; {32#false} is VALID [2018-11-23 11:58:30,186 INFO L273 TraceCheckUtils]: 7: Hoare triple {32#false} havoc ~x~0;havoc ~y~0;~x~0 := 0; {32#false} is VALID [2018-11-23 11:58:30,187 INFO L273 TraceCheckUtils]: 8: Hoare triple {32#false} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {32#false} is VALID [2018-11-23 11:58:30,187 INFO L273 TraceCheckUtils]: 9: Hoare triple {32#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {32#false} is VALID [2018-11-23 11:58:30,187 INFO L256 TraceCheckUtils]: 10: Hoare triple {32#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {32#false} is VALID [2018-11-23 11:58:30,188 INFO L273 TraceCheckUtils]: 11: Hoare triple {32#false} ~cond := #in~cond; {32#false} is VALID [2018-11-23 11:58:30,188 INFO L273 TraceCheckUtils]: 12: Hoare triple {32#false} assume 0 == ~cond; {32#false} is VALID [2018-11-23 11:58:30,188 INFO L273 TraceCheckUtils]: 13: Hoare triple {32#false} assume !false; {32#false} is VALID [2018-11-23 11:58:30,192 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 11:58:30,194 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 11:58:30,195 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-23 11:58:30,200 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 14 [2018-11-23 11:58:30,204 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 11:58:30,208 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states. [2018-11-23 11:58:30,319 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 11:58:30,320 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-23 11:58:30,330 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-23 11:58:30,331 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 11:58:30,334 INFO L87 Difference]: Start difference. First operand 28 states. Second operand 2 states. [2018-11-23 11:58:30,654 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:58:30,655 INFO L93 Difference]: Finished difference Result 50 states and 69 transitions. [2018-11-23 11:58:30,655 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-23 11:58:30,655 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 14 [2018-11-23 11:58:30,655 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 11:58:30,657 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-23 11:58:30,668 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 69 transitions. [2018-11-23 11:58:30,669 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-23 11:58:30,674 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 69 transitions. [2018-11-23 11:58:30,674 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 69 transitions. [2018-11-23 11:58:30,917 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 11:58:30,929 INFO L225 Difference]: With dead ends: 50 [2018-11-23 11:58:30,929 INFO L226 Difference]: Without dead ends: 23 [2018-11-23 11:58:30,933 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 11:58:30,949 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 23 states. [2018-11-23 11:58:30,981 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 23 to 23. [2018-11-23 11:58:30,981 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 11:58:30,981 INFO L82 GeneralOperation]: Start isEquivalent. First operand 23 states. Second operand 23 states. [2018-11-23 11:58:30,982 INFO L74 IsIncluded]: Start isIncluded. First operand 23 states. Second operand 23 states. [2018-11-23 11:58:30,982 INFO L87 Difference]: Start difference. First operand 23 states. Second operand 23 states. [2018-11-23 11:58:30,986 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:58:30,986 INFO L93 Difference]: Finished difference Result 23 states and 27 transitions. [2018-11-23 11:58:30,987 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 27 transitions. [2018-11-23 11:58:30,987 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:58:30,987 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:58:30,988 INFO L74 IsIncluded]: Start isIncluded. First operand 23 states. Second operand 23 states. [2018-11-23 11:58:30,988 INFO L87 Difference]: Start difference. First operand 23 states. Second operand 23 states. [2018-11-23 11:58:30,992 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:58:30,992 INFO L93 Difference]: Finished difference Result 23 states and 27 transitions. [2018-11-23 11:58:30,993 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 27 transitions. [2018-11-23 11:58:30,993 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:58:30,993 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:58:30,994 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 11:58:30,994 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 11:58:30,994 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 23 states. [2018-11-23 11:58:30,997 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 27 transitions. [2018-11-23 11:58:30,999 INFO L78 Accepts]: Start accepts. Automaton has 23 states and 27 transitions. Word has length 14 [2018-11-23 11:58:30,999 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 11:58:31,000 INFO L480 AbstractCegarLoop]: Abstraction has 23 states and 27 transitions. [2018-11-23 11:58:31,000 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-23 11:58:31,000 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 27 transitions. [2018-11-23 11:58:31,001 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 15 [2018-11-23 11:58:31,001 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 11:58:31,001 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 11:58:31,001 INFO L423 AbstractCegarLoop]: === Iteration 2 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 11:58:31,002 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 11:58:31,002 INFO L82 PathProgramCache]: Analyzing trace with hash 900535178, now seen corresponding path program 1 times [2018-11-23 11:58:31,002 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 11:58:31,002 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 11:58:31,004 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 11:58:31,004 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 11:58:31,004 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 11:58:31,022 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:58:31,094 INFO L256 TraceCheckUtils]: 0: Hoare triple {180#true} call ULTIMATE.init(); {180#true} is VALID [2018-11-23 11:58:31,095 INFO L273 TraceCheckUtils]: 1: Hoare triple {180#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {180#true} is VALID [2018-11-23 11:58:31,096 INFO L273 TraceCheckUtils]: 2: Hoare triple {180#true} assume true; {180#true} is VALID [2018-11-23 11:58:31,096 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {180#true} {180#true} #79#return; {180#true} is VALID [2018-11-23 11:58:31,096 INFO L256 TraceCheckUtils]: 4: Hoare triple {180#true} call #t~ret8 := main(); {180#true} is VALID [2018-11-23 11:58:31,098 INFO L273 TraceCheckUtils]: 5: Hoare triple {180#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {182#(<= 1 main_~swapped~0)} is VALID [2018-11-23 11:58:31,099 INFO L273 TraceCheckUtils]: 6: Hoare triple {182#(<= 1 main_~swapped~0)} assume !(0 != ~swapped~0); {181#false} is VALID [2018-11-23 11:58:31,099 INFO L273 TraceCheckUtils]: 7: Hoare triple {181#false} havoc ~x~0;havoc ~y~0;~x~0 := 0; {181#false} is VALID [2018-11-23 11:58:31,099 INFO L273 TraceCheckUtils]: 8: Hoare triple {181#false} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {181#false} is VALID [2018-11-23 11:58:31,100 INFO L273 TraceCheckUtils]: 9: Hoare triple {181#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {181#false} is VALID [2018-11-23 11:58:31,100 INFO L256 TraceCheckUtils]: 10: Hoare triple {181#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {181#false} is VALID [2018-11-23 11:58:31,101 INFO L273 TraceCheckUtils]: 11: Hoare triple {181#false} ~cond := #in~cond; {181#false} is VALID [2018-11-23 11:58:31,101 INFO L273 TraceCheckUtils]: 12: Hoare triple {181#false} assume 0 == ~cond; {181#false} is VALID [2018-11-23 11:58:31,102 INFO L273 TraceCheckUtils]: 13: Hoare triple {181#false} assume !false; {181#false} is VALID [2018-11-23 11:58:31,103 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 11:58:31,104 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 11:58:31,104 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2018-11-23 11:58:31,105 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 14 [2018-11-23 11:58:31,106 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 11:58:31,106 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2018-11-23 11:58:31,136 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 11:58:31,136 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2018-11-23 11:58:31,136 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2018-11-23 11:58:31,137 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-23 11:58:31,137 INFO L87 Difference]: Start difference. First operand 23 states and 27 transitions. Second operand 3 states. [2018-11-23 11:58:31,318 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:58:31,319 INFO L93 Difference]: Finished difference Result 40 states and 48 transitions. [2018-11-23 11:58:31,319 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-23 11:58:31,319 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 14 [2018-11-23 11:58:31,319 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 11:58:31,320 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-23 11:58:31,323 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 48 transitions. [2018-11-23 11:58:31,323 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-23 11:58:31,326 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 48 transitions. [2018-11-23 11:58:31,326 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 48 transitions. [2018-11-23 11:58:31,768 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:58:31,770 INFO L225 Difference]: With dead ends: 40 [2018-11-23 11:58:31,771 INFO L226 Difference]: Without dead ends: 27 [2018-11-23 11:58:31,772 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 11:58:31,772 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2018-11-23 11:58:31,786 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2018-11-23 11:58:31,787 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 11:58:31,787 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand 27 states. [2018-11-23 11:58:31,787 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand 27 states. [2018-11-23 11:58:31,787 INFO L87 Difference]: Start difference. First operand 27 states. Second operand 27 states. [2018-11-23 11:58:31,791 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:58:31,791 INFO L93 Difference]: Finished difference Result 27 states and 33 transitions. [2018-11-23 11:58:31,791 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 33 transitions. [2018-11-23 11:58:31,792 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:58:31,792 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:58:31,792 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand 27 states. [2018-11-23 11:58:31,793 INFO L87 Difference]: Start difference. First operand 27 states. Second operand 27 states. [2018-11-23 11:58:31,795 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:58:31,796 INFO L93 Difference]: Finished difference Result 27 states and 33 transitions. [2018-11-23 11:58:31,796 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 33 transitions. [2018-11-23 11:58:31,796 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:58:31,797 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:58:31,797 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 11:58:31,797 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 11:58:31,797 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 27 states. [2018-11-23 11:58:31,800 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 33 transitions. [2018-11-23 11:58:31,800 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 33 transitions. Word has length 14 [2018-11-23 11:58:31,800 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 11:58:31,800 INFO L480 AbstractCegarLoop]: Abstraction has 27 states and 33 transitions. [2018-11-23 11:58:31,801 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2018-11-23 11:58:31,801 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 33 transitions. [2018-11-23 11:58:31,801 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2018-11-23 11:58:31,802 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 11:58:31,802 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 11:58:31,802 INFO L423 AbstractCegarLoop]: === Iteration 3 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 11:58:31,802 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 11:58:31,803 INFO L82 PathProgramCache]: Analyzing trace with hash 817144017, now seen corresponding path program 1 times [2018-11-23 11:58:31,803 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 11:58:31,803 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 11:58:31,804 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 11:58:31,805 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 11:58:31,805 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 11:58:31,815 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:58:31,893 INFO L256 TraceCheckUtils]: 0: Hoare triple {334#true} call ULTIMATE.init(); {334#true} is VALID [2018-11-23 11:58:31,893 INFO L273 TraceCheckUtils]: 1: Hoare triple {334#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {334#true} is VALID [2018-11-23 11:58:31,894 INFO L273 TraceCheckUtils]: 2: Hoare triple {334#true} assume true; {334#true} is VALID [2018-11-23 11:58:31,895 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {334#true} {334#true} #79#return; {334#true} is VALID [2018-11-23 11:58:31,895 INFO L256 TraceCheckUtils]: 4: Hoare triple {334#true} call #t~ret8 := main(); {334#true} is VALID [2018-11-23 11:58:31,896 INFO L273 TraceCheckUtils]: 5: Hoare triple {334#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {334#true} is VALID [2018-11-23 11:58:31,897 INFO L273 TraceCheckUtils]: 6: Hoare triple {334#true} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {336#(= main_~i~0 1)} is VALID [2018-11-23 11:58:31,898 INFO L273 TraceCheckUtils]: 7: Hoare triple {336#(= main_~i~0 1)} assume !(~i~0 < 100000); {335#false} is VALID [2018-11-23 11:58:31,898 INFO L273 TraceCheckUtils]: 8: Hoare triple {335#false} assume !(0 != ~swapped~0); {335#false} is VALID [2018-11-23 11:58:31,898 INFO L273 TraceCheckUtils]: 9: Hoare triple {335#false} havoc ~x~0;havoc ~y~0;~x~0 := 0; {335#false} is VALID [2018-11-23 11:58:31,899 INFO L273 TraceCheckUtils]: 10: Hoare triple {335#false} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {335#false} is VALID [2018-11-23 11:58:31,899 INFO L273 TraceCheckUtils]: 11: Hoare triple {335#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {335#false} is VALID [2018-11-23 11:58:31,900 INFO L256 TraceCheckUtils]: 12: Hoare triple {335#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {335#false} is VALID [2018-11-23 11:58:31,900 INFO L273 TraceCheckUtils]: 13: Hoare triple {335#false} ~cond := #in~cond; {335#false} is VALID [2018-11-23 11:58:31,900 INFO L273 TraceCheckUtils]: 14: Hoare triple {335#false} assume 0 == ~cond; {335#false} is VALID [2018-11-23 11:58:31,901 INFO L273 TraceCheckUtils]: 15: Hoare triple {335#false} assume !false; {335#false} is VALID [2018-11-23 11:58:31,902 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 11:58:31,903 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 11:58:31,903 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2018-11-23 11:58:31,903 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 16 [2018-11-23 11:58:31,904 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 11:58:31,904 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2018-11-23 11:58:31,931 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:58:31,931 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2018-11-23 11:58:31,931 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2018-11-23 11:58:31,931 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-23 11:58:31,932 INFO L87 Difference]: Start difference. First operand 27 states and 33 transitions. Second operand 3 states. [2018-11-23 11:58:32,149 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:58:32,150 INFO L93 Difference]: Finished difference Result 52 states and 66 transitions. [2018-11-23 11:58:32,150 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-23 11:58:32,150 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 16 [2018-11-23 11:58:32,151 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 11:58:32,151 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-23 11:58:32,154 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 53 transitions. [2018-11-23 11:58:32,154 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-23 11:58:32,157 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 53 transitions. [2018-11-23 11:58:32,157 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 53 transitions. [2018-11-23 11:58:32,299 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 11:58:32,301 INFO L225 Difference]: With dead ends: 52 [2018-11-23 11:58:32,301 INFO L226 Difference]: Without dead ends: 31 [2018-11-23 11:58:32,302 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 11:58:32,303 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states. [2018-11-23 11:58:32,323 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 28. [2018-11-23 11:58:32,323 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 11:58:32,323 INFO L82 GeneralOperation]: Start isEquivalent. First operand 31 states. Second operand 28 states. [2018-11-23 11:58:32,324 INFO L74 IsIncluded]: Start isIncluded. First operand 31 states. Second operand 28 states. [2018-11-23 11:58:32,324 INFO L87 Difference]: Start difference. First operand 31 states. Second operand 28 states. [2018-11-23 11:58:32,326 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:58:32,326 INFO L93 Difference]: Finished difference Result 31 states and 38 transitions. [2018-11-23 11:58:32,327 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 38 transitions. [2018-11-23 11:58:32,327 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:58:32,327 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:58:32,327 INFO L74 IsIncluded]: Start isIncluded. First operand 28 states. Second operand 31 states. [2018-11-23 11:58:32,328 INFO L87 Difference]: Start difference. First operand 28 states. Second operand 31 states. [2018-11-23 11:58:32,330 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:58:32,330 INFO L93 Difference]: Finished difference Result 31 states and 38 transitions. [2018-11-23 11:58:32,330 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 38 transitions. [2018-11-23 11:58:32,331 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:58:32,331 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:58:32,331 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 11:58:32,332 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 11:58:32,332 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 28 states. [2018-11-23 11:58:32,334 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 34 transitions. [2018-11-23 11:58:32,334 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 34 transitions. Word has length 16 [2018-11-23 11:58:32,334 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 11:58:32,334 INFO L480 AbstractCegarLoop]: Abstraction has 28 states and 34 transitions. [2018-11-23 11:58:32,335 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2018-11-23 11:58:32,335 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 34 transitions. [2018-11-23 11:58:32,335 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2018-11-23 11:58:32,336 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 11:58:32,336 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 11:58:32,336 INFO L423 AbstractCegarLoop]: === Iteration 4 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 11:58:32,336 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 11:58:32,336 INFO L82 PathProgramCache]: Analyzing trace with hash -1624563448, now seen corresponding path program 1 times [2018-11-23 11:58:32,337 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 11:58:32,337 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 11:58:32,338 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 11:58:32,338 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 11:58:32,338 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 11:58:32,367 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:58:32,475 INFO L256 TraceCheckUtils]: 0: Hoare triple {515#true} call ULTIMATE.init(); {515#true} is VALID [2018-11-23 11:58:32,476 INFO L273 TraceCheckUtils]: 1: Hoare triple {515#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {515#true} is VALID [2018-11-23 11:58:32,476 INFO L273 TraceCheckUtils]: 2: Hoare triple {515#true} assume true; {515#true} is VALID [2018-11-23 11:58:32,476 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {515#true} {515#true} #79#return; {515#true} is VALID [2018-11-23 11:58:32,477 INFO L256 TraceCheckUtils]: 4: Hoare triple {515#true} call #t~ret8 := main(); {515#true} is VALID [2018-11-23 11:58:32,477 INFO L273 TraceCheckUtils]: 5: Hoare triple {515#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {515#true} is VALID [2018-11-23 11:58:32,479 INFO L273 TraceCheckUtils]: 6: Hoare triple {515#true} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {517#(= main_~i~0 1)} is VALID [2018-11-23 11:58:32,492 INFO L273 TraceCheckUtils]: 7: Hoare triple {517#(= main_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {517#(= main_~i~0 1)} is VALID [2018-11-23 11:58:32,495 INFO L273 TraceCheckUtils]: 8: Hoare triple {517#(= main_~i~0 1)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {517#(= main_~i~0 1)} is VALID [2018-11-23 11:58:32,501 INFO L273 TraceCheckUtils]: 9: Hoare triple {517#(= main_~i~0 1)} ~i~0 := 1 + ~i~0; {518#(<= main_~i~0 2)} is VALID [2018-11-23 11:58:32,502 INFO L273 TraceCheckUtils]: 10: Hoare triple {518#(<= main_~i~0 2)} assume !(~i~0 < 100000); {516#false} is VALID [2018-11-23 11:58:32,502 INFO L273 TraceCheckUtils]: 11: Hoare triple {516#false} assume !(0 != ~swapped~0); {516#false} is VALID [2018-11-23 11:58:32,502 INFO L273 TraceCheckUtils]: 12: Hoare triple {516#false} havoc ~x~0;havoc ~y~0;~x~0 := 0; {516#false} is VALID [2018-11-23 11:58:32,502 INFO L273 TraceCheckUtils]: 13: Hoare triple {516#false} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {516#false} is VALID [2018-11-23 11:58:32,503 INFO L273 TraceCheckUtils]: 14: Hoare triple {516#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {516#false} is VALID [2018-11-23 11:58:32,503 INFO L256 TraceCheckUtils]: 15: Hoare triple {516#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {516#false} is VALID [2018-11-23 11:58:32,503 INFO L273 TraceCheckUtils]: 16: Hoare triple {516#false} ~cond := #in~cond; {516#false} is VALID [2018-11-23 11:58:32,504 INFO L273 TraceCheckUtils]: 17: Hoare triple {516#false} assume 0 == ~cond; {516#false} is VALID [2018-11-23 11:58:32,504 INFO L273 TraceCheckUtils]: 18: Hoare triple {516#false} assume !false; {516#false} is VALID [2018-11-23 11:58:32,505 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 11:58:32,505 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 11:58:32,505 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 11:58:32,516 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 11:58:32,537 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:58:32,563 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:58:32,567 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 11:58:32,829 INFO L256 TraceCheckUtils]: 0: Hoare triple {515#true} call ULTIMATE.init(); {515#true} is VALID [2018-11-23 11:58:32,830 INFO L273 TraceCheckUtils]: 1: Hoare triple {515#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {515#true} is VALID [2018-11-23 11:58:32,830 INFO L273 TraceCheckUtils]: 2: Hoare triple {515#true} assume true; {515#true} is VALID [2018-11-23 11:58:32,830 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {515#true} {515#true} #79#return; {515#true} is VALID [2018-11-23 11:58:32,830 INFO L256 TraceCheckUtils]: 4: Hoare triple {515#true} call #t~ret8 := main(); {515#true} is VALID [2018-11-23 11:58:32,831 INFO L273 TraceCheckUtils]: 5: Hoare triple {515#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {515#true} is VALID [2018-11-23 11:58:32,848 INFO L273 TraceCheckUtils]: 6: Hoare triple {515#true} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {540#(<= main_~i~0 1)} is VALID [2018-11-23 11:58:32,848 INFO L273 TraceCheckUtils]: 7: Hoare triple {540#(<= main_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {540#(<= main_~i~0 1)} is VALID [2018-11-23 11:58:32,852 INFO L273 TraceCheckUtils]: 8: Hoare triple {540#(<= main_~i~0 1)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {540#(<= main_~i~0 1)} is VALID [2018-11-23 11:58:32,854 INFO L273 TraceCheckUtils]: 9: Hoare triple {540#(<= main_~i~0 1)} ~i~0 := 1 + ~i~0; {518#(<= main_~i~0 2)} is VALID [2018-11-23 11:58:32,854 INFO L273 TraceCheckUtils]: 10: Hoare triple {518#(<= main_~i~0 2)} assume !(~i~0 < 100000); {516#false} is VALID [2018-11-23 11:58:32,855 INFO L273 TraceCheckUtils]: 11: Hoare triple {516#false} assume !(0 != ~swapped~0); {516#false} is VALID [2018-11-23 11:58:32,855 INFO L273 TraceCheckUtils]: 12: Hoare triple {516#false} havoc ~x~0;havoc ~y~0;~x~0 := 0; {516#false} is VALID [2018-11-23 11:58:32,855 INFO L273 TraceCheckUtils]: 13: Hoare triple {516#false} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {516#false} is VALID [2018-11-23 11:58:32,855 INFO L273 TraceCheckUtils]: 14: Hoare triple {516#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {516#false} is VALID [2018-11-23 11:58:32,855 INFO L256 TraceCheckUtils]: 15: Hoare triple {516#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {516#false} is VALID [2018-11-23 11:58:32,856 INFO L273 TraceCheckUtils]: 16: Hoare triple {516#false} ~cond := #in~cond; {516#false} is VALID [2018-11-23 11:58:32,856 INFO L273 TraceCheckUtils]: 17: Hoare triple {516#false} assume 0 == ~cond; {516#false} is VALID [2018-11-23 11:58:32,856 INFO L273 TraceCheckUtils]: 18: Hoare triple {516#false} assume !false; {516#false} is VALID [2018-11-23 11:58:32,857 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 11:58:32,877 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 11:58:32,877 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4] total 5 [2018-11-23 11:58:32,878 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 19 [2018-11-23 11:58:32,878 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 11:58:32,878 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2018-11-23 11:58:32,928 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:58:32,929 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2018-11-23 11:58:32,929 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-23 11:58:32,929 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=10, Unknown=0, NotChecked=0, Total=20 [2018-11-23 11:58:32,929 INFO L87 Difference]: Start difference. First operand 28 states and 34 transitions. Second operand 5 states. [2018-11-23 11:58:33,320 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:58:33,321 INFO L93 Difference]: Finished difference Result 59 states and 76 transitions. [2018-11-23 11:58:33,321 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-11-23 11:58:33,321 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 19 [2018-11-23 11:58:33,321 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 11:58:33,322 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 11:58:33,324 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 57 transitions. [2018-11-23 11:58:33,325 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 11:58:33,327 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 57 transitions. [2018-11-23 11:58:33,328 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 57 transitions. [2018-11-23 11:58:33,492 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:58:33,494 INFO L225 Difference]: With dead ends: 59 [2018-11-23 11:58:33,494 INFO L226 Difference]: Without dead ends: 37 [2018-11-23 11:58:33,495 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 19 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=10, Invalid=10, Unknown=0, NotChecked=0, Total=20 [2018-11-23 11:58:33,496 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2018-11-23 11:58:33,517 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 33. [2018-11-23 11:58:33,518 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 11:58:33,518 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand 33 states. [2018-11-23 11:58:33,518 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand 33 states. [2018-11-23 11:58:33,518 INFO L87 Difference]: Start difference. First operand 37 states. Second operand 33 states. [2018-11-23 11:58:33,521 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:58:33,521 INFO L93 Difference]: Finished difference Result 37 states and 46 transitions. [2018-11-23 11:58:33,522 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 46 transitions. [2018-11-23 11:58:33,522 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:58:33,523 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:58:33,523 INFO L74 IsIncluded]: Start isIncluded. First operand 33 states. Second operand 37 states. [2018-11-23 11:58:33,523 INFO L87 Difference]: Start difference. First operand 33 states. Second operand 37 states. [2018-11-23 11:58:33,525 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:58:33,526 INFO L93 Difference]: Finished difference Result 37 states and 46 transitions. [2018-11-23 11:58:33,526 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 46 transitions. [2018-11-23 11:58:33,526 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:58:33,527 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:58:33,527 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 11:58:33,527 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 11:58:33,527 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 33 states. [2018-11-23 11:58:33,529 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 40 transitions. [2018-11-23 11:58:33,529 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 40 transitions. Word has length 19 [2018-11-23 11:58:33,529 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 11:58:33,530 INFO L480 AbstractCegarLoop]: Abstraction has 33 states and 40 transitions. [2018-11-23 11:58:33,530 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2018-11-23 11:58:33,530 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 40 transitions. [2018-11-23 11:58:33,531 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2018-11-23 11:58:33,531 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 11:58:33,531 INFO L402 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 11:58:33,531 INFO L423 AbstractCegarLoop]: === Iteration 5 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 11:58:33,532 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 11:58:33,532 INFO L82 PathProgramCache]: Analyzing trace with hash 1329439089, now seen corresponding path program 2 times [2018-11-23 11:58:33,532 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 11:58:33,532 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 11:58:33,533 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 11:58:33,533 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 11:58:33,534 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 11:58:33,549 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:58:33,635 INFO L256 TraceCheckUtils]: 0: Hoare triple {781#true} call ULTIMATE.init(); {781#true} is VALID [2018-11-23 11:58:33,635 INFO L273 TraceCheckUtils]: 1: Hoare triple {781#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {781#true} is VALID [2018-11-23 11:58:33,636 INFO L273 TraceCheckUtils]: 2: Hoare triple {781#true} assume true; {781#true} is VALID [2018-11-23 11:58:33,636 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {781#true} {781#true} #79#return; {781#true} is VALID [2018-11-23 11:58:33,637 INFO L256 TraceCheckUtils]: 4: Hoare triple {781#true} call #t~ret8 := main(); {781#true} is VALID [2018-11-23 11:58:33,637 INFO L273 TraceCheckUtils]: 5: Hoare triple {781#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {781#true} is VALID [2018-11-23 11:58:33,648 INFO L273 TraceCheckUtils]: 6: Hoare triple {781#true} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {783#(= main_~i~0 1)} is VALID [2018-11-23 11:58:33,651 INFO L273 TraceCheckUtils]: 7: Hoare triple {783#(= main_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {783#(= main_~i~0 1)} is VALID [2018-11-23 11:58:33,651 INFO L273 TraceCheckUtils]: 8: Hoare triple {783#(= main_~i~0 1)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {783#(= main_~i~0 1)} is VALID [2018-11-23 11:58:33,653 INFO L273 TraceCheckUtils]: 9: Hoare triple {783#(= main_~i~0 1)} ~i~0 := 1 + ~i~0; {784#(<= main_~i~0 2)} is VALID [2018-11-23 11:58:33,653 INFO L273 TraceCheckUtils]: 10: Hoare triple {784#(<= main_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {784#(<= main_~i~0 2)} is VALID [2018-11-23 11:58:33,656 INFO L273 TraceCheckUtils]: 11: Hoare triple {784#(<= main_~i~0 2)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {784#(<= main_~i~0 2)} is VALID [2018-11-23 11:58:33,658 INFO L273 TraceCheckUtils]: 12: Hoare triple {784#(<= main_~i~0 2)} ~i~0 := 1 + ~i~0; {785#(<= main_~i~0 3)} is VALID [2018-11-23 11:58:33,658 INFO L273 TraceCheckUtils]: 13: Hoare triple {785#(<= main_~i~0 3)} assume !(~i~0 < 100000); {782#false} is VALID [2018-11-23 11:58:33,659 INFO L273 TraceCheckUtils]: 14: Hoare triple {782#false} assume !(0 != ~swapped~0); {782#false} is VALID [2018-11-23 11:58:33,659 INFO L273 TraceCheckUtils]: 15: Hoare triple {782#false} havoc ~x~0;havoc ~y~0;~x~0 := 0; {782#false} is VALID [2018-11-23 11:58:33,659 INFO L273 TraceCheckUtils]: 16: Hoare triple {782#false} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {782#false} is VALID [2018-11-23 11:58:33,659 INFO L273 TraceCheckUtils]: 17: Hoare triple {782#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {782#false} is VALID [2018-11-23 11:58:33,660 INFO L256 TraceCheckUtils]: 18: Hoare triple {782#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {782#false} is VALID [2018-11-23 11:58:33,660 INFO L273 TraceCheckUtils]: 19: Hoare triple {782#false} ~cond := #in~cond; {782#false} is VALID [2018-11-23 11:58:33,660 INFO L273 TraceCheckUtils]: 20: Hoare triple {782#false} assume 0 == ~cond; {782#false} is VALID [2018-11-23 11:58:33,660 INFO L273 TraceCheckUtils]: 21: Hoare triple {782#false} assume !false; {782#false} is VALID [2018-11-23 11:58:33,661 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 1 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 11:58:33,662 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 11:58:33,662 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 11:58:33,678 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 11:58:33,704 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 11:58:33,705 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 11:58:33,714 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:58:33,716 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 11:58:33,791 INFO L256 TraceCheckUtils]: 0: Hoare triple {781#true} call ULTIMATE.init(); {781#true} is VALID [2018-11-23 11:58:33,791 INFO L273 TraceCheckUtils]: 1: Hoare triple {781#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {781#true} is VALID [2018-11-23 11:58:33,792 INFO L273 TraceCheckUtils]: 2: Hoare triple {781#true} assume true; {781#true} is VALID [2018-11-23 11:58:33,793 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {781#true} {781#true} #79#return; {781#true} is VALID [2018-11-23 11:58:33,793 INFO L256 TraceCheckUtils]: 4: Hoare triple {781#true} call #t~ret8 := main(); {781#true} is VALID [2018-11-23 11:58:33,793 INFO L273 TraceCheckUtils]: 5: Hoare triple {781#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {781#true} is VALID [2018-11-23 11:58:33,798 INFO L273 TraceCheckUtils]: 6: Hoare triple {781#true} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {807#(<= main_~i~0 1)} is VALID [2018-11-23 11:58:33,799 INFO L273 TraceCheckUtils]: 7: Hoare triple {807#(<= main_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {807#(<= main_~i~0 1)} is VALID [2018-11-23 11:58:33,801 INFO L273 TraceCheckUtils]: 8: Hoare triple {807#(<= main_~i~0 1)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {807#(<= main_~i~0 1)} is VALID [2018-11-23 11:58:33,803 INFO L273 TraceCheckUtils]: 9: Hoare triple {807#(<= main_~i~0 1)} ~i~0 := 1 + ~i~0; {784#(<= main_~i~0 2)} is VALID [2018-11-23 11:58:33,803 INFO L273 TraceCheckUtils]: 10: Hoare triple {784#(<= main_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {784#(<= main_~i~0 2)} is VALID [2018-11-23 11:58:33,806 INFO L273 TraceCheckUtils]: 11: Hoare triple {784#(<= main_~i~0 2)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {784#(<= main_~i~0 2)} is VALID [2018-11-23 11:58:33,806 INFO L273 TraceCheckUtils]: 12: Hoare triple {784#(<= main_~i~0 2)} ~i~0 := 1 + ~i~0; {785#(<= main_~i~0 3)} is VALID [2018-11-23 11:58:33,807 INFO L273 TraceCheckUtils]: 13: Hoare triple {785#(<= main_~i~0 3)} assume !(~i~0 < 100000); {782#false} is VALID [2018-11-23 11:58:33,807 INFO L273 TraceCheckUtils]: 14: Hoare triple {782#false} assume !(0 != ~swapped~0); {782#false} is VALID [2018-11-23 11:58:33,807 INFO L273 TraceCheckUtils]: 15: Hoare triple {782#false} havoc ~x~0;havoc ~y~0;~x~0 := 0; {782#false} is VALID [2018-11-23 11:58:33,808 INFO L273 TraceCheckUtils]: 16: Hoare triple {782#false} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {782#false} is VALID [2018-11-23 11:58:33,808 INFO L273 TraceCheckUtils]: 17: Hoare triple {782#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {782#false} is VALID [2018-11-23 11:58:33,808 INFO L256 TraceCheckUtils]: 18: Hoare triple {782#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {782#false} is VALID [2018-11-23 11:58:33,808 INFO L273 TraceCheckUtils]: 19: Hoare triple {782#false} ~cond := #in~cond; {782#false} is VALID [2018-11-23 11:58:33,809 INFO L273 TraceCheckUtils]: 20: Hoare triple {782#false} assume 0 == ~cond; {782#false} is VALID [2018-11-23 11:58:33,809 INFO L273 TraceCheckUtils]: 21: Hoare triple {782#false} assume !false; {782#false} is VALID [2018-11-23 11:58:33,811 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 1 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 11:58:33,835 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 11:58:33,835 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 6 [2018-11-23 11:58:33,836 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 22 [2018-11-23 11:58:33,836 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 11:58:33,836 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2018-11-23 11:58:33,873 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:58:33,873 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2018-11-23 11:58:33,873 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2018-11-23 11:58:33,874 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2018-11-23 11:58:33,874 INFO L87 Difference]: Start difference. First operand 33 states and 40 transitions. Second operand 6 states. [2018-11-23 11:58:34,115 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:58:34,116 INFO L93 Difference]: Finished difference Result 70 states and 90 transitions. [2018-11-23 11:58:34,116 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-23 11:58:34,116 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 22 [2018-11-23 11:58:34,116 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 11:58:34,116 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 11:58:34,118 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 61 transitions. [2018-11-23 11:58:34,119 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 11:58:34,121 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 61 transitions. [2018-11-23 11:58:34,121 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 61 transitions. [2018-11-23 11:58:34,202 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 11:58:34,204 INFO L225 Difference]: With dead ends: 70 [2018-11-23 11:58:34,204 INFO L226 Difference]: Without dead ends: 43 [2018-11-23 11:58:34,205 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 26 GetRequests, 22 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2018-11-23 11:58:34,205 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2018-11-23 11:58:34,243 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 39. [2018-11-23 11:58:34,243 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 11:58:34,244 INFO L82 GeneralOperation]: Start isEquivalent. First operand 43 states. Second operand 39 states. [2018-11-23 11:58:34,244 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand 39 states. [2018-11-23 11:58:34,244 INFO L87 Difference]: Start difference. First operand 43 states. Second operand 39 states. [2018-11-23 11:58:34,246 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:58:34,247 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2018-11-23 11:58:34,247 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2018-11-23 11:58:34,248 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:58:34,248 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:58:34,248 INFO L74 IsIncluded]: Start isIncluded. First operand 39 states. Second operand 43 states. [2018-11-23 11:58:34,248 INFO L87 Difference]: Start difference. First operand 39 states. Second operand 43 states. [2018-11-23 11:58:34,250 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:58:34,251 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2018-11-23 11:58:34,251 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2018-11-23 11:58:34,252 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:58:34,252 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:58:34,252 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 11:58:34,252 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 11:58:34,252 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 39 states. [2018-11-23 11:58:34,254 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 39 states to 39 states and 48 transitions. [2018-11-23 11:58:34,255 INFO L78 Accepts]: Start accepts. Automaton has 39 states and 48 transitions. Word has length 22 [2018-11-23 11:58:34,255 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 11:58:34,255 INFO L480 AbstractCegarLoop]: Abstraction has 39 states and 48 transitions. [2018-11-23 11:58:34,255 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2018-11-23 11:58:34,255 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 48 transitions. [2018-11-23 11:58:34,256 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2018-11-23 11:58:34,256 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 11:58:34,256 INFO L402 BasicCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 11:58:34,257 INFO L423 AbstractCegarLoop]: === Iteration 6 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 11:58:34,257 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 11:58:34,257 INFO L82 PathProgramCache]: Analyzing trace with hash 139123816, now seen corresponding path program 3 times [2018-11-23 11:58:34,257 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 11:58:34,257 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 11:58:34,258 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 11:58:34,258 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 11:58:34,259 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 11:58:34,273 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:58:34,358 INFO L256 TraceCheckUtils]: 0: Hoare triple {1092#true} call ULTIMATE.init(); {1092#true} is VALID [2018-11-23 11:58:34,359 INFO L273 TraceCheckUtils]: 1: Hoare triple {1092#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {1092#true} is VALID [2018-11-23 11:58:34,359 INFO L273 TraceCheckUtils]: 2: Hoare triple {1092#true} assume true; {1092#true} is VALID [2018-11-23 11:58:34,360 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1092#true} {1092#true} #79#return; {1092#true} is VALID [2018-11-23 11:58:34,360 INFO L256 TraceCheckUtils]: 4: Hoare triple {1092#true} call #t~ret8 := main(); {1092#true} is VALID [2018-11-23 11:58:34,361 INFO L273 TraceCheckUtils]: 5: Hoare triple {1092#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {1092#true} is VALID [2018-11-23 11:58:34,363 INFO L273 TraceCheckUtils]: 6: Hoare triple {1092#true} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {1094#(= main_~i~0 1)} is VALID [2018-11-23 11:58:34,364 INFO L273 TraceCheckUtils]: 7: Hoare triple {1094#(= main_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1094#(= main_~i~0 1)} is VALID [2018-11-23 11:58:34,364 INFO L273 TraceCheckUtils]: 8: Hoare triple {1094#(= main_~i~0 1)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {1094#(= main_~i~0 1)} is VALID [2018-11-23 11:58:34,367 INFO L273 TraceCheckUtils]: 9: Hoare triple {1094#(= main_~i~0 1)} ~i~0 := 1 + ~i~0; {1095#(<= main_~i~0 2)} is VALID [2018-11-23 11:58:34,370 INFO L273 TraceCheckUtils]: 10: Hoare triple {1095#(<= main_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1095#(<= main_~i~0 2)} is VALID [2018-11-23 11:58:34,371 INFO L273 TraceCheckUtils]: 11: Hoare triple {1095#(<= main_~i~0 2)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {1095#(<= main_~i~0 2)} is VALID [2018-11-23 11:58:34,372 INFO L273 TraceCheckUtils]: 12: Hoare triple {1095#(<= main_~i~0 2)} ~i~0 := 1 + ~i~0; {1096#(<= main_~i~0 3)} is VALID [2018-11-23 11:58:34,374 INFO L273 TraceCheckUtils]: 13: Hoare triple {1096#(<= main_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1096#(<= main_~i~0 3)} is VALID [2018-11-23 11:58:34,377 INFO L273 TraceCheckUtils]: 14: Hoare triple {1096#(<= main_~i~0 3)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {1096#(<= main_~i~0 3)} is VALID [2018-11-23 11:58:34,381 INFO L273 TraceCheckUtils]: 15: Hoare triple {1096#(<= main_~i~0 3)} ~i~0 := 1 + ~i~0; {1097#(<= main_~i~0 4)} is VALID [2018-11-23 11:58:34,381 INFO L273 TraceCheckUtils]: 16: Hoare triple {1097#(<= main_~i~0 4)} assume !(~i~0 < 100000); {1093#false} is VALID [2018-11-23 11:58:34,382 INFO L273 TraceCheckUtils]: 17: Hoare triple {1093#false} assume !(0 != ~swapped~0); {1093#false} is VALID [2018-11-23 11:58:34,382 INFO L273 TraceCheckUtils]: 18: Hoare triple {1093#false} havoc ~x~0;havoc ~y~0;~x~0 := 0; {1093#false} is VALID [2018-11-23 11:58:34,382 INFO L273 TraceCheckUtils]: 19: Hoare triple {1093#false} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {1093#false} is VALID [2018-11-23 11:58:34,382 INFO L273 TraceCheckUtils]: 20: Hoare triple {1093#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {1093#false} is VALID [2018-11-23 11:58:34,383 INFO L256 TraceCheckUtils]: 21: Hoare triple {1093#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {1093#false} is VALID [2018-11-23 11:58:34,383 INFO L273 TraceCheckUtils]: 22: Hoare triple {1093#false} ~cond := #in~cond; {1093#false} is VALID [2018-11-23 11:58:34,383 INFO L273 TraceCheckUtils]: 23: Hoare triple {1093#false} assume 0 == ~cond; {1093#false} is VALID [2018-11-23 11:58:34,384 INFO L273 TraceCheckUtils]: 24: Hoare triple {1093#false} assume !false; {1093#false} is VALID [2018-11-23 11:58:34,385 INFO L134 CoverageAnalysis]: Checked inductivity of 13 backedges. 1 proven. 12 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 11:58:34,385 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 11:58:34,385 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 11:58:34,399 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 11:58:34,466 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2018-11-23 11:58:34,466 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 11:58:34,477 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:58:34,479 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 11:58:34,868 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 26 treesize of output 18 [2018-11-23 11:58:34,899 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 2 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 10 [2018-11-23 11:58:34,906 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 11:58:34,909 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:58:34,912 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 11:58:34,912 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:26, output treesize:3 [2018-11-23 11:58:34,915 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 11:58:34,916 WARN L384 uantifierElimination]: Input elimination task: ∃ [|#memory_int|, |main_~#a~0.base|]. (let ((.cse2 (select |#memory_int| |main_~#a~0.base|))) (let ((.cse0 (select .cse2 4)) (.cse1 (select .cse2 0))) (and (<= .cse0 |main_#t~mem7|) (<= .cse1 .cse0) (<= |main_#t~mem6| .cse1)))) [2018-11-23 11:58:34,916 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (<= |main_#t~mem6| |main_#t~mem7|) [2018-11-23 11:58:34,984 INFO L256 TraceCheckUtils]: 0: Hoare triple {1092#true} call ULTIMATE.init(); {1092#true} is VALID [2018-11-23 11:58:34,985 INFO L273 TraceCheckUtils]: 1: Hoare triple {1092#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {1092#true} is VALID [2018-11-23 11:58:34,985 INFO L273 TraceCheckUtils]: 2: Hoare triple {1092#true} assume true; {1092#true} is VALID [2018-11-23 11:58:34,986 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1092#true} {1092#true} #79#return; {1092#true} is VALID [2018-11-23 11:58:34,986 INFO L256 TraceCheckUtils]: 4: Hoare triple {1092#true} call #t~ret8 := main(); {1092#true} is VALID [2018-11-23 11:58:34,987 INFO L273 TraceCheckUtils]: 5: Hoare triple {1092#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {1116#(and (= 1 main_~swapped~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:34,987 INFO L273 TraceCheckUtils]: 6: Hoare triple {1116#(and (= 1 main_~swapped~0) (= |main_~#a~0.offset| 0))} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {1120#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:34,988 INFO L273 TraceCheckUtils]: 7: Hoare triple {1120#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1124#(and (<= |main_#t~mem1| (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (<= (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) |main_#t~mem0|) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:34,989 INFO L273 TraceCheckUtils]: 8: Hoare triple {1124#(and (<= |main_#t~mem1| (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (<= (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) |main_#t~mem0|) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {1128#(and (<= (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:34,991 INFO L273 TraceCheckUtils]: 9: Hoare triple {1128#(and (<= (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {1128#(and (<= (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:34,992 INFO L273 TraceCheckUtils]: 10: Hoare triple {1128#(and (<= (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1128#(and (<= (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:34,994 INFO L273 TraceCheckUtils]: 11: Hoare triple {1128#(and (<= (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {1128#(and (<= (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:34,995 INFO L273 TraceCheckUtils]: 12: Hoare triple {1128#(and (<= (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {1128#(and (<= (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:34,996 INFO L273 TraceCheckUtils]: 13: Hoare triple {1128#(and (<= (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1128#(and (<= (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:34,997 INFO L273 TraceCheckUtils]: 14: Hoare triple {1128#(and (<= (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {1128#(and (<= (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:34,998 INFO L273 TraceCheckUtils]: 15: Hoare triple {1128#(and (<= (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {1128#(and (<= (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:34,999 INFO L273 TraceCheckUtils]: 16: Hoare triple {1128#(and (<= (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < 100000); {1128#(and (<= (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:35,000 INFO L273 TraceCheckUtils]: 17: Hoare triple {1128#(and (<= (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} assume !(0 != ~swapped~0); {1128#(and (<= (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:35,001 INFO L273 TraceCheckUtils]: 18: Hoare triple {1128#(and (<= (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} havoc ~x~0;havoc ~y~0;~x~0 := 0; {1159#(and (<= (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:35,002 INFO L273 TraceCheckUtils]: 19: Hoare triple {1159#(and (<= (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {1163#(and (<= (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:35,004 INFO L273 TraceCheckUtils]: 20: Hoare triple {1163#(and (<= (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {1167#(<= |main_#t~mem6| |main_#t~mem7|)} is VALID [2018-11-23 11:58:35,005 INFO L256 TraceCheckUtils]: 21: Hoare triple {1167#(<= |main_#t~mem6| |main_#t~mem7|)} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {1171#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 11:58:35,006 INFO L273 TraceCheckUtils]: 22: Hoare triple {1171#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {1175#(= 1 __VERIFIER_assert_~cond)} is VALID [2018-11-23 11:58:35,007 INFO L273 TraceCheckUtils]: 23: Hoare triple {1175#(= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1093#false} is VALID [2018-11-23 11:58:35,007 INFO L273 TraceCheckUtils]: 24: Hoare triple {1093#false} assume !false; {1093#false} is VALID [2018-11-23 11:58:35,013 INFO L134 CoverageAnalysis]: Checked inductivity of 13 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2018-11-23 11:58:35,041 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 11:58:35,042 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 11] total 15 [2018-11-23 11:58:35,042 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 25 [2018-11-23 11:58:35,043 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 11:58:35,043 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states. [2018-11-23 11:58:35,130 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:58:35,130 INFO L459 AbstractCegarLoop]: Interpolant automaton has 15 states [2018-11-23 11:58:35,131 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2018-11-23 11:58:35,131 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=40, Invalid=170, Unknown=0, NotChecked=0, Total=210 [2018-11-23 11:58:35,132 INFO L87 Difference]: Start difference. First operand 39 states and 48 transitions. Second operand 15 states. [2018-11-23 11:58:36,999 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:58:37,000 INFO L93 Difference]: Finished difference Result 98 states and 127 transitions. [2018-11-23 11:58:37,000 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2018-11-23 11:58:37,000 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 25 [2018-11-23 11:58:37,000 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 11:58:37,000 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2018-11-23 11:58:37,005 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 106 transitions. [2018-11-23 11:58:37,005 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2018-11-23 11:58:37,009 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 106 transitions. [2018-11-23 11:58:37,009 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states and 106 transitions. [2018-11-23 11:58:37,306 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 11:58:37,308 INFO L225 Difference]: With dead ends: 98 [2018-11-23 11:58:37,308 INFO L226 Difference]: Without dead ends: 65 [2018-11-23 11:58:37,309 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 42 GetRequests, 17 SyntacticMatches, 0 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 132 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=130, Invalid=572, Unknown=0, NotChecked=0, Total=702 [2018-11-23 11:58:37,310 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 65 states. [2018-11-23 11:58:37,445 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 65 to 52. [2018-11-23 11:58:37,445 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 11:58:37,445 INFO L82 GeneralOperation]: Start isEquivalent. First operand 65 states. Second operand 52 states. [2018-11-23 11:58:37,445 INFO L74 IsIncluded]: Start isIncluded. First operand 65 states. Second operand 52 states. [2018-11-23 11:58:37,446 INFO L87 Difference]: Start difference. First operand 65 states. Second operand 52 states. [2018-11-23 11:58:37,450 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:58:37,451 INFO L93 Difference]: Finished difference Result 65 states and 81 transitions. [2018-11-23 11:58:37,451 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 81 transitions. [2018-11-23 11:58:37,452 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:58:37,452 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:58:37,452 INFO L74 IsIncluded]: Start isIncluded. First operand 52 states. Second operand 65 states. [2018-11-23 11:58:37,452 INFO L87 Difference]: Start difference. First operand 52 states. Second operand 65 states. [2018-11-23 11:58:37,456 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:58:37,456 INFO L93 Difference]: Finished difference Result 65 states and 81 transitions. [2018-11-23 11:58:37,456 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 81 transitions. [2018-11-23 11:58:37,457 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:58:37,457 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:58:37,458 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 11:58:37,458 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 11:58:37,458 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 52 states. [2018-11-23 11:58:37,461 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 52 states to 52 states and 63 transitions. [2018-11-23 11:58:37,461 INFO L78 Accepts]: Start accepts. Automaton has 52 states and 63 transitions. Word has length 25 [2018-11-23 11:58:37,461 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 11:58:37,462 INFO L480 AbstractCegarLoop]: Abstraction has 52 states and 63 transitions. [2018-11-23 11:58:37,462 INFO L481 AbstractCegarLoop]: Interpolant automaton has 15 states. [2018-11-23 11:58:37,462 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 63 transitions. [2018-11-23 11:58:37,463 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2018-11-23 11:58:37,463 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 11:58:37,463 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 11:58:37,464 INFO L423 AbstractCegarLoop]: === Iteration 7 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 11:58:37,464 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 11:58:37,464 INFO L82 PathProgramCache]: Analyzing trace with hash -54520636, now seen corresponding path program 1 times [2018-11-23 11:58:37,464 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 11:58:37,464 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 11:58:37,465 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 11:58:37,465 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 11:58:37,466 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 11:58:37,486 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:58:37,645 INFO L256 TraceCheckUtils]: 0: Hoare triple {1547#true} call ULTIMATE.init(); {1547#true} is VALID [2018-11-23 11:58:37,645 INFO L273 TraceCheckUtils]: 1: Hoare triple {1547#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {1547#true} is VALID [2018-11-23 11:58:37,645 INFO L273 TraceCheckUtils]: 2: Hoare triple {1547#true} assume true; {1547#true} is VALID [2018-11-23 11:58:37,645 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1547#true} {1547#true} #79#return; {1547#true} is VALID [2018-11-23 11:58:37,646 INFO L256 TraceCheckUtils]: 4: Hoare triple {1547#true} call #t~ret8 := main(); {1547#true} is VALID [2018-11-23 11:58:37,646 INFO L273 TraceCheckUtils]: 5: Hoare triple {1547#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {1547#true} is VALID [2018-11-23 11:58:37,647 INFO L273 TraceCheckUtils]: 6: Hoare triple {1547#true} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {1549#(= main_~i~0 1)} is VALID [2018-11-23 11:58:37,648 INFO L273 TraceCheckUtils]: 7: Hoare triple {1549#(= main_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1549#(= main_~i~0 1)} is VALID [2018-11-23 11:58:37,648 INFO L273 TraceCheckUtils]: 8: Hoare triple {1549#(= main_~i~0 1)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {1549#(= main_~i~0 1)} is VALID [2018-11-23 11:58:37,649 INFO L273 TraceCheckUtils]: 9: Hoare triple {1549#(= main_~i~0 1)} ~i~0 := 1 + ~i~0; {1550#(<= main_~i~0 2)} is VALID [2018-11-23 11:58:37,649 INFO L273 TraceCheckUtils]: 10: Hoare triple {1550#(<= main_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1550#(<= main_~i~0 2)} is VALID [2018-11-23 11:58:37,650 INFO L273 TraceCheckUtils]: 11: Hoare triple {1550#(<= main_~i~0 2)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {1550#(<= main_~i~0 2)} is VALID [2018-11-23 11:58:37,652 INFO L273 TraceCheckUtils]: 12: Hoare triple {1550#(<= main_~i~0 2)} ~i~0 := 1 + ~i~0; {1551#(<= main_~i~0 3)} is VALID [2018-11-23 11:58:37,652 INFO L273 TraceCheckUtils]: 13: Hoare triple {1551#(<= main_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1551#(<= main_~i~0 3)} is VALID [2018-11-23 11:58:37,653 INFO L273 TraceCheckUtils]: 14: Hoare triple {1551#(<= main_~i~0 3)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {1551#(<= main_~i~0 3)} is VALID [2018-11-23 11:58:37,656 INFO L273 TraceCheckUtils]: 15: Hoare triple {1551#(<= main_~i~0 3)} ~i~0 := 1 + ~i~0; {1552#(<= main_~i~0 4)} is VALID [2018-11-23 11:58:37,657 INFO L273 TraceCheckUtils]: 16: Hoare triple {1552#(<= main_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1552#(<= main_~i~0 4)} is VALID [2018-11-23 11:58:37,658 INFO L273 TraceCheckUtils]: 17: Hoare triple {1552#(<= main_~i~0 4)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {1552#(<= main_~i~0 4)} is VALID [2018-11-23 11:58:37,658 INFO L273 TraceCheckUtils]: 18: Hoare triple {1552#(<= main_~i~0 4)} ~i~0 := 1 + ~i~0; {1553#(<= main_~i~0 5)} is VALID [2018-11-23 11:58:37,659 INFO L273 TraceCheckUtils]: 19: Hoare triple {1553#(<= main_~i~0 5)} assume !(~i~0 < 100000); {1548#false} is VALID [2018-11-23 11:58:37,659 INFO L273 TraceCheckUtils]: 20: Hoare triple {1548#false} assume !(0 != ~swapped~0); {1548#false} is VALID [2018-11-23 11:58:37,659 INFO L273 TraceCheckUtils]: 21: Hoare triple {1548#false} havoc ~x~0;havoc ~y~0;~x~0 := 0; {1548#false} is VALID [2018-11-23 11:58:37,660 INFO L273 TraceCheckUtils]: 22: Hoare triple {1548#false} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {1548#false} is VALID [2018-11-23 11:58:37,660 INFO L273 TraceCheckUtils]: 23: Hoare triple {1548#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {1548#false} is VALID [2018-11-23 11:58:37,660 INFO L256 TraceCheckUtils]: 24: Hoare triple {1548#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {1547#true} is VALID [2018-11-23 11:58:37,661 INFO L273 TraceCheckUtils]: 25: Hoare triple {1547#true} ~cond := #in~cond; {1547#true} is VALID [2018-11-23 11:58:37,661 INFO L273 TraceCheckUtils]: 26: Hoare triple {1547#true} assume !(0 == ~cond); {1547#true} is VALID [2018-11-23 11:58:37,661 INFO L273 TraceCheckUtils]: 27: Hoare triple {1547#true} assume true; {1547#true} is VALID [2018-11-23 11:58:37,662 INFO L268 TraceCheckUtils]: 28: Hoare quadruple {1547#true} {1548#false} #83#return; {1548#false} is VALID [2018-11-23 11:58:37,662 INFO L273 TraceCheckUtils]: 29: Hoare triple {1548#false} havoc #t~mem6;havoc #t~mem7; {1548#false} is VALID [2018-11-23 11:58:37,663 INFO L273 TraceCheckUtils]: 30: Hoare triple {1548#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {1548#false} is VALID [2018-11-23 11:58:37,663 INFO L273 TraceCheckUtils]: 31: Hoare triple {1548#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {1548#false} is VALID [2018-11-23 11:58:37,663 INFO L256 TraceCheckUtils]: 32: Hoare triple {1548#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {1548#false} is VALID [2018-11-23 11:58:37,664 INFO L273 TraceCheckUtils]: 33: Hoare triple {1548#false} ~cond := #in~cond; {1548#false} is VALID [2018-11-23 11:58:37,664 INFO L273 TraceCheckUtils]: 34: Hoare triple {1548#false} assume 0 == ~cond; {1548#false} is VALID [2018-11-23 11:58:37,664 INFO L273 TraceCheckUtils]: 35: Hoare triple {1548#false} assume !false; {1548#false} is VALID [2018-11-23 11:58:37,666 INFO L134 CoverageAnalysis]: Checked inductivity of 27 backedges. 3 proven. 22 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2018-11-23 11:58:37,666 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 11:58:37,667 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 11:58:37,677 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 11:58:37,708 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:58:37,741 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:58:37,742 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 11:58:38,016 INFO L256 TraceCheckUtils]: 0: Hoare triple {1547#true} call ULTIMATE.init(); {1547#true} is VALID [2018-11-23 11:58:38,017 INFO L273 TraceCheckUtils]: 1: Hoare triple {1547#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {1547#true} is VALID [2018-11-23 11:58:38,017 INFO L273 TraceCheckUtils]: 2: Hoare triple {1547#true} assume true; {1547#true} is VALID [2018-11-23 11:58:38,017 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1547#true} {1547#true} #79#return; {1547#true} is VALID [2018-11-23 11:58:38,017 INFO L256 TraceCheckUtils]: 4: Hoare triple {1547#true} call #t~ret8 := main(); {1547#true} is VALID [2018-11-23 11:58:38,018 INFO L273 TraceCheckUtils]: 5: Hoare triple {1547#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {1547#true} is VALID [2018-11-23 11:58:38,032 INFO L273 TraceCheckUtils]: 6: Hoare triple {1547#true} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {1575#(<= main_~i~0 1)} is VALID [2018-11-23 11:58:38,041 INFO L273 TraceCheckUtils]: 7: Hoare triple {1575#(<= main_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1575#(<= main_~i~0 1)} is VALID [2018-11-23 11:58:38,054 INFO L273 TraceCheckUtils]: 8: Hoare triple {1575#(<= main_~i~0 1)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {1575#(<= main_~i~0 1)} is VALID [2018-11-23 11:58:38,063 INFO L273 TraceCheckUtils]: 9: Hoare triple {1575#(<= main_~i~0 1)} ~i~0 := 1 + ~i~0; {1550#(<= main_~i~0 2)} is VALID [2018-11-23 11:58:38,074 INFO L273 TraceCheckUtils]: 10: Hoare triple {1550#(<= main_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1550#(<= main_~i~0 2)} is VALID [2018-11-23 11:58:38,087 INFO L273 TraceCheckUtils]: 11: Hoare triple {1550#(<= main_~i~0 2)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {1550#(<= main_~i~0 2)} is VALID [2018-11-23 11:58:38,100 INFO L273 TraceCheckUtils]: 12: Hoare triple {1550#(<= main_~i~0 2)} ~i~0 := 1 + ~i~0; {1551#(<= main_~i~0 3)} is VALID [2018-11-23 11:58:38,113 INFO L273 TraceCheckUtils]: 13: Hoare triple {1551#(<= main_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1551#(<= main_~i~0 3)} is VALID [2018-11-23 11:58:38,126 INFO L273 TraceCheckUtils]: 14: Hoare triple {1551#(<= main_~i~0 3)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {1551#(<= main_~i~0 3)} is VALID [2018-11-23 11:58:38,138 INFO L273 TraceCheckUtils]: 15: Hoare triple {1551#(<= main_~i~0 3)} ~i~0 := 1 + ~i~0; {1552#(<= main_~i~0 4)} is VALID [2018-11-23 11:58:38,151 INFO L273 TraceCheckUtils]: 16: Hoare triple {1552#(<= main_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {1552#(<= main_~i~0 4)} is VALID [2018-11-23 11:58:38,152 INFO L273 TraceCheckUtils]: 17: Hoare triple {1552#(<= main_~i~0 4)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {1552#(<= main_~i~0 4)} is VALID [2018-11-23 11:58:38,153 INFO L273 TraceCheckUtils]: 18: Hoare triple {1552#(<= main_~i~0 4)} ~i~0 := 1 + ~i~0; {1553#(<= main_~i~0 5)} is VALID [2018-11-23 11:58:38,155 INFO L273 TraceCheckUtils]: 19: Hoare triple {1553#(<= main_~i~0 5)} assume !(~i~0 < 100000); {1548#false} is VALID [2018-11-23 11:58:38,155 INFO L273 TraceCheckUtils]: 20: Hoare triple {1548#false} assume !(0 != ~swapped~0); {1548#false} is VALID [2018-11-23 11:58:38,155 INFO L273 TraceCheckUtils]: 21: Hoare triple {1548#false} havoc ~x~0;havoc ~y~0;~x~0 := 0; {1548#false} is VALID [2018-11-23 11:58:38,155 INFO L273 TraceCheckUtils]: 22: Hoare triple {1548#false} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {1548#false} is VALID [2018-11-23 11:58:38,155 INFO L273 TraceCheckUtils]: 23: Hoare triple {1548#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {1548#false} is VALID [2018-11-23 11:58:38,156 INFO L256 TraceCheckUtils]: 24: Hoare triple {1548#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {1548#false} is VALID [2018-11-23 11:58:38,156 INFO L273 TraceCheckUtils]: 25: Hoare triple {1548#false} ~cond := #in~cond; {1548#false} is VALID [2018-11-23 11:58:38,156 INFO L273 TraceCheckUtils]: 26: Hoare triple {1548#false} assume !(0 == ~cond); {1548#false} is VALID [2018-11-23 11:58:38,156 INFO L273 TraceCheckUtils]: 27: Hoare triple {1548#false} assume true; {1548#false} is VALID [2018-11-23 11:58:38,156 INFO L268 TraceCheckUtils]: 28: Hoare quadruple {1548#false} {1548#false} #83#return; {1548#false} is VALID [2018-11-23 11:58:38,156 INFO L273 TraceCheckUtils]: 29: Hoare triple {1548#false} havoc #t~mem6;havoc #t~mem7; {1548#false} is VALID [2018-11-23 11:58:38,157 INFO L273 TraceCheckUtils]: 30: Hoare triple {1548#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {1548#false} is VALID [2018-11-23 11:58:38,157 INFO L273 TraceCheckUtils]: 31: Hoare triple {1548#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {1548#false} is VALID [2018-11-23 11:58:38,157 INFO L256 TraceCheckUtils]: 32: Hoare triple {1548#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {1548#false} is VALID [2018-11-23 11:58:38,157 INFO L273 TraceCheckUtils]: 33: Hoare triple {1548#false} ~cond := #in~cond; {1548#false} is VALID [2018-11-23 11:58:38,157 INFO L273 TraceCheckUtils]: 34: Hoare triple {1548#false} assume 0 == ~cond; {1548#false} is VALID [2018-11-23 11:58:38,157 INFO L273 TraceCheckUtils]: 35: Hoare triple {1548#false} assume !false; {1548#false} is VALID [2018-11-23 11:58:38,158 INFO L134 CoverageAnalysis]: Checked inductivity of 27 backedges. 1 proven. 22 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2018-11-23 11:58:38,186 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 11:58:38,186 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 8 [2018-11-23 11:58:38,187 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 36 [2018-11-23 11:58:38,187 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 11:58:38,187 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2018-11-23 11:58:38,258 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:58:38,258 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2018-11-23 11:58:38,258 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2018-11-23 11:58:38,259 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=28, Unknown=0, NotChecked=0, Total=56 [2018-11-23 11:58:38,259 INFO L87 Difference]: Start difference. First operand 52 states and 63 transitions. Second operand 8 states. [2018-11-23 11:58:38,790 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:58:38,791 INFO L93 Difference]: Finished difference Result 108 states and 136 transitions. [2018-11-23 11:58:38,791 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2018-11-23 11:58:38,791 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 36 [2018-11-23 11:58:38,791 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 11:58:38,792 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-23 11:58:38,793 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 69 transitions. [2018-11-23 11:58:38,794 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-23 11:58:38,795 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 69 transitions. [2018-11-23 11:58:38,795 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 69 transitions. [2018-11-23 11:58:38,873 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 11:58:38,875 INFO L225 Difference]: With dead ends: 108 [2018-11-23 11:58:38,876 INFO L226 Difference]: Without dead ends: 62 [2018-11-23 11:58:38,876 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 42 GetRequests, 36 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=28, Invalid=28, Unknown=0, NotChecked=0, Total=56 [2018-11-23 11:58:38,877 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 62 states. [2018-11-23 11:58:39,260 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 62 to 58. [2018-11-23 11:58:39,260 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 11:58:39,260 INFO L82 GeneralOperation]: Start isEquivalent. First operand 62 states. Second operand 58 states. [2018-11-23 11:58:39,261 INFO L74 IsIncluded]: Start isIncluded. First operand 62 states. Second operand 58 states. [2018-11-23 11:58:39,261 INFO L87 Difference]: Start difference. First operand 62 states. Second operand 58 states. [2018-11-23 11:58:39,264 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:58:39,265 INFO L93 Difference]: Finished difference Result 62 states and 77 transitions. [2018-11-23 11:58:39,265 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 77 transitions. [2018-11-23 11:58:39,265 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:58:39,265 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:58:39,265 INFO L74 IsIncluded]: Start isIncluded. First operand 58 states. Second operand 62 states. [2018-11-23 11:58:39,265 INFO L87 Difference]: Start difference. First operand 58 states. Second operand 62 states. [2018-11-23 11:58:39,268 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:58:39,268 INFO L93 Difference]: Finished difference Result 62 states and 77 transitions. [2018-11-23 11:58:39,268 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 77 transitions. [2018-11-23 11:58:39,269 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:58:39,269 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:58:39,269 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 11:58:39,269 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 11:58:39,269 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 58 states. [2018-11-23 11:58:39,272 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 58 states to 58 states and 71 transitions. [2018-11-23 11:58:39,272 INFO L78 Accepts]: Start accepts. Automaton has 58 states and 71 transitions. Word has length 36 [2018-11-23 11:58:39,272 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 11:58:39,272 INFO L480 AbstractCegarLoop]: Abstraction has 58 states and 71 transitions. [2018-11-23 11:58:39,272 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2018-11-23 11:58:39,273 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 71 transitions. [2018-11-23 11:58:39,273 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2018-11-23 11:58:39,273 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 11:58:39,274 INFO L402 BasicCegarLoop]: trace histogram [5, 5, 5, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 11:58:39,274 INFO L423 AbstractCegarLoop]: === Iteration 8 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 11:58:39,274 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 11:58:39,274 INFO L82 PathProgramCache]: Analyzing trace with hash -1009560709, now seen corresponding path program 2 times [2018-11-23 11:58:39,274 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 11:58:39,275 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 11:58:39,275 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 11:58:39,276 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 11:58:39,276 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 11:58:39,293 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:58:39,425 INFO L256 TraceCheckUtils]: 0: Hoare triple {2021#true} call ULTIMATE.init(); {2021#true} is VALID [2018-11-23 11:58:39,426 INFO L273 TraceCheckUtils]: 1: Hoare triple {2021#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {2021#true} is VALID [2018-11-23 11:58:39,426 INFO L273 TraceCheckUtils]: 2: Hoare triple {2021#true} assume true; {2021#true} is VALID [2018-11-23 11:58:39,426 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2021#true} {2021#true} #79#return; {2021#true} is VALID [2018-11-23 11:58:39,426 INFO L256 TraceCheckUtils]: 4: Hoare triple {2021#true} call #t~ret8 := main(); {2021#true} is VALID [2018-11-23 11:58:39,426 INFO L273 TraceCheckUtils]: 5: Hoare triple {2021#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {2021#true} is VALID [2018-11-23 11:58:39,428 INFO L273 TraceCheckUtils]: 6: Hoare triple {2021#true} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {2023#(= main_~i~0 1)} is VALID [2018-11-23 11:58:39,431 INFO L273 TraceCheckUtils]: 7: Hoare triple {2023#(= main_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2023#(= main_~i~0 1)} is VALID [2018-11-23 11:58:39,433 INFO L273 TraceCheckUtils]: 8: Hoare triple {2023#(= main_~i~0 1)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {2023#(= main_~i~0 1)} is VALID [2018-11-23 11:58:39,434 INFO L273 TraceCheckUtils]: 9: Hoare triple {2023#(= main_~i~0 1)} ~i~0 := 1 + ~i~0; {2024#(<= main_~i~0 2)} is VALID [2018-11-23 11:58:39,434 INFO L273 TraceCheckUtils]: 10: Hoare triple {2024#(<= main_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2024#(<= main_~i~0 2)} is VALID [2018-11-23 11:58:39,434 INFO L273 TraceCheckUtils]: 11: Hoare triple {2024#(<= main_~i~0 2)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {2024#(<= main_~i~0 2)} is VALID [2018-11-23 11:58:39,435 INFO L273 TraceCheckUtils]: 12: Hoare triple {2024#(<= main_~i~0 2)} ~i~0 := 1 + ~i~0; {2025#(<= main_~i~0 3)} is VALID [2018-11-23 11:58:39,436 INFO L273 TraceCheckUtils]: 13: Hoare triple {2025#(<= main_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2025#(<= main_~i~0 3)} is VALID [2018-11-23 11:58:39,436 INFO L273 TraceCheckUtils]: 14: Hoare triple {2025#(<= main_~i~0 3)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {2025#(<= main_~i~0 3)} is VALID [2018-11-23 11:58:39,437 INFO L273 TraceCheckUtils]: 15: Hoare triple {2025#(<= main_~i~0 3)} ~i~0 := 1 + ~i~0; {2026#(<= main_~i~0 4)} is VALID [2018-11-23 11:58:39,438 INFO L273 TraceCheckUtils]: 16: Hoare triple {2026#(<= main_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2026#(<= main_~i~0 4)} is VALID [2018-11-23 11:58:39,438 INFO L273 TraceCheckUtils]: 17: Hoare triple {2026#(<= main_~i~0 4)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {2026#(<= main_~i~0 4)} is VALID [2018-11-23 11:58:39,439 INFO L273 TraceCheckUtils]: 18: Hoare triple {2026#(<= main_~i~0 4)} ~i~0 := 1 + ~i~0; {2027#(<= main_~i~0 5)} is VALID [2018-11-23 11:58:39,459 INFO L273 TraceCheckUtils]: 19: Hoare triple {2027#(<= main_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2027#(<= main_~i~0 5)} is VALID [2018-11-23 11:58:39,460 INFO L273 TraceCheckUtils]: 20: Hoare triple {2027#(<= main_~i~0 5)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {2027#(<= main_~i~0 5)} is VALID [2018-11-23 11:58:39,460 INFO L273 TraceCheckUtils]: 21: Hoare triple {2027#(<= main_~i~0 5)} ~i~0 := 1 + ~i~0; {2028#(<= main_~i~0 6)} is VALID [2018-11-23 11:58:39,461 INFO L273 TraceCheckUtils]: 22: Hoare triple {2028#(<= main_~i~0 6)} assume !(~i~0 < 100000); {2022#false} is VALID [2018-11-23 11:58:39,461 INFO L273 TraceCheckUtils]: 23: Hoare triple {2022#false} assume !(0 != ~swapped~0); {2022#false} is VALID [2018-11-23 11:58:39,461 INFO L273 TraceCheckUtils]: 24: Hoare triple {2022#false} havoc ~x~0;havoc ~y~0;~x~0 := 0; {2022#false} is VALID [2018-11-23 11:58:39,461 INFO L273 TraceCheckUtils]: 25: Hoare triple {2022#false} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {2022#false} is VALID [2018-11-23 11:58:39,461 INFO L273 TraceCheckUtils]: 26: Hoare triple {2022#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {2022#false} is VALID [2018-11-23 11:58:39,462 INFO L256 TraceCheckUtils]: 27: Hoare triple {2022#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {2021#true} is VALID [2018-11-23 11:58:39,462 INFO L273 TraceCheckUtils]: 28: Hoare triple {2021#true} ~cond := #in~cond; {2021#true} is VALID [2018-11-23 11:58:39,462 INFO L273 TraceCheckUtils]: 29: Hoare triple {2021#true} assume !(0 == ~cond); {2021#true} is VALID [2018-11-23 11:58:39,462 INFO L273 TraceCheckUtils]: 30: Hoare triple {2021#true} assume true; {2021#true} is VALID [2018-11-23 11:58:39,463 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {2021#true} {2022#false} #83#return; {2022#false} is VALID [2018-11-23 11:58:39,463 INFO L273 TraceCheckUtils]: 32: Hoare triple {2022#false} havoc #t~mem6;havoc #t~mem7; {2022#false} is VALID [2018-11-23 11:58:39,463 INFO L273 TraceCheckUtils]: 33: Hoare triple {2022#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {2022#false} is VALID [2018-11-23 11:58:39,464 INFO L273 TraceCheckUtils]: 34: Hoare triple {2022#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {2022#false} is VALID [2018-11-23 11:58:39,464 INFO L256 TraceCheckUtils]: 35: Hoare triple {2022#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {2022#false} is VALID [2018-11-23 11:58:39,464 INFO L273 TraceCheckUtils]: 36: Hoare triple {2022#false} ~cond := #in~cond; {2022#false} is VALID [2018-11-23 11:58:39,464 INFO L273 TraceCheckUtils]: 37: Hoare triple {2022#false} assume 0 == ~cond; {2022#false} is VALID [2018-11-23 11:58:39,464 INFO L273 TraceCheckUtils]: 38: Hoare triple {2022#false} assume !false; {2022#false} is VALID [2018-11-23 11:58:39,465 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 3 proven. 35 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2018-11-23 11:58:39,466 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 11:58:39,466 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 11:58:39,476 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 11:58:39,509 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 11:58:39,509 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 11:58:39,519 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:58:39,521 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 11:58:39,638 INFO L256 TraceCheckUtils]: 0: Hoare triple {2021#true} call ULTIMATE.init(); {2021#true} is VALID [2018-11-23 11:58:39,638 INFO L273 TraceCheckUtils]: 1: Hoare triple {2021#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {2021#true} is VALID [2018-11-23 11:58:39,638 INFO L273 TraceCheckUtils]: 2: Hoare triple {2021#true} assume true; {2021#true} is VALID [2018-11-23 11:58:39,639 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2021#true} {2021#true} #79#return; {2021#true} is VALID [2018-11-23 11:58:39,639 INFO L256 TraceCheckUtils]: 4: Hoare triple {2021#true} call #t~ret8 := main(); {2021#true} is VALID [2018-11-23 11:58:39,639 INFO L273 TraceCheckUtils]: 5: Hoare triple {2021#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {2021#true} is VALID [2018-11-23 11:58:39,640 INFO L273 TraceCheckUtils]: 6: Hoare triple {2021#true} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {2050#(<= main_~i~0 1)} is VALID [2018-11-23 11:58:39,641 INFO L273 TraceCheckUtils]: 7: Hoare triple {2050#(<= main_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2050#(<= main_~i~0 1)} is VALID [2018-11-23 11:58:39,641 INFO L273 TraceCheckUtils]: 8: Hoare triple {2050#(<= main_~i~0 1)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {2050#(<= main_~i~0 1)} is VALID [2018-11-23 11:58:39,642 INFO L273 TraceCheckUtils]: 9: Hoare triple {2050#(<= main_~i~0 1)} ~i~0 := 1 + ~i~0; {2024#(<= main_~i~0 2)} is VALID [2018-11-23 11:58:39,642 INFO L273 TraceCheckUtils]: 10: Hoare triple {2024#(<= main_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2024#(<= main_~i~0 2)} is VALID [2018-11-23 11:58:39,642 INFO L273 TraceCheckUtils]: 11: Hoare triple {2024#(<= main_~i~0 2)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {2024#(<= main_~i~0 2)} is VALID [2018-11-23 11:58:39,643 INFO L273 TraceCheckUtils]: 12: Hoare triple {2024#(<= main_~i~0 2)} ~i~0 := 1 + ~i~0; {2025#(<= main_~i~0 3)} is VALID [2018-11-23 11:58:39,643 INFO L273 TraceCheckUtils]: 13: Hoare triple {2025#(<= main_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2025#(<= main_~i~0 3)} is VALID [2018-11-23 11:58:39,644 INFO L273 TraceCheckUtils]: 14: Hoare triple {2025#(<= main_~i~0 3)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {2025#(<= main_~i~0 3)} is VALID [2018-11-23 11:58:39,645 INFO L273 TraceCheckUtils]: 15: Hoare triple {2025#(<= main_~i~0 3)} ~i~0 := 1 + ~i~0; {2026#(<= main_~i~0 4)} is VALID [2018-11-23 11:58:39,645 INFO L273 TraceCheckUtils]: 16: Hoare triple {2026#(<= main_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2026#(<= main_~i~0 4)} is VALID [2018-11-23 11:58:39,648 INFO L273 TraceCheckUtils]: 17: Hoare triple {2026#(<= main_~i~0 4)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {2026#(<= main_~i~0 4)} is VALID [2018-11-23 11:58:39,648 INFO L273 TraceCheckUtils]: 18: Hoare triple {2026#(<= main_~i~0 4)} ~i~0 := 1 + ~i~0; {2027#(<= main_~i~0 5)} is VALID [2018-11-23 11:58:39,649 INFO L273 TraceCheckUtils]: 19: Hoare triple {2027#(<= main_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2027#(<= main_~i~0 5)} is VALID [2018-11-23 11:58:39,652 INFO L273 TraceCheckUtils]: 20: Hoare triple {2027#(<= main_~i~0 5)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {2027#(<= main_~i~0 5)} is VALID [2018-11-23 11:58:39,653 INFO L273 TraceCheckUtils]: 21: Hoare triple {2027#(<= main_~i~0 5)} ~i~0 := 1 + ~i~0; {2028#(<= main_~i~0 6)} is VALID [2018-11-23 11:58:39,653 INFO L273 TraceCheckUtils]: 22: Hoare triple {2028#(<= main_~i~0 6)} assume !(~i~0 < 100000); {2022#false} is VALID [2018-11-23 11:58:39,654 INFO L273 TraceCheckUtils]: 23: Hoare triple {2022#false} assume !(0 != ~swapped~0); {2022#false} is VALID [2018-11-23 11:58:39,654 INFO L273 TraceCheckUtils]: 24: Hoare triple {2022#false} havoc ~x~0;havoc ~y~0;~x~0 := 0; {2022#false} is VALID [2018-11-23 11:58:39,654 INFO L273 TraceCheckUtils]: 25: Hoare triple {2022#false} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {2022#false} is VALID [2018-11-23 11:58:39,655 INFO L273 TraceCheckUtils]: 26: Hoare triple {2022#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {2022#false} is VALID [2018-11-23 11:58:39,655 INFO L256 TraceCheckUtils]: 27: Hoare triple {2022#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {2022#false} is VALID [2018-11-23 11:58:39,655 INFO L273 TraceCheckUtils]: 28: Hoare triple {2022#false} ~cond := #in~cond; {2022#false} is VALID [2018-11-23 11:58:39,656 INFO L273 TraceCheckUtils]: 29: Hoare triple {2022#false} assume !(0 == ~cond); {2022#false} is VALID [2018-11-23 11:58:39,656 INFO L273 TraceCheckUtils]: 30: Hoare triple {2022#false} assume true; {2022#false} is VALID [2018-11-23 11:58:39,656 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {2022#false} {2022#false} #83#return; {2022#false} is VALID [2018-11-23 11:58:39,657 INFO L273 TraceCheckUtils]: 32: Hoare triple {2022#false} havoc #t~mem6;havoc #t~mem7; {2022#false} is VALID [2018-11-23 11:58:39,657 INFO L273 TraceCheckUtils]: 33: Hoare triple {2022#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {2022#false} is VALID [2018-11-23 11:58:39,657 INFO L273 TraceCheckUtils]: 34: Hoare triple {2022#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {2022#false} is VALID [2018-11-23 11:58:39,657 INFO L256 TraceCheckUtils]: 35: Hoare triple {2022#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {2022#false} is VALID [2018-11-23 11:58:39,658 INFO L273 TraceCheckUtils]: 36: Hoare triple {2022#false} ~cond := #in~cond; {2022#false} is VALID [2018-11-23 11:58:39,658 INFO L273 TraceCheckUtils]: 37: Hoare triple {2022#false} assume 0 == ~cond; {2022#false} is VALID [2018-11-23 11:58:39,658 INFO L273 TraceCheckUtils]: 38: Hoare triple {2022#false} assume !false; {2022#false} is VALID [2018-11-23 11:58:39,659 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 1 proven. 35 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2018-11-23 11:58:39,679 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 11:58:39,680 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2018-11-23 11:58:39,680 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 39 [2018-11-23 11:58:39,680 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 11:58:39,681 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states. [2018-11-23 11:58:39,732 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:58:39,733 INFO L459 AbstractCegarLoop]: Interpolant automaton has 9 states [2018-11-23 11:58:39,733 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2018-11-23 11:58:39,733 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=36, Invalid=36, Unknown=0, NotChecked=0, Total=72 [2018-11-23 11:58:39,733 INFO L87 Difference]: Start difference. First operand 58 states and 71 transitions. Second operand 9 states. [2018-11-23 11:58:40,131 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:58:40,131 INFO L93 Difference]: Finished difference Result 120 states and 152 transitions. [2018-11-23 11:58:40,131 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2018-11-23 11:58:40,131 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 39 [2018-11-23 11:58:40,132 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 11:58:40,132 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2018-11-23 11:58:40,134 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 73 transitions. [2018-11-23 11:58:40,134 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2018-11-23 11:58:40,136 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 73 transitions. [2018-11-23 11:58:40,136 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 73 transitions. [2018-11-23 11:58:40,227 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 73 edges. 73 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:58:40,229 INFO L225 Difference]: With dead ends: 120 [2018-11-23 11:58:40,229 INFO L226 Difference]: Without dead ends: 68 [2018-11-23 11:58:40,230 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 46 GetRequests, 39 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=36, Invalid=36, Unknown=0, NotChecked=0, Total=72 [2018-11-23 11:58:40,230 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 68 states. [2018-11-23 11:58:40,320 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 68 to 64. [2018-11-23 11:58:40,320 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 11:58:40,320 INFO L82 GeneralOperation]: Start isEquivalent. First operand 68 states. Second operand 64 states. [2018-11-23 11:58:40,320 INFO L74 IsIncluded]: Start isIncluded. First operand 68 states. Second operand 64 states. [2018-11-23 11:58:40,320 INFO L87 Difference]: Start difference. First operand 68 states. Second operand 64 states. [2018-11-23 11:58:40,323 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:58:40,323 INFO L93 Difference]: Finished difference Result 68 states and 85 transitions. [2018-11-23 11:58:40,323 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 85 transitions. [2018-11-23 11:58:40,323 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:58:40,323 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:58:40,323 INFO L74 IsIncluded]: Start isIncluded. First operand 64 states. Second operand 68 states. [2018-11-23 11:58:40,324 INFO L87 Difference]: Start difference. First operand 64 states. Second operand 68 states. [2018-11-23 11:58:40,326 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:58:40,326 INFO L93 Difference]: Finished difference Result 68 states and 85 transitions. [2018-11-23 11:58:40,326 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 85 transitions. [2018-11-23 11:58:40,326 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:58:40,326 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:58:40,326 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 11:58:40,326 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 11:58:40,327 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 64 states. [2018-11-23 11:58:40,329 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 64 states to 64 states and 79 transitions. [2018-11-23 11:58:40,329 INFO L78 Accepts]: Start accepts. Automaton has 64 states and 79 transitions. Word has length 39 [2018-11-23 11:58:40,329 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 11:58:40,329 INFO L480 AbstractCegarLoop]: Abstraction has 64 states and 79 transitions. [2018-11-23 11:58:40,329 INFO L481 AbstractCegarLoop]: Interpolant automaton has 9 states. [2018-11-23 11:58:40,329 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 79 transitions. [2018-11-23 11:58:40,330 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2018-11-23 11:58:40,330 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 11:58:40,330 INFO L402 BasicCegarLoop]: trace histogram [6, 6, 6, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 11:58:40,331 INFO L423 AbstractCegarLoop]: === Iteration 9 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 11:58:40,331 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 11:58:40,331 INFO L82 PathProgramCache]: Analyzing trace with hash 1549960548, now seen corresponding path program 3 times [2018-11-23 11:58:40,331 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 11:58:40,331 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 11:58:40,332 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 11:58:40,332 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 11:58:40,332 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 11:58:40,361 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:58:40,482 INFO L256 TraceCheckUtils]: 0: Hoare triple {2541#true} call ULTIMATE.init(); {2541#true} is VALID [2018-11-23 11:58:40,482 INFO L273 TraceCheckUtils]: 1: Hoare triple {2541#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {2541#true} is VALID [2018-11-23 11:58:40,482 INFO L273 TraceCheckUtils]: 2: Hoare triple {2541#true} assume true; {2541#true} is VALID [2018-11-23 11:58:40,482 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2541#true} {2541#true} #79#return; {2541#true} is VALID [2018-11-23 11:58:40,483 INFO L256 TraceCheckUtils]: 4: Hoare triple {2541#true} call #t~ret8 := main(); {2541#true} is VALID [2018-11-23 11:58:40,483 INFO L273 TraceCheckUtils]: 5: Hoare triple {2541#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {2541#true} is VALID [2018-11-23 11:58:40,484 INFO L273 TraceCheckUtils]: 6: Hoare triple {2541#true} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {2543#(= main_~i~0 1)} is VALID [2018-11-23 11:58:40,484 INFO L273 TraceCheckUtils]: 7: Hoare triple {2543#(= main_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2543#(= main_~i~0 1)} is VALID [2018-11-23 11:58:40,484 INFO L273 TraceCheckUtils]: 8: Hoare triple {2543#(= main_~i~0 1)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {2543#(= main_~i~0 1)} is VALID [2018-11-23 11:58:40,485 INFO L273 TraceCheckUtils]: 9: Hoare triple {2543#(= main_~i~0 1)} ~i~0 := 1 + ~i~0; {2544#(<= main_~i~0 2)} is VALID [2018-11-23 11:58:40,485 INFO L273 TraceCheckUtils]: 10: Hoare triple {2544#(<= main_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2544#(<= main_~i~0 2)} is VALID [2018-11-23 11:58:40,486 INFO L273 TraceCheckUtils]: 11: Hoare triple {2544#(<= main_~i~0 2)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {2544#(<= main_~i~0 2)} is VALID [2018-11-23 11:58:40,486 INFO L273 TraceCheckUtils]: 12: Hoare triple {2544#(<= main_~i~0 2)} ~i~0 := 1 + ~i~0; {2545#(<= main_~i~0 3)} is VALID [2018-11-23 11:58:40,486 INFO L273 TraceCheckUtils]: 13: Hoare triple {2545#(<= main_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2545#(<= main_~i~0 3)} is VALID [2018-11-23 11:58:40,494 INFO L273 TraceCheckUtils]: 14: Hoare triple {2545#(<= main_~i~0 3)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {2545#(<= main_~i~0 3)} is VALID [2018-11-23 11:58:40,495 INFO L273 TraceCheckUtils]: 15: Hoare triple {2545#(<= main_~i~0 3)} ~i~0 := 1 + ~i~0; {2546#(<= main_~i~0 4)} is VALID [2018-11-23 11:58:40,503 INFO L273 TraceCheckUtils]: 16: Hoare triple {2546#(<= main_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2546#(<= main_~i~0 4)} is VALID [2018-11-23 11:58:40,504 INFO L273 TraceCheckUtils]: 17: Hoare triple {2546#(<= main_~i~0 4)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {2546#(<= main_~i~0 4)} is VALID [2018-11-23 11:58:40,505 INFO L273 TraceCheckUtils]: 18: Hoare triple {2546#(<= main_~i~0 4)} ~i~0 := 1 + ~i~0; {2547#(<= main_~i~0 5)} is VALID [2018-11-23 11:58:40,506 INFO L273 TraceCheckUtils]: 19: Hoare triple {2547#(<= main_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2547#(<= main_~i~0 5)} is VALID [2018-11-23 11:58:40,506 INFO L273 TraceCheckUtils]: 20: Hoare triple {2547#(<= main_~i~0 5)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {2547#(<= main_~i~0 5)} is VALID [2018-11-23 11:58:40,508 INFO L273 TraceCheckUtils]: 21: Hoare triple {2547#(<= main_~i~0 5)} ~i~0 := 1 + ~i~0; {2548#(<= main_~i~0 6)} is VALID [2018-11-23 11:58:40,508 INFO L273 TraceCheckUtils]: 22: Hoare triple {2548#(<= main_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2548#(<= main_~i~0 6)} is VALID [2018-11-23 11:58:40,509 INFO L273 TraceCheckUtils]: 23: Hoare triple {2548#(<= main_~i~0 6)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {2548#(<= main_~i~0 6)} is VALID [2018-11-23 11:58:40,509 INFO L273 TraceCheckUtils]: 24: Hoare triple {2548#(<= main_~i~0 6)} ~i~0 := 1 + ~i~0; {2549#(<= main_~i~0 7)} is VALID [2018-11-23 11:58:40,510 INFO L273 TraceCheckUtils]: 25: Hoare triple {2549#(<= main_~i~0 7)} assume !(~i~0 < 100000); {2542#false} is VALID [2018-11-23 11:58:40,510 INFO L273 TraceCheckUtils]: 26: Hoare triple {2542#false} assume !(0 != ~swapped~0); {2542#false} is VALID [2018-11-23 11:58:40,510 INFO L273 TraceCheckUtils]: 27: Hoare triple {2542#false} havoc ~x~0;havoc ~y~0;~x~0 := 0; {2542#false} is VALID [2018-11-23 11:58:40,510 INFO L273 TraceCheckUtils]: 28: Hoare triple {2542#false} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {2542#false} is VALID [2018-11-23 11:58:40,511 INFO L273 TraceCheckUtils]: 29: Hoare triple {2542#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {2542#false} is VALID [2018-11-23 11:58:40,511 INFO L256 TraceCheckUtils]: 30: Hoare triple {2542#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {2541#true} is VALID [2018-11-23 11:58:40,511 INFO L273 TraceCheckUtils]: 31: Hoare triple {2541#true} ~cond := #in~cond; {2541#true} is VALID [2018-11-23 11:58:40,512 INFO L273 TraceCheckUtils]: 32: Hoare triple {2541#true} assume !(0 == ~cond); {2541#true} is VALID [2018-11-23 11:58:40,512 INFO L273 TraceCheckUtils]: 33: Hoare triple {2541#true} assume true; {2541#true} is VALID [2018-11-23 11:58:40,512 INFO L268 TraceCheckUtils]: 34: Hoare quadruple {2541#true} {2542#false} #83#return; {2542#false} is VALID [2018-11-23 11:58:40,513 INFO L273 TraceCheckUtils]: 35: Hoare triple {2542#false} havoc #t~mem6;havoc #t~mem7; {2542#false} is VALID [2018-11-23 11:58:40,513 INFO L273 TraceCheckUtils]: 36: Hoare triple {2542#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {2542#false} is VALID [2018-11-23 11:58:40,513 INFO L273 TraceCheckUtils]: 37: Hoare triple {2542#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {2542#false} is VALID [2018-11-23 11:58:40,514 INFO L256 TraceCheckUtils]: 38: Hoare triple {2542#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {2542#false} is VALID [2018-11-23 11:58:40,514 INFO L273 TraceCheckUtils]: 39: Hoare triple {2542#false} ~cond := #in~cond; {2542#false} is VALID [2018-11-23 11:58:40,514 INFO L273 TraceCheckUtils]: 40: Hoare triple {2542#false} assume 0 == ~cond; {2542#false} is VALID [2018-11-23 11:58:40,514 INFO L273 TraceCheckUtils]: 41: Hoare triple {2542#false} assume !false; {2542#false} is VALID [2018-11-23 11:58:40,517 INFO L134 CoverageAnalysis]: Checked inductivity of 56 backedges. 3 proven. 51 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2018-11-23 11:58:40,517 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 11:58:40,517 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 11:58:40,535 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 11:58:40,655 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 7 check-sat command(s) [2018-11-23 11:58:40,655 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 11:58:40,684 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:58:40,686 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 11:58:41,580 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 37 treesize of output 25 [2018-11-23 11:58:41,593 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 13 [2018-11-23 11:58:41,606 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 11:58:41,608 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:58:41,609 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 11:58:41,610 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:37, output treesize:3 [2018-11-23 11:58:41,613 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 11:58:41,614 WARN L384 uantifierElimination]: Input elimination task: ∃ [|#memory_int|, |main_~#a~0.base|]. (let ((.cse3 (select |#memory_int| |main_~#a~0.base|))) (let ((.cse0 (select .cse3 8)) (.cse1 (select .cse3 4)) (.cse2 (select .cse3 0))) (and (<= .cse0 |main_#t~mem7|) (<= .cse1 .cse0) (<= .cse2 .cse1) (<= |main_#t~mem6| .cse2)))) [2018-11-23 11:58:41,614 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (<= |main_#t~mem6| |main_#t~mem7|) [2018-11-23 11:58:41,673 INFO L256 TraceCheckUtils]: 0: Hoare triple {2541#true} call ULTIMATE.init(); {2541#true} is VALID [2018-11-23 11:58:41,673 INFO L273 TraceCheckUtils]: 1: Hoare triple {2541#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {2541#true} is VALID [2018-11-23 11:58:41,673 INFO L273 TraceCheckUtils]: 2: Hoare triple {2541#true} assume true; {2541#true} is VALID [2018-11-23 11:58:41,673 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2541#true} {2541#true} #79#return; {2541#true} is VALID [2018-11-23 11:58:41,673 INFO L256 TraceCheckUtils]: 4: Hoare triple {2541#true} call #t~ret8 := main(); {2541#true} is VALID [2018-11-23 11:58:41,674 INFO L273 TraceCheckUtils]: 5: Hoare triple {2541#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {2568#(and (= 1 main_~swapped~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:41,674 INFO L273 TraceCheckUtils]: 6: Hoare triple {2568#(and (= 1 main_~swapped~0) (= |main_~#a~0.offset| 0))} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {2572#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:41,675 INFO L273 TraceCheckUtils]: 7: Hoare triple {2572#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2572#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:41,675 INFO L273 TraceCheckUtils]: 8: Hoare triple {2572#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {2572#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:41,676 INFO L273 TraceCheckUtils]: 9: Hoare triple {2572#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {2582#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:41,677 INFO L273 TraceCheckUtils]: 10: Hoare triple {2582#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2586#(and (<= |main_#t~mem1| (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) |main_#t~mem0|) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:41,677 INFO L273 TraceCheckUtils]: 11: Hoare triple {2586#(and (<= |main_#t~mem1| (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) |main_#t~mem0|) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:41,678 INFO L273 TraceCheckUtils]: 12: Hoare triple {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:41,679 INFO L273 TraceCheckUtils]: 13: Hoare triple {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:41,683 INFO L273 TraceCheckUtils]: 14: Hoare triple {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:41,684 INFO L273 TraceCheckUtils]: 15: Hoare triple {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:41,701 INFO L273 TraceCheckUtils]: 16: Hoare triple {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:41,702 INFO L273 TraceCheckUtils]: 17: Hoare triple {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:41,702 INFO L273 TraceCheckUtils]: 18: Hoare triple {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:41,703 INFO L273 TraceCheckUtils]: 19: Hoare triple {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:41,703 INFO L273 TraceCheckUtils]: 20: Hoare triple {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:41,704 INFO L273 TraceCheckUtils]: 21: Hoare triple {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:41,704 INFO L273 TraceCheckUtils]: 22: Hoare triple {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:41,705 INFO L273 TraceCheckUtils]: 23: Hoare triple {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:41,706 INFO L273 TraceCheckUtils]: 24: Hoare triple {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:41,707 INFO L273 TraceCheckUtils]: 25: Hoare triple {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < 100000); {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:41,708 INFO L273 TraceCheckUtils]: 26: Hoare triple {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} assume !(0 != ~swapped~0); {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:41,709 INFO L273 TraceCheckUtils]: 27: Hoare triple {2590#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} havoc ~x~0;havoc ~y~0;~x~0 := 0; {2639#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:41,710 INFO L273 TraceCheckUtils]: 28: Hoare triple {2639#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {2643#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:41,711 INFO L273 TraceCheckUtils]: 29: Hoare triple {2643#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {2647#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) |main_#t~mem6|) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (<= |main_#t~mem7| (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~y~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:41,713 INFO L256 TraceCheckUtils]: 30: Hoare triple {2647#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) |main_#t~mem6|) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (<= |main_#t~mem7| (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~y~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {2651#(exists ((|v_main_~#a~0.base_BEFORE_CALL_1| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_1|) 4) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_1|) 8)))} is VALID [2018-11-23 11:58:41,714 INFO L273 TraceCheckUtils]: 31: Hoare triple {2651#(exists ((|v_main_~#a~0.base_BEFORE_CALL_1| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_1|) 4) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_1|) 8)))} ~cond := #in~cond; {2655#(and (exists ((|v_main_~#a~0.base_BEFORE_CALL_1| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_1|) 4) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_1|) 8))) (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond))} is VALID [2018-11-23 11:58:41,715 INFO L273 TraceCheckUtils]: 32: Hoare triple {2655#(and (exists ((|v_main_~#a~0.base_BEFORE_CALL_1| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_1|) 4) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_1|) 8))) (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond))} assume !(0 == ~cond); {2659#(and (not (= |__VERIFIER_assert_#in~cond| 0)) (exists ((|v_main_~#a~0.base_BEFORE_CALL_1| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_1|) 4) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_1|) 8))))} is VALID [2018-11-23 11:58:41,716 INFO L273 TraceCheckUtils]: 33: Hoare triple {2659#(and (not (= |__VERIFIER_assert_#in~cond| 0)) (exists ((|v_main_~#a~0.base_BEFORE_CALL_1| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_1|) 4) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_1|) 8))))} assume true; {2659#(and (not (= |__VERIFIER_assert_#in~cond| 0)) (exists ((|v_main_~#a~0.base_BEFORE_CALL_1| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_1|) 4) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_1|) 8))))} is VALID [2018-11-23 11:58:41,720 INFO L268 TraceCheckUtils]: 34: Hoare quadruple {2659#(and (not (= |__VERIFIER_assert_#in~cond| 0)) (exists ((|v_main_~#a~0.base_BEFORE_CALL_1| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_1|) 4) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_1|) 8))))} {2647#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) |main_#t~mem6|) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (<= |main_#t~mem7| (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~y~0) |main_~#a~0.offset|))) (= |main_~#a~0.offset| 0))} #83#return; {2666#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~y~0) |main_~#a~0.offset|))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:41,721 INFO L273 TraceCheckUtils]: 35: Hoare triple {2666#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~y~0) |main_~#a~0.offset|))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} havoc #t~mem6;havoc #t~mem7; {2666#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~y~0) |main_~#a~0.offset|))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:41,722 INFO L273 TraceCheckUtils]: 36: Hoare triple {2666#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~y~0) |main_~#a~0.offset|))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {2673#(and (= (+ main_~x~0 2) main_~y~0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:58:41,723 INFO L273 TraceCheckUtils]: 37: Hoare triple {2673#(and (= (+ main_~x~0 2) main_~y~0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset| 4))) (= |main_~#a~0.offset| 0))} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {2677#(<= |main_#t~mem6| |main_#t~mem7|)} is VALID [2018-11-23 11:58:41,724 INFO L256 TraceCheckUtils]: 38: Hoare triple {2677#(<= |main_#t~mem6| |main_#t~mem7|)} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {2681#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 11:58:41,725 INFO L273 TraceCheckUtils]: 39: Hoare triple {2681#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {2685#(= 1 __VERIFIER_assert_~cond)} is VALID [2018-11-23 11:58:41,725 INFO L273 TraceCheckUtils]: 40: Hoare triple {2685#(= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2542#false} is VALID [2018-11-23 11:58:41,725 INFO L273 TraceCheckUtils]: 41: Hoare triple {2542#false} assume !false; {2542#false} is VALID [2018-11-23 11:58:41,732 INFO L134 CoverageAnalysis]: Checked inductivity of 56 backedges. 0 proven. 30 refuted. 0 times theorem prover too weak. 26 trivial. 0 not checked. [2018-11-23 11:58:41,750 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 11:58:41,750 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 18] total 25 [2018-11-23 11:58:41,751 INFO L78 Accepts]: Start accepts. Automaton has 25 states. Word has length 42 [2018-11-23 11:58:41,751 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 11:58:41,751 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 25 states. [2018-11-23 11:58:41,822 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:58:41,823 INFO L459 AbstractCegarLoop]: Interpolant automaton has 25 states [2018-11-23 11:58:41,823 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2018-11-23 11:58:41,823 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=100, Invalid=500, Unknown=0, NotChecked=0, Total=600 [2018-11-23 11:58:41,824 INFO L87 Difference]: Start difference. First operand 64 states and 79 transitions. Second operand 25 states. [2018-11-23 11:59:10,374 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:59:10,375 INFO L93 Difference]: Finished difference Result 172 states and 222 transitions. [2018-11-23 11:59:10,375 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 44 states. [2018-11-23 11:59:10,375 INFO L78 Accepts]: Start accepts. Automaton has 25 states. Word has length 42 [2018-11-23 11:59:10,375 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 11:59:10,375 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 25 states. [2018-11-23 11:59:10,380 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 167 transitions. [2018-11-23 11:59:10,380 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 25 states. [2018-11-23 11:59:10,384 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 167 transitions. [2018-11-23 11:59:10,384 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 44 states and 167 transitions. [2018-11-23 11:59:10,679 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 167 edges. 167 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:59:10,682 INFO L225 Difference]: With dead ends: 172 [2018-11-23 11:59:10,682 INFO L226 Difference]: Without dead ends: 114 [2018-11-23 11:59:10,684 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 81 GetRequests, 27 SyntacticMatches, 0 SemanticMatches, 54 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 849 ImplicationChecksByTransitivity, 1.5s TimeCoverageRelationStatistics Valid=467, Invalid=2613, Unknown=0, NotChecked=0, Total=3080 [2018-11-23 11:59:10,684 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 114 states. [2018-11-23 11:59:10,791 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 114 to 78. [2018-11-23 11:59:10,791 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 11:59:10,791 INFO L82 GeneralOperation]: Start isEquivalent. First operand 114 states. Second operand 78 states. [2018-11-23 11:59:10,792 INFO L74 IsIncluded]: Start isIncluded. First operand 114 states. Second operand 78 states. [2018-11-23 11:59:10,792 INFO L87 Difference]: Start difference. First operand 114 states. Second operand 78 states. [2018-11-23 11:59:10,797 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:59:10,797 INFO L93 Difference]: Finished difference Result 114 states and 144 transitions. [2018-11-23 11:59:10,797 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 144 transitions. [2018-11-23 11:59:10,798 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:59:10,798 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:59:10,798 INFO L74 IsIncluded]: Start isIncluded. First operand 78 states. Second operand 114 states. [2018-11-23 11:59:10,798 INFO L87 Difference]: Start difference. First operand 78 states. Second operand 114 states. [2018-11-23 11:59:10,801 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:59:10,801 INFO L93 Difference]: Finished difference Result 114 states and 144 transitions. [2018-11-23 11:59:10,801 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 144 transitions. [2018-11-23 11:59:10,802 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:59:10,802 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:59:10,802 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 11:59:10,802 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 11:59:10,802 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 78 states. [2018-11-23 11:59:10,804 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 78 states to 78 states and 95 transitions. [2018-11-23 11:59:10,805 INFO L78 Accepts]: Start accepts. Automaton has 78 states and 95 transitions. Word has length 42 [2018-11-23 11:59:10,805 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 11:59:10,805 INFO L480 AbstractCegarLoop]: Abstraction has 78 states and 95 transitions. [2018-11-23 11:59:10,805 INFO L481 AbstractCegarLoop]: Interpolant automaton has 25 states. [2018-11-23 11:59:10,805 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 95 transitions. [2018-11-23 11:59:10,806 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 54 [2018-11-23 11:59:10,806 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 11:59:10,806 INFO L402 BasicCegarLoop]: trace histogram [7, 7, 7, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 11:59:10,806 INFO L423 AbstractCegarLoop]: === Iteration 10 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 11:59:10,807 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 11:59:10,807 INFO L82 PathProgramCache]: Analyzing trace with hash 918790030, now seen corresponding path program 4 times [2018-11-23 11:59:10,807 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 11:59:10,807 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 11:59:10,808 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 11:59:10,808 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 11:59:10,808 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 11:59:10,825 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:59:10,972 INFO L256 TraceCheckUtils]: 0: Hoare triple {3329#true} call ULTIMATE.init(); {3329#true} is VALID [2018-11-23 11:59:10,973 INFO L273 TraceCheckUtils]: 1: Hoare triple {3329#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {3329#true} is VALID [2018-11-23 11:59:10,973 INFO L273 TraceCheckUtils]: 2: Hoare triple {3329#true} assume true; {3329#true} is VALID [2018-11-23 11:59:10,973 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3329#true} {3329#true} #79#return; {3329#true} is VALID [2018-11-23 11:59:10,974 INFO L256 TraceCheckUtils]: 4: Hoare triple {3329#true} call #t~ret8 := main(); {3329#true} is VALID [2018-11-23 11:59:10,974 INFO L273 TraceCheckUtils]: 5: Hoare triple {3329#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {3329#true} is VALID [2018-11-23 11:59:10,975 INFO L273 TraceCheckUtils]: 6: Hoare triple {3329#true} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {3331#(= main_~i~0 1)} is VALID [2018-11-23 11:59:10,975 INFO L273 TraceCheckUtils]: 7: Hoare triple {3331#(= main_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3331#(= main_~i~0 1)} is VALID [2018-11-23 11:59:10,975 INFO L273 TraceCheckUtils]: 8: Hoare triple {3331#(= main_~i~0 1)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {3331#(= main_~i~0 1)} is VALID [2018-11-23 11:59:10,976 INFO L273 TraceCheckUtils]: 9: Hoare triple {3331#(= main_~i~0 1)} ~i~0 := 1 + ~i~0; {3332#(<= main_~i~0 2)} is VALID [2018-11-23 11:59:10,976 INFO L273 TraceCheckUtils]: 10: Hoare triple {3332#(<= main_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3332#(<= main_~i~0 2)} is VALID [2018-11-23 11:59:10,977 INFO L273 TraceCheckUtils]: 11: Hoare triple {3332#(<= main_~i~0 2)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {3332#(<= main_~i~0 2)} is VALID [2018-11-23 11:59:10,977 INFO L273 TraceCheckUtils]: 12: Hoare triple {3332#(<= main_~i~0 2)} ~i~0 := 1 + ~i~0; {3333#(<= main_~i~0 3)} is VALID [2018-11-23 11:59:10,977 INFO L273 TraceCheckUtils]: 13: Hoare triple {3333#(<= main_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3333#(<= main_~i~0 3)} is VALID [2018-11-23 11:59:10,978 INFO L273 TraceCheckUtils]: 14: Hoare triple {3333#(<= main_~i~0 3)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {3333#(<= main_~i~0 3)} is VALID [2018-11-23 11:59:10,978 INFO L273 TraceCheckUtils]: 15: Hoare triple {3333#(<= main_~i~0 3)} ~i~0 := 1 + ~i~0; {3334#(<= main_~i~0 4)} is VALID [2018-11-23 11:59:10,979 INFO L273 TraceCheckUtils]: 16: Hoare triple {3334#(<= main_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3334#(<= main_~i~0 4)} is VALID [2018-11-23 11:59:10,979 INFO L273 TraceCheckUtils]: 17: Hoare triple {3334#(<= main_~i~0 4)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {3334#(<= main_~i~0 4)} is VALID [2018-11-23 11:59:10,980 INFO L273 TraceCheckUtils]: 18: Hoare triple {3334#(<= main_~i~0 4)} ~i~0 := 1 + ~i~0; {3335#(<= main_~i~0 5)} is VALID [2018-11-23 11:59:10,981 INFO L273 TraceCheckUtils]: 19: Hoare triple {3335#(<= main_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3335#(<= main_~i~0 5)} is VALID [2018-11-23 11:59:10,981 INFO L273 TraceCheckUtils]: 20: Hoare triple {3335#(<= main_~i~0 5)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {3335#(<= main_~i~0 5)} is VALID [2018-11-23 11:59:10,982 INFO L273 TraceCheckUtils]: 21: Hoare triple {3335#(<= main_~i~0 5)} ~i~0 := 1 + ~i~0; {3336#(<= main_~i~0 6)} is VALID [2018-11-23 11:59:10,982 INFO L273 TraceCheckUtils]: 22: Hoare triple {3336#(<= main_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3336#(<= main_~i~0 6)} is VALID [2018-11-23 11:59:10,983 INFO L273 TraceCheckUtils]: 23: Hoare triple {3336#(<= main_~i~0 6)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {3336#(<= main_~i~0 6)} is VALID [2018-11-23 11:59:10,984 INFO L273 TraceCheckUtils]: 24: Hoare triple {3336#(<= main_~i~0 6)} ~i~0 := 1 + ~i~0; {3337#(<= main_~i~0 7)} is VALID [2018-11-23 11:59:10,985 INFO L273 TraceCheckUtils]: 25: Hoare triple {3337#(<= main_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3337#(<= main_~i~0 7)} is VALID [2018-11-23 11:59:10,985 INFO L273 TraceCheckUtils]: 26: Hoare triple {3337#(<= main_~i~0 7)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {3337#(<= main_~i~0 7)} is VALID [2018-11-23 11:59:10,986 INFO L273 TraceCheckUtils]: 27: Hoare triple {3337#(<= main_~i~0 7)} ~i~0 := 1 + ~i~0; {3338#(<= main_~i~0 8)} is VALID [2018-11-23 11:59:10,987 INFO L273 TraceCheckUtils]: 28: Hoare triple {3338#(<= main_~i~0 8)} assume !(~i~0 < 100000); {3330#false} is VALID [2018-11-23 11:59:10,987 INFO L273 TraceCheckUtils]: 29: Hoare triple {3330#false} assume !(0 != ~swapped~0); {3330#false} is VALID [2018-11-23 11:59:10,987 INFO L273 TraceCheckUtils]: 30: Hoare triple {3330#false} havoc ~x~0;havoc ~y~0;~x~0 := 0; {3330#false} is VALID [2018-11-23 11:59:10,988 INFO L273 TraceCheckUtils]: 31: Hoare triple {3330#false} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {3330#false} is VALID [2018-11-23 11:59:10,988 INFO L273 TraceCheckUtils]: 32: Hoare triple {3330#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {3330#false} is VALID [2018-11-23 11:59:10,988 INFO L256 TraceCheckUtils]: 33: Hoare triple {3330#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {3329#true} is VALID [2018-11-23 11:59:10,988 INFO L273 TraceCheckUtils]: 34: Hoare triple {3329#true} ~cond := #in~cond; {3329#true} is VALID [2018-11-23 11:59:10,989 INFO L273 TraceCheckUtils]: 35: Hoare triple {3329#true} assume !(0 == ~cond); {3329#true} is VALID [2018-11-23 11:59:10,989 INFO L273 TraceCheckUtils]: 36: Hoare triple {3329#true} assume true; {3329#true} is VALID [2018-11-23 11:59:10,989 INFO L268 TraceCheckUtils]: 37: Hoare quadruple {3329#true} {3330#false} #83#return; {3330#false} is VALID [2018-11-23 11:59:10,989 INFO L273 TraceCheckUtils]: 38: Hoare triple {3330#false} havoc #t~mem6;havoc #t~mem7; {3330#false} is VALID [2018-11-23 11:59:10,989 INFO L273 TraceCheckUtils]: 39: Hoare triple {3330#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {3330#false} is VALID [2018-11-23 11:59:10,990 INFO L273 TraceCheckUtils]: 40: Hoare triple {3330#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {3330#false} is VALID [2018-11-23 11:59:10,990 INFO L256 TraceCheckUtils]: 41: Hoare triple {3330#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {3329#true} is VALID [2018-11-23 11:59:10,990 INFO L273 TraceCheckUtils]: 42: Hoare triple {3329#true} ~cond := #in~cond; {3329#true} is VALID [2018-11-23 11:59:10,990 INFO L273 TraceCheckUtils]: 43: Hoare triple {3329#true} assume !(0 == ~cond); {3329#true} is VALID [2018-11-23 11:59:10,991 INFO L273 TraceCheckUtils]: 44: Hoare triple {3329#true} assume true; {3329#true} is VALID [2018-11-23 11:59:10,991 INFO L268 TraceCheckUtils]: 45: Hoare quadruple {3329#true} {3330#false} #83#return; {3330#false} is VALID [2018-11-23 11:59:10,991 INFO L273 TraceCheckUtils]: 46: Hoare triple {3330#false} havoc #t~mem6;havoc #t~mem7; {3330#false} is VALID [2018-11-23 11:59:10,991 INFO L273 TraceCheckUtils]: 47: Hoare triple {3330#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {3330#false} is VALID [2018-11-23 11:59:10,991 INFO L273 TraceCheckUtils]: 48: Hoare triple {3330#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {3330#false} is VALID [2018-11-23 11:59:10,992 INFO L256 TraceCheckUtils]: 49: Hoare triple {3330#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {3330#false} is VALID [2018-11-23 11:59:10,992 INFO L273 TraceCheckUtils]: 50: Hoare triple {3330#false} ~cond := #in~cond; {3330#false} is VALID [2018-11-23 11:59:10,992 INFO L273 TraceCheckUtils]: 51: Hoare triple {3330#false} assume 0 == ~cond; {3330#false} is VALID [2018-11-23 11:59:10,992 INFO L273 TraceCheckUtils]: 52: Hoare triple {3330#false} assume !false; {3330#false} is VALID [2018-11-23 11:59:10,994 INFO L134 CoverageAnalysis]: Checked inductivity of 87 backedges. 5 proven. 70 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2018-11-23 11:59:10,994 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 11:59:10,994 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 11:59:11,003 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 11:59:11,035 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 11:59:11,035 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 11:59:11,051 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:59:11,054 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 11:59:11,167 INFO L256 TraceCheckUtils]: 0: Hoare triple {3329#true} call ULTIMATE.init(); {3329#true} is VALID [2018-11-23 11:59:11,168 INFO L273 TraceCheckUtils]: 1: Hoare triple {3329#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {3329#true} is VALID [2018-11-23 11:59:11,168 INFO L273 TraceCheckUtils]: 2: Hoare triple {3329#true} assume true; {3329#true} is VALID [2018-11-23 11:59:11,168 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3329#true} {3329#true} #79#return; {3329#true} is VALID [2018-11-23 11:59:11,168 INFO L256 TraceCheckUtils]: 4: Hoare triple {3329#true} call #t~ret8 := main(); {3329#true} is VALID [2018-11-23 11:59:11,168 INFO L273 TraceCheckUtils]: 5: Hoare triple {3329#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {3329#true} is VALID [2018-11-23 11:59:11,173 INFO L273 TraceCheckUtils]: 6: Hoare triple {3329#true} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {3360#(<= main_~i~0 1)} is VALID [2018-11-23 11:59:11,173 INFO L273 TraceCheckUtils]: 7: Hoare triple {3360#(<= main_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3360#(<= main_~i~0 1)} is VALID [2018-11-23 11:59:11,173 INFO L273 TraceCheckUtils]: 8: Hoare triple {3360#(<= main_~i~0 1)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {3360#(<= main_~i~0 1)} is VALID [2018-11-23 11:59:11,174 INFO L273 TraceCheckUtils]: 9: Hoare triple {3360#(<= main_~i~0 1)} ~i~0 := 1 + ~i~0; {3332#(<= main_~i~0 2)} is VALID [2018-11-23 11:59:11,174 INFO L273 TraceCheckUtils]: 10: Hoare triple {3332#(<= main_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3332#(<= main_~i~0 2)} is VALID [2018-11-23 11:59:11,175 INFO L273 TraceCheckUtils]: 11: Hoare triple {3332#(<= main_~i~0 2)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {3332#(<= main_~i~0 2)} is VALID [2018-11-23 11:59:11,175 INFO L273 TraceCheckUtils]: 12: Hoare triple {3332#(<= main_~i~0 2)} ~i~0 := 1 + ~i~0; {3333#(<= main_~i~0 3)} is VALID [2018-11-23 11:59:11,175 INFO L273 TraceCheckUtils]: 13: Hoare triple {3333#(<= main_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3333#(<= main_~i~0 3)} is VALID [2018-11-23 11:59:11,176 INFO L273 TraceCheckUtils]: 14: Hoare triple {3333#(<= main_~i~0 3)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {3333#(<= main_~i~0 3)} is VALID [2018-11-23 11:59:11,176 INFO L273 TraceCheckUtils]: 15: Hoare triple {3333#(<= main_~i~0 3)} ~i~0 := 1 + ~i~0; {3334#(<= main_~i~0 4)} is VALID [2018-11-23 11:59:11,177 INFO L273 TraceCheckUtils]: 16: Hoare triple {3334#(<= main_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3334#(<= main_~i~0 4)} is VALID [2018-11-23 11:59:11,177 INFO L273 TraceCheckUtils]: 17: Hoare triple {3334#(<= main_~i~0 4)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {3334#(<= main_~i~0 4)} is VALID [2018-11-23 11:59:11,177 INFO L273 TraceCheckUtils]: 18: Hoare triple {3334#(<= main_~i~0 4)} ~i~0 := 1 + ~i~0; {3335#(<= main_~i~0 5)} is VALID [2018-11-23 11:59:11,178 INFO L273 TraceCheckUtils]: 19: Hoare triple {3335#(<= main_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3335#(<= main_~i~0 5)} is VALID [2018-11-23 11:59:11,178 INFO L273 TraceCheckUtils]: 20: Hoare triple {3335#(<= main_~i~0 5)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {3335#(<= main_~i~0 5)} is VALID [2018-11-23 11:59:11,179 INFO L273 TraceCheckUtils]: 21: Hoare triple {3335#(<= main_~i~0 5)} ~i~0 := 1 + ~i~0; {3336#(<= main_~i~0 6)} is VALID [2018-11-23 11:59:11,180 INFO L273 TraceCheckUtils]: 22: Hoare triple {3336#(<= main_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3336#(<= main_~i~0 6)} is VALID [2018-11-23 11:59:11,180 INFO L273 TraceCheckUtils]: 23: Hoare triple {3336#(<= main_~i~0 6)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {3336#(<= main_~i~0 6)} is VALID [2018-11-23 11:59:11,181 INFO L273 TraceCheckUtils]: 24: Hoare triple {3336#(<= main_~i~0 6)} ~i~0 := 1 + ~i~0; {3337#(<= main_~i~0 7)} is VALID [2018-11-23 11:59:11,181 INFO L273 TraceCheckUtils]: 25: Hoare triple {3337#(<= main_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {3337#(<= main_~i~0 7)} is VALID [2018-11-23 11:59:11,182 INFO L273 TraceCheckUtils]: 26: Hoare triple {3337#(<= main_~i~0 7)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {3337#(<= main_~i~0 7)} is VALID [2018-11-23 11:59:11,183 INFO L273 TraceCheckUtils]: 27: Hoare triple {3337#(<= main_~i~0 7)} ~i~0 := 1 + ~i~0; {3338#(<= main_~i~0 8)} is VALID [2018-11-23 11:59:11,184 INFO L273 TraceCheckUtils]: 28: Hoare triple {3338#(<= main_~i~0 8)} assume !(~i~0 < 100000); {3330#false} is VALID [2018-11-23 11:59:11,184 INFO L273 TraceCheckUtils]: 29: Hoare triple {3330#false} assume !(0 != ~swapped~0); {3330#false} is VALID [2018-11-23 11:59:11,184 INFO L273 TraceCheckUtils]: 30: Hoare triple {3330#false} havoc ~x~0;havoc ~y~0;~x~0 := 0; {3330#false} is VALID [2018-11-23 11:59:11,184 INFO L273 TraceCheckUtils]: 31: Hoare triple {3330#false} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {3330#false} is VALID [2018-11-23 11:59:11,185 INFO L273 TraceCheckUtils]: 32: Hoare triple {3330#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {3330#false} is VALID [2018-11-23 11:59:11,185 INFO L256 TraceCheckUtils]: 33: Hoare triple {3330#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {3330#false} is VALID [2018-11-23 11:59:11,185 INFO L273 TraceCheckUtils]: 34: Hoare triple {3330#false} ~cond := #in~cond; {3330#false} is VALID [2018-11-23 11:59:11,185 INFO L273 TraceCheckUtils]: 35: Hoare triple {3330#false} assume !(0 == ~cond); {3330#false} is VALID [2018-11-23 11:59:11,185 INFO L273 TraceCheckUtils]: 36: Hoare triple {3330#false} assume true; {3330#false} is VALID [2018-11-23 11:59:11,186 INFO L268 TraceCheckUtils]: 37: Hoare quadruple {3330#false} {3330#false} #83#return; {3330#false} is VALID [2018-11-23 11:59:11,186 INFO L273 TraceCheckUtils]: 38: Hoare triple {3330#false} havoc #t~mem6;havoc #t~mem7; {3330#false} is VALID [2018-11-23 11:59:11,186 INFO L273 TraceCheckUtils]: 39: Hoare triple {3330#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {3330#false} is VALID [2018-11-23 11:59:11,186 INFO L273 TraceCheckUtils]: 40: Hoare triple {3330#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {3330#false} is VALID [2018-11-23 11:59:11,187 INFO L256 TraceCheckUtils]: 41: Hoare triple {3330#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {3330#false} is VALID [2018-11-23 11:59:11,187 INFO L273 TraceCheckUtils]: 42: Hoare triple {3330#false} ~cond := #in~cond; {3330#false} is VALID [2018-11-23 11:59:11,187 INFO L273 TraceCheckUtils]: 43: Hoare triple {3330#false} assume !(0 == ~cond); {3330#false} is VALID [2018-11-23 11:59:11,187 INFO L273 TraceCheckUtils]: 44: Hoare triple {3330#false} assume true; {3330#false} is VALID [2018-11-23 11:59:11,187 INFO L268 TraceCheckUtils]: 45: Hoare quadruple {3330#false} {3330#false} #83#return; {3330#false} is VALID [2018-11-23 11:59:11,187 INFO L273 TraceCheckUtils]: 46: Hoare triple {3330#false} havoc #t~mem6;havoc #t~mem7; {3330#false} is VALID [2018-11-23 11:59:11,187 INFO L273 TraceCheckUtils]: 47: Hoare triple {3330#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {3330#false} is VALID [2018-11-23 11:59:11,188 INFO L273 TraceCheckUtils]: 48: Hoare triple {3330#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {3330#false} is VALID [2018-11-23 11:59:11,188 INFO L256 TraceCheckUtils]: 49: Hoare triple {3330#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {3330#false} is VALID [2018-11-23 11:59:11,188 INFO L273 TraceCheckUtils]: 50: Hoare triple {3330#false} ~cond := #in~cond; {3330#false} is VALID [2018-11-23 11:59:11,188 INFO L273 TraceCheckUtils]: 51: Hoare triple {3330#false} assume 0 == ~cond; {3330#false} is VALID [2018-11-23 11:59:11,188 INFO L273 TraceCheckUtils]: 52: Hoare triple {3330#false} assume !false; {3330#false} is VALID [2018-11-23 11:59:11,191 INFO L134 CoverageAnalysis]: Checked inductivity of 87 backedges. 1 proven. 70 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2018-11-23 11:59:11,209 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 11:59:11,209 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 11 [2018-11-23 11:59:11,210 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 53 [2018-11-23 11:59:11,210 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 11:59:11,210 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states. [2018-11-23 11:59:11,263 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:59:11,263 INFO L459 AbstractCegarLoop]: Interpolant automaton has 11 states [2018-11-23 11:59:11,263 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2018-11-23 11:59:11,264 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=55, Invalid=55, Unknown=0, NotChecked=0, Total=110 [2018-11-23 11:59:11,264 INFO L87 Difference]: Start difference. First operand 78 states and 95 transitions. Second operand 11 states. [2018-11-23 11:59:11,684 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:59:11,684 INFO L93 Difference]: Finished difference Result 160 states and 200 transitions. [2018-11-23 11:59:11,684 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2018-11-23 11:59:11,684 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 53 [2018-11-23 11:59:11,684 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 11:59:11,684 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-23 11:59:11,686 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 81 transitions. [2018-11-23 11:59:11,686 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-23 11:59:11,687 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 81 transitions. [2018-11-23 11:59:11,687 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 81 transitions. [2018-11-23 11:59:11,825 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:59:11,827 INFO L225 Difference]: With dead ends: 160 [2018-11-23 11:59:11,828 INFO L226 Difference]: Without dead ends: 88 [2018-11-23 11:59:11,828 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 62 GetRequests, 53 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=55, Invalid=55, Unknown=0, NotChecked=0, Total=110 [2018-11-23 11:59:11,829 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 88 states. [2018-11-23 11:59:11,948 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 88 to 84. [2018-11-23 11:59:11,948 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 11:59:11,948 INFO L82 GeneralOperation]: Start isEquivalent. First operand 88 states. Second operand 84 states. [2018-11-23 11:59:11,948 INFO L74 IsIncluded]: Start isIncluded. First operand 88 states. Second operand 84 states. [2018-11-23 11:59:11,948 INFO L87 Difference]: Start difference. First operand 88 states. Second operand 84 states. [2018-11-23 11:59:11,951 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:59:11,951 INFO L93 Difference]: Finished difference Result 88 states and 109 transitions. [2018-11-23 11:59:11,952 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 109 transitions. [2018-11-23 11:59:11,952 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:59:11,952 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:59:11,952 INFO L74 IsIncluded]: Start isIncluded. First operand 84 states. Second operand 88 states. [2018-11-23 11:59:11,952 INFO L87 Difference]: Start difference. First operand 84 states. Second operand 88 states. [2018-11-23 11:59:11,954 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:59:11,954 INFO L93 Difference]: Finished difference Result 88 states and 109 transitions. [2018-11-23 11:59:11,954 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 109 transitions. [2018-11-23 11:59:11,954 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:59:11,954 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:59:11,955 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 11:59:11,955 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 11:59:11,955 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 84 states. [2018-11-23 11:59:11,957 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 84 states to 84 states and 103 transitions. [2018-11-23 11:59:11,957 INFO L78 Accepts]: Start accepts. Automaton has 84 states and 103 transitions. Word has length 53 [2018-11-23 11:59:11,957 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 11:59:11,957 INFO L480 AbstractCegarLoop]: Abstraction has 84 states and 103 transitions. [2018-11-23 11:59:11,957 INFO L481 AbstractCegarLoop]: Interpolant automaton has 11 states. [2018-11-23 11:59:11,957 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 103 transitions. [2018-11-23 11:59:11,958 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2018-11-23 11:59:11,958 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 11:59:11,958 INFO L402 BasicCegarLoop]: trace histogram [8, 8, 8, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 11:59:11,959 INFO L423 AbstractCegarLoop]: === Iteration 11 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 11:59:11,959 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 11:59:11,959 INFO L82 PathProgramCache]: Analyzing trace with hash -249772617, now seen corresponding path program 5 times [2018-11-23 11:59:11,959 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 11:59:11,959 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 11:59:11,960 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 11:59:11,960 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 11:59:11,960 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 11:59:11,976 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:59:12,229 INFO L256 TraceCheckUtils]: 0: Hoare triple {4014#true} call ULTIMATE.init(); {4014#true} is VALID [2018-11-23 11:59:12,230 INFO L273 TraceCheckUtils]: 1: Hoare triple {4014#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {4014#true} is VALID [2018-11-23 11:59:12,230 INFO L273 TraceCheckUtils]: 2: Hoare triple {4014#true} assume true; {4014#true} is VALID [2018-11-23 11:59:12,230 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4014#true} {4014#true} #79#return; {4014#true} is VALID [2018-11-23 11:59:12,230 INFO L256 TraceCheckUtils]: 4: Hoare triple {4014#true} call #t~ret8 := main(); {4014#true} is VALID [2018-11-23 11:59:12,230 INFO L273 TraceCheckUtils]: 5: Hoare triple {4014#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {4014#true} is VALID [2018-11-23 11:59:12,231 INFO L273 TraceCheckUtils]: 6: Hoare triple {4014#true} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {4016#(= main_~i~0 1)} is VALID [2018-11-23 11:59:12,231 INFO L273 TraceCheckUtils]: 7: Hoare triple {4016#(= main_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4016#(= main_~i~0 1)} is VALID [2018-11-23 11:59:12,232 INFO L273 TraceCheckUtils]: 8: Hoare triple {4016#(= main_~i~0 1)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4016#(= main_~i~0 1)} is VALID [2018-11-23 11:59:12,232 INFO L273 TraceCheckUtils]: 9: Hoare triple {4016#(= main_~i~0 1)} ~i~0 := 1 + ~i~0; {4017#(<= main_~i~0 2)} is VALID [2018-11-23 11:59:12,233 INFO L273 TraceCheckUtils]: 10: Hoare triple {4017#(<= main_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4017#(<= main_~i~0 2)} is VALID [2018-11-23 11:59:12,233 INFO L273 TraceCheckUtils]: 11: Hoare triple {4017#(<= main_~i~0 2)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4017#(<= main_~i~0 2)} is VALID [2018-11-23 11:59:12,233 INFO L273 TraceCheckUtils]: 12: Hoare triple {4017#(<= main_~i~0 2)} ~i~0 := 1 + ~i~0; {4018#(<= main_~i~0 3)} is VALID [2018-11-23 11:59:12,234 INFO L273 TraceCheckUtils]: 13: Hoare triple {4018#(<= main_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4018#(<= main_~i~0 3)} is VALID [2018-11-23 11:59:12,234 INFO L273 TraceCheckUtils]: 14: Hoare triple {4018#(<= main_~i~0 3)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4018#(<= main_~i~0 3)} is VALID [2018-11-23 11:59:12,235 INFO L273 TraceCheckUtils]: 15: Hoare triple {4018#(<= main_~i~0 3)} ~i~0 := 1 + ~i~0; {4019#(<= main_~i~0 4)} is VALID [2018-11-23 11:59:12,235 INFO L273 TraceCheckUtils]: 16: Hoare triple {4019#(<= main_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4019#(<= main_~i~0 4)} is VALID [2018-11-23 11:59:12,235 INFO L273 TraceCheckUtils]: 17: Hoare triple {4019#(<= main_~i~0 4)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4019#(<= main_~i~0 4)} is VALID [2018-11-23 11:59:12,236 INFO L273 TraceCheckUtils]: 18: Hoare triple {4019#(<= main_~i~0 4)} ~i~0 := 1 + ~i~0; {4020#(<= main_~i~0 5)} is VALID [2018-11-23 11:59:12,237 INFO L273 TraceCheckUtils]: 19: Hoare triple {4020#(<= main_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4020#(<= main_~i~0 5)} is VALID [2018-11-23 11:59:12,237 INFO L273 TraceCheckUtils]: 20: Hoare triple {4020#(<= main_~i~0 5)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4020#(<= main_~i~0 5)} is VALID [2018-11-23 11:59:12,238 INFO L273 TraceCheckUtils]: 21: Hoare triple {4020#(<= main_~i~0 5)} ~i~0 := 1 + ~i~0; {4021#(<= main_~i~0 6)} is VALID [2018-11-23 11:59:12,239 INFO L273 TraceCheckUtils]: 22: Hoare triple {4021#(<= main_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4021#(<= main_~i~0 6)} is VALID [2018-11-23 11:59:12,239 INFO L273 TraceCheckUtils]: 23: Hoare triple {4021#(<= main_~i~0 6)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4021#(<= main_~i~0 6)} is VALID [2018-11-23 11:59:12,240 INFO L273 TraceCheckUtils]: 24: Hoare triple {4021#(<= main_~i~0 6)} ~i~0 := 1 + ~i~0; {4022#(<= main_~i~0 7)} is VALID [2018-11-23 11:59:12,241 INFO L273 TraceCheckUtils]: 25: Hoare triple {4022#(<= main_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4022#(<= main_~i~0 7)} is VALID [2018-11-23 11:59:12,241 INFO L273 TraceCheckUtils]: 26: Hoare triple {4022#(<= main_~i~0 7)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4022#(<= main_~i~0 7)} is VALID [2018-11-23 11:59:12,242 INFO L273 TraceCheckUtils]: 27: Hoare triple {4022#(<= main_~i~0 7)} ~i~0 := 1 + ~i~0; {4023#(<= main_~i~0 8)} is VALID [2018-11-23 11:59:12,242 INFO L273 TraceCheckUtils]: 28: Hoare triple {4023#(<= main_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4023#(<= main_~i~0 8)} is VALID [2018-11-23 11:59:12,243 INFO L273 TraceCheckUtils]: 29: Hoare triple {4023#(<= main_~i~0 8)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4023#(<= main_~i~0 8)} is VALID [2018-11-23 11:59:12,244 INFO L273 TraceCheckUtils]: 30: Hoare triple {4023#(<= main_~i~0 8)} ~i~0 := 1 + ~i~0; {4024#(<= main_~i~0 9)} is VALID [2018-11-23 11:59:12,245 INFO L273 TraceCheckUtils]: 31: Hoare triple {4024#(<= main_~i~0 9)} assume !(~i~0 < 100000); {4015#false} is VALID [2018-11-23 11:59:12,245 INFO L273 TraceCheckUtils]: 32: Hoare triple {4015#false} assume !(0 != ~swapped~0); {4015#false} is VALID [2018-11-23 11:59:12,245 INFO L273 TraceCheckUtils]: 33: Hoare triple {4015#false} havoc ~x~0;havoc ~y~0;~x~0 := 0; {4015#false} is VALID [2018-11-23 11:59:12,245 INFO L273 TraceCheckUtils]: 34: Hoare triple {4015#false} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {4015#false} is VALID [2018-11-23 11:59:12,245 INFO L273 TraceCheckUtils]: 35: Hoare triple {4015#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {4015#false} is VALID [2018-11-23 11:59:12,246 INFO L256 TraceCheckUtils]: 36: Hoare triple {4015#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {4014#true} is VALID [2018-11-23 11:59:12,246 INFO L273 TraceCheckUtils]: 37: Hoare triple {4014#true} ~cond := #in~cond; {4014#true} is VALID [2018-11-23 11:59:12,246 INFO L273 TraceCheckUtils]: 38: Hoare triple {4014#true} assume !(0 == ~cond); {4014#true} is VALID [2018-11-23 11:59:12,246 INFO L273 TraceCheckUtils]: 39: Hoare triple {4014#true} assume true; {4014#true} is VALID [2018-11-23 11:59:12,247 INFO L268 TraceCheckUtils]: 40: Hoare quadruple {4014#true} {4015#false} #83#return; {4015#false} is VALID [2018-11-23 11:59:12,247 INFO L273 TraceCheckUtils]: 41: Hoare triple {4015#false} havoc #t~mem6;havoc #t~mem7; {4015#false} is VALID [2018-11-23 11:59:12,247 INFO L273 TraceCheckUtils]: 42: Hoare triple {4015#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {4015#false} is VALID [2018-11-23 11:59:12,247 INFO L273 TraceCheckUtils]: 43: Hoare triple {4015#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {4015#false} is VALID [2018-11-23 11:59:12,247 INFO L256 TraceCheckUtils]: 44: Hoare triple {4015#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {4014#true} is VALID [2018-11-23 11:59:12,248 INFO L273 TraceCheckUtils]: 45: Hoare triple {4014#true} ~cond := #in~cond; {4014#true} is VALID [2018-11-23 11:59:12,248 INFO L273 TraceCheckUtils]: 46: Hoare triple {4014#true} assume !(0 == ~cond); {4014#true} is VALID [2018-11-23 11:59:12,248 INFO L273 TraceCheckUtils]: 47: Hoare triple {4014#true} assume true; {4014#true} is VALID [2018-11-23 11:59:12,248 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {4014#true} {4015#false} #83#return; {4015#false} is VALID [2018-11-23 11:59:12,248 INFO L273 TraceCheckUtils]: 49: Hoare triple {4015#false} havoc #t~mem6;havoc #t~mem7; {4015#false} is VALID [2018-11-23 11:59:12,248 INFO L273 TraceCheckUtils]: 50: Hoare triple {4015#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {4015#false} is VALID [2018-11-23 11:59:12,248 INFO L273 TraceCheckUtils]: 51: Hoare triple {4015#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {4015#false} is VALID [2018-11-23 11:59:12,249 INFO L256 TraceCheckUtils]: 52: Hoare triple {4015#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {4015#false} is VALID [2018-11-23 11:59:12,249 INFO L273 TraceCheckUtils]: 53: Hoare triple {4015#false} ~cond := #in~cond; {4015#false} is VALID [2018-11-23 11:59:12,249 INFO L273 TraceCheckUtils]: 54: Hoare triple {4015#false} assume 0 == ~cond; {4015#false} is VALID [2018-11-23 11:59:12,249 INFO L273 TraceCheckUtils]: 55: Hoare triple {4015#false} assume !false; {4015#false} is VALID [2018-11-23 11:59:12,251 INFO L134 CoverageAnalysis]: Checked inductivity of 109 backedges. 5 proven. 92 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2018-11-23 11:59:12,251 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 11:59:12,251 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 11:59:12,260 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 11:59:12,301 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 9 check-sat command(s) [2018-11-23 11:59:12,301 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 11:59:12,333 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:59:12,335 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 11:59:12,527 INFO L256 TraceCheckUtils]: 0: Hoare triple {4014#true} call ULTIMATE.init(); {4014#true} is VALID [2018-11-23 11:59:12,527 INFO L273 TraceCheckUtils]: 1: Hoare triple {4014#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {4014#true} is VALID [2018-11-23 11:59:12,527 INFO L273 TraceCheckUtils]: 2: Hoare triple {4014#true} assume true; {4014#true} is VALID [2018-11-23 11:59:12,528 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4014#true} {4014#true} #79#return; {4014#true} is VALID [2018-11-23 11:59:12,528 INFO L256 TraceCheckUtils]: 4: Hoare triple {4014#true} call #t~ret8 := main(); {4014#true} is VALID [2018-11-23 11:59:12,528 INFO L273 TraceCheckUtils]: 5: Hoare triple {4014#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {4014#true} is VALID [2018-11-23 11:59:12,529 INFO L273 TraceCheckUtils]: 6: Hoare triple {4014#true} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {4046#(<= main_~i~0 1)} is VALID [2018-11-23 11:59:12,529 INFO L273 TraceCheckUtils]: 7: Hoare triple {4046#(<= main_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4046#(<= main_~i~0 1)} is VALID [2018-11-23 11:59:12,530 INFO L273 TraceCheckUtils]: 8: Hoare triple {4046#(<= main_~i~0 1)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4046#(<= main_~i~0 1)} is VALID [2018-11-23 11:59:12,530 INFO L273 TraceCheckUtils]: 9: Hoare triple {4046#(<= main_~i~0 1)} ~i~0 := 1 + ~i~0; {4017#(<= main_~i~0 2)} is VALID [2018-11-23 11:59:12,530 INFO L273 TraceCheckUtils]: 10: Hoare triple {4017#(<= main_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4017#(<= main_~i~0 2)} is VALID [2018-11-23 11:59:12,531 INFO L273 TraceCheckUtils]: 11: Hoare triple {4017#(<= main_~i~0 2)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4017#(<= main_~i~0 2)} is VALID [2018-11-23 11:59:12,531 INFO L273 TraceCheckUtils]: 12: Hoare triple {4017#(<= main_~i~0 2)} ~i~0 := 1 + ~i~0; {4018#(<= main_~i~0 3)} is VALID [2018-11-23 11:59:12,532 INFO L273 TraceCheckUtils]: 13: Hoare triple {4018#(<= main_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4018#(<= main_~i~0 3)} is VALID [2018-11-23 11:59:12,532 INFO L273 TraceCheckUtils]: 14: Hoare triple {4018#(<= main_~i~0 3)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4018#(<= main_~i~0 3)} is VALID [2018-11-23 11:59:12,533 INFO L273 TraceCheckUtils]: 15: Hoare triple {4018#(<= main_~i~0 3)} ~i~0 := 1 + ~i~0; {4019#(<= main_~i~0 4)} is VALID [2018-11-23 11:59:12,534 INFO L273 TraceCheckUtils]: 16: Hoare triple {4019#(<= main_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4019#(<= main_~i~0 4)} is VALID [2018-11-23 11:59:12,534 INFO L273 TraceCheckUtils]: 17: Hoare triple {4019#(<= main_~i~0 4)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4019#(<= main_~i~0 4)} is VALID [2018-11-23 11:59:12,535 INFO L273 TraceCheckUtils]: 18: Hoare triple {4019#(<= main_~i~0 4)} ~i~0 := 1 + ~i~0; {4020#(<= main_~i~0 5)} is VALID [2018-11-23 11:59:12,536 INFO L273 TraceCheckUtils]: 19: Hoare triple {4020#(<= main_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4020#(<= main_~i~0 5)} is VALID [2018-11-23 11:59:12,536 INFO L273 TraceCheckUtils]: 20: Hoare triple {4020#(<= main_~i~0 5)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4020#(<= main_~i~0 5)} is VALID [2018-11-23 11:59:12,537 INFO L273 TraceCheckUtils]: 21: Hoare triple {4020#(<= main_~i~0 5)} ~i~0 := 1 + ~i~0; {4021#(<= main_~i~0 6)} is VALID [2018-11-23 11:59:12,538 INFO L273 TraceCheckUtils]: 22: Hoare triple {4021#(<= main_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4021#(<= main_~i~0 6)} is VALID [2018-11-23 11:59:12,538 INFO L273 TraceCheckUtils]: 23: Hoare triple {4021#(<= main_~i~0 6)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4021#(<= main_~i~0 6)} is VALID [2018-11-23 11:59:12,539 INFO L273 TraceCheckUtils]: 24: Hoare triple {4021#(<= main_~i~0 6)} ~i~0 := 1 + ~i~0; {4022#(<= main_~i~0 7)} is VALID [2018-11-23 11:59:12,539 INFO L273 TraceCheckUtils]: 25: Hoare triple {4022#(<= main_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4022#(<= main_~i~0 7)} is VALID [2018-11-23 11:59:12,540 INFO L273 TraceCheckUtils]: 26: Hoare triple {4022#(<= main_~i~0 7)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4022#(<= main_~i~0 7)} is VALID [2018-11-23 11:59:12,541 INFO L273 TraceCheckUtils]: 27: Hoare triple {4022#(<= main_~i~0 7)} ~i~0 := 1 + ~i~0; {4023#(<= main_~i~0 8)} is VALID [2018-11-23 11:59:12,541 INFO L273 TraceCheckUtils]: 28: Hoare triple {4023#(<= main_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4023#(<= main_~i~0 8)} is VALID [2018-11-23 11:59:12,542 INFO L273 TraceCheckUtils]: 29: Hoare triple {4023#(<= main_~i~0 8)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4023#(<= main_~i~0 8)} is VALID [2018-11-23 11:59:12,543 INFO L273 TraceCheckUtils]: 30: Hoare triple {4023#(<= main_~i~0 8)} ~i~0 := 1 + ~i~0; {4024#(<= main_~i~0 9)} is VALID [2018-11-23 11:59:12,543 INFO L273 TraceCheckUtils]: 31: Hoare triple {4024#(<= main_~i~0 9)} assume !(~i~0 < 100000); {4015#false} is VALID [2018-11-23 11:59:12,544 INFO L273 TraceCheckUtils]: 32: Hoare triple {4015#false} assume !(0 != ~swapped~0); {4015#false} is VALID [2018-11-23 11:59:12,544 INFO L273 TraceCheckUtils]: 33: Hoare triple {4015#false} havoc ~x~0;havoc ~y~0;~x~0 := 0; {4015#false} is VALID [2018-11-23 11:59:12,544 INFO L273 TraceCheckUtils]: 34: Hoare triple {4015#false} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {4015#false} is VALID [2018-11-23 11:59:12,544 INFO L273 TraceCheckUtils]: 35: Hoare triple {4015#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {4015#false} is VALID [2018-11-23 11:59:12,545 INFO L256 TraceCheckUtils]: 36: Hoare triple {4015#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {4015#false} is VALID [2018-11-23 11:59:12,545 INFO L273 TraceCheckUtils]: 37: Hoare triple {4015#false} ~cond := #in~cond; {4015#false} is VALID [2018-11-23 11:59:12,545 INFO L273 TraceCheckUtils]: 38: Hoare triple {4015#false} assume !(0 == ~cond); {4015#false} is VALID [2018-11-23 11:59:12,545 INFO L273 TraceCheckUtils]: 39: Hoare triple {4015#false} assume true; {4015#false} is VALID [2018-11-23 11:59:12,545 INFO L268 TraceCheckUtils]: 40: Hoare quadruple {4015#false} {4015#false} #83#return; {4015#false} is VALID [2018-11-23 11:59:12,546 INFO L273 TraceCheckUtils]: 41: Hoare triple {4015#false} havoc #t~mem6;havoc #t~mem7; {4015#false} is VALID [2018-11-23 11:59:12,546 INFO L273 TraceCheckUtils]: 42: Hoare triple {4015#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {4015#false} is VALID [2018-11-23 11:59:12,546 INFO L273 TraceCheckUtils]: 43: Hoare triple {4015#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {4015#false} is VALID [2018-11-23 11:59:12,546 INFO L256 TraceCheckUtils]: 44: Hoare triple {4015#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {4015#false} is VALID [2018-11-23 11:59:12,546 INFO L273 TraceCheckUtils]: 45: Hoare triple {4015#false} ~cond := #in~cond; {4015#false} is VALID [2018-11-23 11:59:12,547 INFO L273 TraceCheckUtils]: 46: Hoare triple {4015#false} assume !(0 == ~cond); {4015#false} is VALID [2018-11-23 11:59:12,547 INFO L273 TraceCheckUtils]: 47: Hoare triple {4015#false} assume true; {4015#false} is VALID [2018-11-23 11:59:12,547 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {4015#false} {4015#false} #83#return; {4015#false} is VALID [2018-11-23 11:59:12,547 INFO L273 TraceCheckUtils]: 49: Hoare triple {4015#false} havoc #t~mem6;havoc #t~mem7; {4015#false} is VALID [2018-11-23 11:59:12,547 INFO L273 TraceCheckUtils]: 50: Hoare triple {4015#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {4015#false} is VALID [2018-11-23 11:59:12,547 INFO L273 TraceCheckUtils]: 51: Hoare triple {4015#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {4015#false} is VALID [2018-11-23 11:59:12,547 INFO L256 TraceCheckUtils]: 52: Hoare triple {4015#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {4015#false} is VALID [2018-11-23 11:59:12,547 INFO L273 TraceCheckUtils]: 53: Hoare triple {4015#false} ~cond := #in~cond; {4015#false} is VALID [2018-11-23 11:59:12,548 INFO L273 TraceCheckUtils]: 54: Hoare triple {4015#false} assume 0 == ~cond; {4015#false} is VALID [2018-11-23 11:59:12,548 INFO L273 TraceCheckUtils]: 55: Hoare triple {4015#false} assume !false; {4015#false} is VALID [2018-11-23 11:59:12,550 INFO L134 CoverageAnalysis]: Checked inductivity of 109 backedges. 1 proven. 92 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2018-11-23 11:59:12,570 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 11:59:12,570 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 12 [2018-11-23 11:59:12,570 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 56 [2018-11-23 11:59:12,571 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 11:59:12,571 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states. [2018-11-23 11:59:12,620 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:59:12,620 INFO L459 AbstractCegarLoop]: Interpolant automaton has 12 states [2018-11-23 11:59:12,621 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2018-11-23 11:59:12,621 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=66, Invalid=66, Unknown=0, NotChecked=0, Total=132 [2018-11-23 11:59:12,621 INFO L87 Difference]: Start difference. First operand 84 states and 103 transitions. Second operand 12 states. [2018-11-23 11:59:13,360 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:59:13,360 INFO L93 Difference]: Finished difference Result 172 states and 216 transitions. [2018-11-23 11:59:13,361 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-23 11:59:13,361 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 56 [2018-11-23 11:59:13,361 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 11:59:13,361 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2018-11-23 11:59:13,363 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 85 transitions. [2018-11-23 11:59:13,363 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2018-11-23 11:59:13,364 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 85 transitions. [2018-11-23 11:59:13,364 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 85 transitions. [2018-11-23 11:59:13,989 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 11:59:13,992 INFO L225 Difference]: With dead ends: 172 [2018-11-23 11:59:13,992 INFO L226 Difference]: Without dead ends: 94 [2018-11-23 11:59:13,996 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 66 GetRequests, 56 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=66, Invalid=66, Unknown=0, NotChecked=0, Total=132 [2018-11-23 11:59:13,996 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 94 states. [2018-11-23 11:59:14,112 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 94 to 90. [2018-11-23 11:59:14,112 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 11:59:14,112 INFO L82 GeneralOperation]: Start isEquivalent. First operand 94 states. Second operand 90 states. [2018-11-23 11:59:14,113 INFO L74 IsIncluded]: Start isIncluded. First operand 94 states. Second operand 90 states. [2018-11-23 11:59:14,113 INFO L87 Difference]: Start difference. First operand 94 states. Second operand 90 states. [2018-11-23 11:59:14,115 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:59:14,115 INFO L93 Difference]: Finished difference Result 94 states and 117 transitions. [2018-11-23 11:59:14,115 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 117 transitions. [2018-11-23 11:59:14,116 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:59:14,116 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:59:14,116 INFO L74 IsIncluded]: Start isIncluded. First operand 90 states. Second operand 94 states. [2018-11-23 11:59:14,116 INFO L87 Difference]: Start difference. First operand 90 states. Second operand 94 states. [2018-11-23 11:59:14,118 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:59:14,118 INFO L93 Difference]: Finished difference Result 94 states and 117 transitions. [2018-11-23 11:59:14,118 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 117 transitions. [2018-11-23 11:59:14,118 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:59:14,118 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:59:14,119 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 11:59:14,119 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 11:59:14,119 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 90 states. [2018-11-23 11:59:14,121 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 90 states to 90 states and 111 transitions. [2018-11-23 11:59:14,121 INFO L78 Accepts]: Start accepts. Automaton has 90 states and 111 transitions. Word has length 56 [2018-11-23 11:59:14,121 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 11:59:14,121 INFO L480 AbstractCegarLoop]: Abstraction has 90 states and 111 transitions. [2018-11-23 11:59:14,121 INFO L481 AbstractCegarLoop]: Interpolant automaton has 12 states. [2018-11-23 11:59:14,122 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 111 transitions. [2018-11-23 11:59:14,122 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 60 [2018-11-23 11:59:14,122 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 11:59:14,123 INFO L402 BasicCegarLoop]: trace histogram [9, 9, 9, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 11:59:14,123 INFO L423 AbstractCegarLoop]: === Iteration 12 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 11:59:14,123 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 11:59:14,123 INFO L82 PathProgramCache]: Analyzing trace with hash 2105311982, now seen corresponding path program 6 times [2018-11-23 11:59:14,123 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 11:59:14,123 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 11:59:14,124 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 11:59:14,124 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 11:59:14,124 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 11:59:14,140 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:59:14,688 INFO L256 TraceCheckUtils]: 0: Hoare triple {4745#true} call ULTIMATE.init(); {4745#true} is VALID [2018-11-23 11:59:14,688 INFO L273 TraceCheckUtils]: 1: Hoare triple {4745#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {4745#true} is VALID [2018-11-23 11:59:14,689 INFO L273 TraceCheckUtils]: 2: Hoare triple {4745#true} assume true; {4745#true} is VALID [2018-11-23 11:59:14,689 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4745#true} {4745#true} #79#return; {4745#true} is VALID [2018-11-23 11:59:14,689 INFO L256 TraceCheckUtils]: 4: Hoare triple {4745#true} call #t~ret8 := main(); {4745#true} is VALID [2018-11-23 11:59:14,689 INFO L273 TraceCheckUtils]: 5: Hoare triple {4745#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {4745#true} is VALID [2018-11-23 11:59:14,690 INFO L273 TraceCheckUtils]: 6: Hoare triple {4745#true} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {4747#(= main_~i~0 1)} is VALID [2018-11-23 11:59:14,691 INFO L273 TraceCheckUtils]: 7: Hoare triple {4747#(= main_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4747#(= main_~i~0 1)} is VALID [2018-11-23 11:59:14,691 INFO L273 TraceCheckUtils]: 8: Hoare triple {4747#(= main_~i~0 1)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4747#(= main_~i~0 1)} is VALID [2018-11-23 11:59:14,691 INFO L273 TraceCheckUtils]: 9: Hoare triple {4747#(= main_~i~0 1)} ~i~0 := 1 + ~i~0; {4748#(<= main_~i~0 2)} is VALID [2018-11-23 11:59:14,692 INFO L273 TraceCheckUtils]: 10: Hoare triple {4748#(<= main_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4748#(<= main_~i~0 2)} is VALID [2018-11-23 11:59:14,692 INFO L273 TraceCheckUtils]: 11: Hoare triple {4748#(<= main_~i~0 2)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4748#(<= main_~i~0 2)} is VALID [2018-11-23 11:59:14,692 INFO L273 TraceCheckUtils]: 12: Hoare triple {4748#(<= main_~i~0 2)} ~i~0 := 1 + ~i~0; {4749#(<= main_~i~0 3)} is VALID [2018-11-23 11:59:14,693 INFO L273 TraceCheckUtils]: 13: Hoare triple {4749#(<= main_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4749#(<= main_~i~0 3)} is VALID [2018-11-23 11:59:14,693 INFO L273 TraceCheckUtils]: 14: Hoare triple {4749#(<= main_~i~0 3)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4749#(<= main_~i~0 3)} is VALID [2018-11-23 11:59:14,694 INFO L273 TraceCheckUtils]: 15: Hoare triple {4749#(<= main_~i~0 3)} ~i~0 := 1 + ~i~0; {4750#(<= main_~i~0 4)} is VALID [2018-11-23 11:59:14,694 INFO L273 TraceCheckUtils]: 16: Hoare triple {4750#(<= main_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4750#(<= main_~i~0 4)} is VALID [2018-11-23 11:59:14,695 INFO L273 TraceCheckUtils]: 17: Hoare triple {4750#(<= main_~i~0 4)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4750#(<= main_~i~0 4)} is VALID [2018-11-23 11:59:14,696 INFO L273 TraceCheckUtils]: 18: Hoare triple {4750#(<= main_~i~0 4)} ~i~0 := 1 + ~i~0; {4751#(<= main_~i~0 5)} is VALID [2018-11-23 11:59:14,696 INFO L273 TraceCheckUtils]: 19: Hoare triple {4751#(<= main_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4751#(<= main_~i~0 5)} is VALID [2018-11-23 11:59:14,697 INFO L273 TraceCheckUtils]: 20: Hoare triple {4751#(<= main_~i~0 5)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4751#(<= main_~i~0 5)} is VALID [2018-11-23 11:59:14,697 INFO L273 TraceCheckUtils]: 21: Hoare triple {4751#(<= main_~i~0 5)} ~i~0 := 1 + ~i~0; {4752#(<= main_~i~0 6)} is VALID [2018-11-23 11:59:14,698 INFO L273 TraceCheckUtils]: 22: Hoare triple {4752#(<= main_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4752#(<= main_~i~0 6)} is VALID [2018-11-23 11:59:14,699 INFO L273 TraceCheckUtils]: 23: Hoare triple {4752#(<= main_~i~0 6)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4752#(<= main_~i~0 6)} is VALID [2018-11-23 11:59:14,699 INFO L273 TraceCheckUtils]: 24: Hoare triple {4752#(<= main_~i~0 6)} ~i~0 := 1 + ~i~0; {4753#(<= main_~i~0 7)} is VALID [2018-11-23 11:59:14,700 INFO L273 TraceCheckUtils]: 25: Hoare triple {4753#(<= main_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4753#(<= main_~i~0 7)} is VALID [2018-11-23 11:59:14,700 INFO L273 TraceCheckUtils]: 26: Hoare triple {4753#(<= main_~i~0 7)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4753#(<= main_~i~0 7)} is VALID [2018-11-23 11:59:14,701 INFO L273 TraceCheckUtils]: 27: Hoare triple {4753#(<= main_~i~0 7)} ~i~0 := 1 + ~i~0; {4754#(<= main_~i~0 8)} is VALID [2018-11-23 11:59:14,702 INFO L273 TraceCheckUtils]: 28: Hoare triple {4754#(<= main_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4754#(<= main_~i~0 8)} is VALID [2018-11-23 11:59:14,702 INFO L273 TraceCheckUtils]: 29: Hoare triple {4754#(<= main_~i~0 8)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4754#(<= main_~i~0 8)} is VALID [2018-11-23 11:59:14,703 INFO L273 TraceCheckUtils]: 30: Hoare triple {4754#(<= main_~i~0 8)} ~i~0 := 1 + ~i~0; {4755#(<= main_~i~0 9)} is VALID [2018-11-23 11:59:14,704 INFO L273 TraceCheckUtils]: 31: Hoare triple {4755#(<= main_~i~0 9)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4755#(<= main_~i~0 9)} is VALID [2018-11-23 11:59:14,724 INFO L273 TraceCheckUtils]: 32: Hoare triple {4755#(<= main_~i~0 9)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4755#(<= main_~i~0 9)} is VALID [2018-11-23 11:59:14,726 INFO L273 TraceCheckUtils]: 33: Hoare triple {4755#(<= main_~i~0 9)} ~i~0 := 1 + ~i~0; {4756#(<= main_~i~0 10)} is VALID [2018-11-23 11:59:14,727 INFO L273 TraceCheckUtils]: 34: Hoare triple {4756#(<= main_~i~0 10)} assume !(~i~0 < 100000); {4746#false} is VALID [2018-11-23 11:59:14,727 INFO L273 TraceCheckUtils]: 35: Hoare triple {4746#false} assume !(0 != ~swapped~0); {4746#false} is VALID [2018-11-23 11:59:14,727 INFO L273 TraceCheckUtils]: 36: Hoare triple {4746#false} havoc ~x~0;havoc ~y~0;~x~0 := 0; {4746#false} is VALID [2018-11-23 11:59:14,727 INFO L273 TraceCheckUtils]: 37: Hoare triple {4746#false} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {4746#false} is VALID [2018-11-23 11:59:14,728 INFO L273 TraceCheckUtils]: 38: Hoare triple {4746#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {4746#false} is VALID [2018-11-23 11:59:14,728 INFO L256 TraceCheckUtils]: 39: Hoare triple {4746#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {4745#true} is VALID [2018-11-23 11:59:14,728 INFO L273 TraceCheckUtils]: 40: Hoare triple {4745#true} ~cond := #in~cond; {4745#true} is VALID [2018-11-23 11:59:14,728 INFO L273 TraceCheckUtils]: 41: Hoare triple {4745#true} assume !(0 == ~cond); {4745#true} is VALID [2018-11-23 11:59:14,728 INFO L273 TraceCheckUtils]: 42: Hoare triple {4745#true} assume true; {4745#true} is VALID [2018-11-23 11:59:14,728 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {4745#true} {4746#false} #83#return; {4746#false} is VALID [2018-11-23 11:59:14,728 INFO L273 TraceCheckUtils]: 44: Hoare triple {4746#false} havoc #t~mem6;havoc #t~mem7; {4746#false} is VALID [2018-11-23 11:59:14,728 INFO L273 TraceCheckUtils]: 45: Hoare triple {4746#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {4746#false} is VALID [2018-11-23 11:59:14,729 INFO L273 TraceCheckUtils]: 46: Hoare triple {4746#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {4746#false} is VALID [2018-11-23 11:59:14,729 INFO L256 TraceCheckUtils]: 47: Hoare triple {4746#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {4745#true} is VALID [2018-11-23 11:59:14,729 INFO L273 TraceCheckUtils]: 48: Hoare triple {4745#true} ~cond := #in~cond; {4745#true} is VALID [2018-11-23 11:59:14,729 INFO L273 TraceCheckUtils]: 49: Hoare triple {4745#true} assume !(0 == ~cond); {4745#true} is VALID [2018-11-23 11:59:14,729 INFO L273 TraceCheckUtils]: 50: Hoare triple {4745#true} assume true; {4745#true} is VALID [2018-11-23 11:59:14,729 INFO L268 TraceCheckUtils]: 51: Hoare quadruple {4745#true} {4746#false} #83#return; {4746#false} is VALID [2018-11-23 11:59:14,729 INFO L273 TraceCheckUtils]: 52: Hoare triple {4746#false} havoc #t~mem6;havoc #t~mem7; {4746#false} is VALID [2018-11-23 11:59:14,729 INFO L273 TraceCheckUtils]: 53: Hoare triple {4746#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {4746#false} is VALID [2018-11-23 11:59:14,730 INFO L273 TraceCheckUtils]: 54: Hoare triple {4746#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {4746#false} is VALID [2018-11-23 11:59:14,730 INFO L256 TraceCheckUtils]: 55: Hoare triple {4746#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {4746#false} is VALID [2018-11-23 11:59:14,730 INFO L273 TraceCheckUtils]: 56: Hoare triple {4746#false} ~cond := #in~cond; {4746#false} is VALID [2018-11-23 11:59:14,730 INFO L273 TraceCheckUtils]: 57: Hoare triple {4746#false} assume 0 == ~cond; {4746#false} is VALID [2018-11-23 11:59:14,730 INFO L273 TraceCheckUtils]: 58: Hoare triple {4746#false} assume !false; {4746#false} is VALID [2018-11-23 11:59:14,732 INFO L134 CoverageAnalysis]: Checked inductivity of 134 backedges. 5 proven. 117 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2018-11-23 11:59:14,732 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 11:59:14,732 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 11:59:14,741 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 11:59:14,793 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 9 check-sat command(s) [2018-11-23 11:59:14,793 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 11:59:14,825 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:59:14,828 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 11:59:15,824 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 37 treesize of output 25 [2018-11-23 11:59:15,838 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 13 [2018-11-23 11:59:15,894 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 11:59:15,896 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 11:59:15,897 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 11:59:15,897 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:37, output treesize:3 [2018-11-23 11:59:15,900 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 11:59:15,901 WARN L384 uantifierElimination]: Input elimination task: ∃ [|#memory_int|, |main_~#a~0.base|]. (let ((.cse3 (select |#memory_int| |main_~#a~0.base|))) (let ((.cse1 (select .cse3 8)) (.cse2 (select .cse3 12)) (.cse0 (select .cse3 0))) (and (<= .cse0 .cse1) (<= .cse1 .cse2) (<= .cse2 |main_#t~mem7|) (<= |main_#t~mem6| .cse0)))) [2018-11-23 11:59:15,901 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (<= |main_#t~mem6| |main_#t~mem7|) [2018-11-23 11:59:15,968 INFO L256 TraceCheckUtils]: 0: Hoare triple {4745#true} call ULTIMATE.init(); {4745#true} is VALID [2018-11-23 11:59:15,969 INFO L273 TraceCheckUtils]: 1: Hoare triple {4745#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {4745#true} is VALID [2018-11-23 11:59:15,969 INFO L273 TraceCheckUtils]: 2: Hoare triple {4745#true} assume true; {4745#true} is VALID [2018-11-23 11:59:15,969 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4745#true} {4745#true} #79#return; {4745#true} is VALID [2018-11-23 11:59:15,969 INFO L256 TraceCheckUtils]: 4: Hoare triple {4745#true} call #t~ret8 := main(); {4745#true} is VALID [2018-11-23 11:59:15,970 INFO L273 TraceCheckUtils]: 5: Hoare triple {4745#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {4775#(and (= 1 main_~swapped~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:15,970 INFO L273 TraceCheckUtils]: 6: Hoare triple {4775#(and (= 1 main_~swapped~0) (= |main_~#a~0.offset| 0))} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {4779#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:15,971 INFO L273 TraceCheckUtils]: 7: Hoare triple {4779#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4779#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:15,971 INFO L273 TraceCheckUtils]: 8: Hoare triple {4779#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4779#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:15,972 INFO L273 TraceCheckUtils]: 9: Hoare triple {4779#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {4789#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:15,972 INFO L273 TraceCheckUtils]: 10: Hoare triple {4789#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4789#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:15,973 INFO L273 TraceCheckUtils]: 11: Hoare triple {4789#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4789#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:15,973 INFO L273 TraceCheckUtils]: 12: Hoare triple {4789#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {4799#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:15,975 INFO L273 TraceCheckUtils]: 13: Hoare triple {4799#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4803#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) |main_#t~mem0|) (<= |main_#t~mem1| (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:15,976 INFO L273 TraceCheckUtils]: 14: Hoare triple {4803#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) |main_#t~mem0|) (<= |main_#t~mem1| (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:15,977 INFO L273 TraceCheckUtils]: 15: Hoare triple {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:15,977 INFO L273 TraceCheckUtils]: 16: Hoare triple {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:15,978 INFO L273 TraceCheckUtils]: 17: Hoare triple {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:15,979 INFO L273 TraceCheckUtils]: 18: Hoare triple {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:15,993 INFO L273 TraceCheckUtils]: 19: Hoare triple {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:15,993 INFO L273 TraceCheckUtils]: 20: Hoare triple {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:15,994 INFO L273 TraceCheckUtils]: 21: Hoare triple {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:15,994 INFO L273 TraceCheckUtils]: 22: Hoare triple {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:15,995 INFO L273 TraceCheckUtils]: 23: Hoare triple {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:15,995 INFO L273 TraceCheckUtils]: 24: Hoare triple {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:15,996 INFO L273 TraceCheckUtils]: 25: Hoare triple {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:15,996 INFO L273 TraceCheckUtils]: 26: Hoare triple {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:15,997 INFO L273 TraceCheckUtils]: 27: Hoare triple {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:15,998 INFO L273 TraceCheckUtils]: 28: Hoare triple {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:16,003 INFO L273 TraceCheckUtils]: 29: Hoare triple {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:16,004 INFO L273 TraceCheckUtils]: 30: Hoare triple {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:16,004 INFO L273 TraceCheckUtils]: 31: Hoare triple {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:16,005 INFO L273 TraceCheckUtils]: 32: Hoare triple {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:16,005 INFO L273 TraceCheckUtils]: 33: Hoare triple {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:16,006 INFO L273 TraceCheckUtils]: 34: Hoare triple {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < 100000); {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:16,006 INFO L273 TraceCheckUtils]: 35: Hoare triple {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} assume !(0 != ~swapped~0); {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:16,007 INFO L273 TraceCheckUtils]: 36: Hoare triple {4807#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} havoc ~x~0;havoc ~y~0;~x~0 := 0; {4874#(and (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:16,008 INFO L273 TraceCheckUtils]: 37: Hoare triple {4874#(and (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {4878#(and (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:16,009 INFO L273 TraceCheckUtils]: 38: Hoare triple {4878#(and (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {4878#(and (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:16,011 INFO L256 TraceCheckUtils]: 39: Hoare triple {4878#(and (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {4885#(exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 12)))} is VALID [2018-11-23 11:59:16,012 INFO L273 TraceCheckUtils]: 40: Hoare triple {4885#(exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 12)))} ~cond := #in~cond; {4885#(exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 12)))} is VALID [2018-11-23 11:59:16,013 INFO L273 TraceCheckUtils]: 41: Hoare triple {4885#(exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 12)))} assume !(0 == ~cond); {4885#(exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 12)))} is VALID [2018-11-23 11:59:16,013 INFO L273 TraceCheckUtils]: 42: Hoare triple {4885#(exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 12)))} assume true; {4885#(exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 12)))} is VALID [2018-11-23 11:59:16,015 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {4885#(exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 12)))} {4878#(and (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} #83#return; {4878#(and (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:16,016 INFO L273 TraceCheckUtils]: 44: Hoare triple {4878#(and (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} havoc #t~mem6;havoc #t~mem7; {4878#(and (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:16,018 INFO L273 TraceCheckUtils]: 45: Hoare triple {4878#(and (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {4904#(and (= (+ main_~x~0 2) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:16,020 INFO L273 TraceCheckUtils]: 46: Hoare triple {4904#(and (= (+ main_~x~0 2) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {4908#(and (= (+ main_~x~0 2) main_~y~0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) |main_#t~mem6|) (= main_~x~0 0) (<= |main_#t~mem7| (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~y~0) |main_~#a~0.offset|))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:16,022 INFO L256 TraceCheckUtils]: 47: Hoare triple {4908#(and (= (+ main_~x~0 2) main_~y~0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) |main_#t~mem6|) (= main_~x~0 0) (<= |main_#t~mem7| (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~y~0) |main_~#a~0.offset|))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {4885#(exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 12)))} is VALID [2018-11-23 11:59:16,022 INFO L273 TraceCheckUtils]: 48: Hoare triple {4885#(exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 12)))} ~cond := #in~cond; {4915#(and (exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 12))) (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond))} is VALID [2018-11-23 11:59:16,023 INFO L273 TraceCheckUtils]: 49: Hoare triple {4915#(and (exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 12))) (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond))} assume !(0 == ~cond); {4919#(and (not (= |__VERIFIER_assert_#in~cond| 0)) (exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 12))))} is VALID [2018-11-23 11:59:16,023 INFO L273 TraceCheckUtils]: 50: Hoare triple {4919#(and (not (= |__VERIFIER_assert_#in~cond| 0)) (exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 12))))} assume true; {4919#(and (not (= |__VERIFIER_assert_#in~cond| 0)) (exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 12))))} is VALID [2018-11-23 11:59:16,026 INFO L268 TraceCheckUtils]: 51: Hoare quadruple {4919#(and (not (= |__VERIFIER_assert_#in~cond| 0)) (exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 8) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 12))))} {4908#(and (= (+ main_~x~0 2) main_~y~0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) |main_#t~mem6|) (= main_~x~0 0) (<= |main_#t~mem7| (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~y~0) |main_~#a~0.offset|))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} #83#return; {4926#(and (= (+ main_~x~0 2) main_~y~0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~y~0) |main_~#a~0.offset|))) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:16,027 INFO L273 TraceCheckUtils]: 52: Hoare triple {4926#(and (= (+ main_~x~0 2) main_~y~0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~y~0) |main_~#a~0.offset|))) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} havoc #t~mem6;havoc #t~mem7; {4926#(and (= (+ main_~x~0 2) main_~y~0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~y~0) |main_~#a~0.offset|))) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:16,028 INFO L273 TraceCheckUtils]: 53: Hoare triple {4926#(and (= (+ main_~x~0 2) main_~y~0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~y~0) |main_~#a~0.offset|))) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= |main_~#a~0.offset| 0))} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {4933#(and (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset| 8))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= (+ main_~x~0 3) main_~y~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 11:59:16,029 INFO L273 TraceCheckUtils]: 54: Hoare triple {4933#(and (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset| 8))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12))) (= (+ main_~x~0 3) main_~y~0) (= |main_~#a~0.offset| 0))} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {4937#(<= |main_#t~mem6| |main_#t~mem7|)} is VALID [2018-11-23 11:59:16,030 INFO L256 TraceCheckUtils]: 55: Hoare triple {4937#(<= |main_#t~mem6| |main_#t~mem7|)} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {4941#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 11:59:16,030 INFO L273 TraceCheckUtils]: 56: Hoare triple {4941#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {4945#(= 1 __VERIFIER_assert_~cond)} is VALID [2018-11-23 11:59:16,031 INFO L273 TraceCheckUtils]: 57: Hoare triple {4945#(= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4746#false} is VALID [2018-11-23 11:59:16,031 INFO L273 TraceCheckUtils]: 58: Hoare triple {4746#false} assume !false; {4746#false} is VALID [2018-11-23 11:59:16,044 INFO L134 CoverageAnalysis]: Checked inductivity of 134 backedges. 3 proven. 73 refuted. 0 times theorem prover too weak. 58 trivial. 0 not checked. [2018-11-23 11:59:16,063 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 11:59:16,063 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 20] total 30 [2018-11-23 11:59:16,064 INFO L78 Accepts]: Start accepts. Automaton has 30 states. Word has length 59 [2018-11-23 11:59:16,064 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 11:59:16,064 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 30 states. [2018-11-23 11:59:16,163 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:59:16,164 INFO L459 AbstractCegarLoop]: Interpolant automaton has 30 states [2018-11-23 11:59:16,164 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 30 interpolants. [2018-11-23 11:59:16,165 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=151, Invalid=719, Unknown=0, NotChecked=0, Total=870 [2018-11-23 11:59:16,165 INFO L87 Difference]: Start difference. First operand 90 states and 111 transitions. Second operand 30 states. [2018-11-23 11:59:39,547 WARN L180 SmtUtils]: Spent 105.00 ms on a formula simplification that was a NOOP. DAG size: 10 [2018-11-23 12:00:10,284 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:00:10,285 INFO L93 Difference]: Finished difference Result 239 states and 306 transitions. [2018-11-23 12:00:10,285 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 58 states. [2018-11-23 12:00:10,285 INFO L78 Accepts]: Start accepts. Automaton has 30 states. Word has length 59 [2018-11-23 12:00:10,285 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:00:10,285 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 30 states. [2018-11-23 12:00:10,289 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 58 states to 58 states and 216 transitions. [2018-11-23 12:00:10,289 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 30 states. [2018-11-23 12:00:10,292 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 58 states to 58 states and 216 transitions. [2018-11-23 12:00:10,292 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 58 states and 216 transitions. [2018-11-23 12:00:11,311 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 216 edges. 216 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:00:11,315 INFO L225 Difference]: With dead ends: 239 [2018-11-23 12:00:11,315 INFO L226 Difference]: Without dead ends: 155 [2018-11-23 12:00:11,318 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 113 GetRequests, 40 SyntacticMatches, 2 SemanticMatches, 71 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1578 ImplicationChecksByTransitivity, 2.5s TimeCoverageRelationStatistics Valid=850, Invalid=4406, Unknown=0, NotChecked=0, Total=5256 [2018-11-23 12:00:11,318 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 155 states. [2018-11-23 12:00:11,495 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 155 to 104. [2018-11-23 12:00:11,495 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:00:11,495 INFO L82 GeneralOperation]: Start isEquivalent. First operand 155 states. Second operand 104 states. [2018-11-23 12:00:11,496 INFO L74 IsIncluded]: Start isIncluded. First operand 155 states. Second operand 104 states. [2018-11-23 12:00:11,496 INFO L87 Difference]: Start difference. First operand 155 states. Second operand 104 states. [2018-11-23 12:00:11,500 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:00:11,500 INFO L93 Difference]: Finished difference Result 155 states and 196 transitions. [2018-11-23 12:00:11,500 INFO L276 IsEmpty]: Start isEmpty. Operand 155 states and 196 transitions. [2018-11-23 12:00:11,501 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:00:11,501 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:00:11,501 INFO L74 IsIncluded]: Start isIncluded. First operand 104 states. Second operand 155 states. [2018-11-23 12:00:11,501 INFO L87 Difference]: Start difference. First operand 104 states. Second operand 155 states. [2018-11-23 12:00:11,505 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:00:11,505 INFO L93 Difference]: Finished difference Result 155 states and 196 transitions. [2018-11-23 12:00:11,505 INFO L276 IsEmpty]: Start isEmpty. Operand 155 states and 196 transitions. [2018-11-23 12:00:11,506 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:00:11,506 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:00:11,506 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:00:11,506 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:00:11,506 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 104 states. [2018-11-23 12:00:11,509 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 104 states to 104 states and 127 transitions. [2018-11-23 12:00:11,509 INFO L78 Accepts]: Start accepts. Automaton has 104 states and 127 transitions. Word has length 59 [2018-11-23 12:00:11,509 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:00:11,509 INFO L480 AbstractCegarLoop]: Abstraction has 104 states and 127 transitions. [2018-11-23 12:00:11,510 INFO L481 AbstractCegarLoop]: Interpolant automaton has 30 states. [2018-11-23 12:00:11,510 INFO L276 IsEmpty]: Start isEmpty. Operand 104 states and 127 transitions. [2018-11-23 12:00:11,510 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 71 [2018-11-23 12:00:11,511 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:00:11,511 INFO L402 BasicCegarLoop]: trace histogram [10, 10, 10, 4, 4, 4, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:00:11,511 INFO L423 AbstractCegarLoop]: === Iteration 13 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:00:11,511 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:00:11,511 INFO L82 PathProgramCache]: Analyzing trace with hash 344943370, now seen corresponding path program 7 times [2018-11-23 12:00:11,511 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:00:11,512 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:00:11,512 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:00:11,513 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:00:11,513 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:00:11,550 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:00:12,021 INFO L256 TraceCheckUtils]: 0: Hoare triple {5820#true} call ULTIMATE.init(); {5820#true} is VALID [2018-11-23 12:00:12,022 INFO L273 TraceCheckUtils]: 1: Hoare triple {5820#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {5820#true} is VALID [2018-11-23 12:00:12,022 INFO L273 TraceCheckUtils]: 2: Hoare triple {5820#true} assume true; {5820#true} is VALID [2018-11-23 12:00:12,022 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5820#true} {5820#true} #79#return; {5820#true} is VALID [2018-11-23 12:00:12,022 INFO L256 TraceCheckUtils]: 4: Hoare triple {5820#true} call #t~ret8 := main(); {5820#true} is VALID [2018-11-23 12:00:12,022 INFO L273 TraceCheckUtils]: 5: Hoare triple {5820#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {5820#true} is VALID [2018-11-23 12:00:12,023 INFO L273 TraceCheckUtils]: 6: Hoare triple {5820#true} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {5822#(= main_~i~0 1)} is VALID [2018-11-23 12:00:12,023 INFO L273 TraceCheckUtils]: 7: Hoare triple {5822#(= main_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5822#(= main_~i~0 1)} is VALID [2018-11-23 12:00:12,023 INFO L273 TraceCheckUtils]: 8: Hoare triple {5822#(= main_~i~0 1)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {5822#(= main_~i~0 1)} is VALID [2018-11-23 12:00:12,024 INFO L273 TraceCheckUtils]: 9: Hoare triple {5822#(= main_~i~0 1)} ~i~0 := 1 + ~i~0; {5823#(<= main_~i~0 2)} is VALID [2018-11-23 12:00:12,024 INFO L273 TraceCheckUtils]: 10: Hoare triple {5823#(<= main_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5823#(<= main_~i~0 2)} is VALID [2018-11-23 12:00:12,025 INFO L273 TraceCheckUtils]: 11: Hoare triple {5823#(<= main_~i~0 2)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {5823#(<= main_~i~0 2)} is VALID [2018-11-23 12:00:12,026 INFO L273 TraceCheckUtils]: 12: Hoare triple {5823#(<= main_~i~0 2)} ~i~0 := 1 + ~i~0; {5824#(<= main_~i~0 3)} is VALID [2018-11-23 12:00:12,026 INFO L273 TraceCheckUtils]: 13: Hoare triple {5824#(<= main_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5824#(<= main_~i~0 3)} is VALID [2018-11-23 12:00:12,027 INFO L273 TraceCheckUtils]: 14: Hoare triple {5824#(<= main_~i~0 3)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {5824#(<= main_~i~0 3)} is VALID [2018-11-23 12:00:12,028 INFO L273 TraceCheckUtils]: 15: Hoare triple {5824#(<= main_~i~0 3)} ~i~0 := 1 + ~i~0; {5825#(<= main_~i~0 4)} is VALID [2018-11-23 12:00:12,028 INFO L273 TraceCheckUtils]: 16: Hoare triple {5825#(<= main_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5825#(<= main_~i~0 4)} is VALID [2018-11-23 12:00:12,029 INFO L273 TraceCheckUtils]: 17: Hoare triple {5825#(<= main_~i~0 4)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {5825#(<= main_~i~0 4)} is VALID [2018-11-23 12:00:12,029 INFO L273 TraceCheckUtils]: 18: Hoare triple {5825#(<= main_~i~0 4)} ~i~0 := 1 + ~i~0; {5826#(<= main_~i~0 5)} is VALID [2018-11-23 12:00:12,030 INFO L273 TraceCheckUtils]: 19: Hoare triple {5826#(<= main_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5826#(<= main_~i~0 5)} is VALID [2018-11-23 12:00:12,030 INFO L273 TraceCheckUtils]: 20: Hoare triple {5826#(<= main_~i~0 5)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {5826#(<= main_~i~0 5)} is VALID [2018-11-23 12:00:12,031 INFO L273 TraceCheckUtils]: 21: Hoare triple {5826#(<= main_~i~0 5)} ~i~0 := 1 + ~i~0; {5827#(<= main_~i~0 6)} is VALID [2018-11-23 12:00:12,032 INFO L273 TraceCheckUtils]: 22: Hoare triple {5827#(<= main_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5827#(<= main_~i~0 6)} is VALID [2018-11-23 12:00:12,032 INFO L273 TraceCheckUtils]: 23: Hoare triple {5827#(<= main_~i~0 6)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {5827#(<= main_~i~0 6)} is VALID [2018-11-23 12:00:12,033 INFO L273 TraceCheckUtils]: 24: Hoare triple {5827#(<= main_~i~0 6)} ~i~0 := 1 + ~i~0; {5828#(<= main_~i~0 7)} is VALID [2018-11-23 12:00:12,034 INFO L273 TraceCheckUtils]: 25: Hoare triple {5828#(<= main_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5828#(<= main_~i~0 7)} is VALID [2018-11-23 12:00:12,034 INFO L273 TraceCheckUtils]: 26: Hoare triple {5828#(<= main_~i~0 7)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {5828#(<= main_~i~0 7)} is VALID [2018-11-23 12:00:12,035 INFO L273 TraceCheckUtils]: 27: Hoare triple {5828#(<= main_~i~0 7)} ~i~0 := 1 + ~i~0; {5829#(<= main_~i~0 8)} is VALID [2018-11-23 12:00:12,036 INFO L273 TraceCheckUtils]: 28: Hoare triple {5829#(<= main_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5829#(<= main_~i~0 8)} is VALID [2018-11-23 12:00:12,036 INFO L273 TraceCheckUtils]: 29: Hoare triple {5829#(<= main_~i~0 8)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {5829#(<= main_~i~0 8)} is VALID [2018-11-23 12:00:12,037 INFO L273 TraceCheckUtils]: 30: Hoare triple {5829#(<= main_~i~0 8)} ~i~0 := 1 + ~i~0; {5830#(<= main_~i~0 9)} is VALID [2018-11-23 12:00:12,037 INFO L273 TraceCheckUtils]: 31: Hoare triple {5830#(<= main_~i~0 9)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5830#(<= main_~i~0 9)} is VALID [2018-11-23 12:00:12,056 INFO L273 TraceCheckUtils]: 32: Hoare triple {5830#(<= main_~i~0 9)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {5830#(<= main_~i~0 9)} is VALID [2018-11-23 12:00:12,065 INFO L273 TraceCheckUtils]: 33: Hoare triple {5830#(<= main_~i~0 9)} ~i~0 := 1 + ~i~0; {5831#(<= main_~i~0 10)} is VALID [2018-11-23 12:00:12,077 INFO L273 TraceCheckUtils]: 34: Hoare triple {5831#(<= main_~i~0 10)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5831#(<= main_~i~0 10)} is VALID [2018-11-23 12:00:12,091 INFO L273 TraceCheckUtils]: 35: Hoare triple {5831#(<= main_~i~0 10)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {5831#(<= main_~i~0 10)} is VALID [2018-11-23 12:00:12,100 INFO L273 TraceCheckUtils]: 36: Hoare triple {5831#(<= main_~i~0 10)} ~i~0 := 1 + ~i~0; {5832#(<= main_~i~0 11)} is VALID [2018-11-23 12:00:12,114 INFO L273 TraceCheckUtils]: 37: Hoare triple {5832#(<= main_~i~0 11)} assume !(~i~0 < 100000); {5821#false} is VALID [2018-11-23 12:00:12,114 INFO L273 TraceCheckUtils]: 38: Hoare triple {5821#false} assume !(0 != ~swapped~0); {5821#false} is VALID [2018-11-23 12:00:12,114 INFO L273 TraceCheckUtils]: 39: Hoare triple {5821#false} havoc ~x~0;havoc ~y~0;~x~0 := 0; {5821#false} is VALID [2018-11-23 12:00:12,115 INFO L273 TraceCheckUtils]: 40: Hoare triple {5821#false} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {5821#false} is VALID [2018-11-23 12:00:12,115 INFO L273 TraceCheckUtils]: 41: Hoare triple {5821#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {5821#false} is VALID [2018-11-23 12:00:12,115 INFO L256 TraceCheckUtils]: 42: Hoare triple {5821#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {5820#true} is VALID [2018-11-23 12:00:12,115 INFO L273 TraceCheckUtils]: 43: Hoare triple {5820#true} ~cond := #in~cond; {5820#true} is VALID [2018-11-23 12:00:12,115 INFO L273 TraceCheckUtils]: 44: Hoare triple {5820#true} assume !(0 == ~cond); {5820#true} is VALID [2018-11-23 12:00:12,115 INFO L273 TraceCheckUtils]: 45: Hoare triple {5820#true} assume true; {5820#true} is VALID [2018-11-23 12:00:12,116 INFO L268 TraceCheckUtils]: 46: Hoare quadruple {5820#true} {5821#false} #83#return; {5821#false} is VALID [2018-11-23 12:00:12,116 INFO L273 TraceCheckUtils]: 47: Hoare triple {5821#false} havoc #t~mem6;havoc #t~mem7; {5821#false} is VALID [2018-11-23 12:00:12,116 INFO L273 TraceCheckUtils]: 48: Hoare triple {5821#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {5821#false} is VALID [2018-11-23 12:00:12,116 INFO L273 TraceCheckUtils]: 49: Hoare triple {5821#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {5821#false} is VALID [2018-11-23 12:00:12,116 INFO L256 TraceCheckUtils]: 50: Hoare triple {5821#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {5820#true} is VALID [2018-11-23 12:00:12,116 INFO L273 TraceCheckUtils]: 51: Hoare triple {5820#true} ~cond := #in~cond; {5820#true} is VALID [2018-11-23 12:00:12,117 INFO L273 TraceCheckUtils]: 52: Hoare triple {5820#true} assume !(0 == ~cond); {5820#true} is VALID [2018-11-23 12:00:12,117 INFO L273 TraceCheckUtils]: 53: Hoare triple {5820#true} assume true; {5820#true} is VALID [2018-11-23 12:00:12,117 INFO L268 TraceCheckUtils]: 54: Hoare quadruple {5820#true} {5821#false} #83#return; {5821#false} is VALID [2018-11-23 12:00:12,117 INFO L273 TraceCheckUtils]: 55: Hoare triple {5821#false} havoc #t~mem6;havoc #t~mem7; {5821#false} is VALID [2018-11-23 12:00:12,117 INFO L273 TraceCheckUtils]: 56: Hoare triple {5821#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {5821#false} is VALID [2018-11-23 12:00:12,117 INFO L273 TraceCheckUtils]: 57: Hoare triple {5821#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {5821#false} is VALID [2018-11-23 12:00:12,118 INFO L256 TraceCheckUtils]: 58: Hoare triple {5821#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {5820#true} is VALID [2018-11-23 12:00:12,118 INFO L273 TraceCheckUtils]: 59: Hoare triple {5820#true} ~cond := #in~cond; {5820#true} is VALID [2018-11-23 12:00:12,118 INFO L273 TraceCheckUtils]: 60: Hoare triple {5820#true} assume !(0 == ~cond); {5820#true} is VALID [2018-11-23 12:00:12,118 INFO L273 TraceCheckUtils]: 61: Hoare triple {5820#true} assume true; {5820#true} is VALID [2018-11-23 12:00:12,118 INFO L268 TraceCheckUtils]: 62: Hoare quadruple {5820#true} {5821#false} #83#return; {5821#false} is VALID [2018-11-23 12:00:12,118 INFO L273 TraceCheckUtils]: 63: Hoare triple {5821#false} havoc #t~mem6;havoc #t~mem7; {5821#false} is VALID [2018-11-23 12:00:12,119 INFO L273 TraceCheckUtils]: 64: Hoare triple {5821#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {5821#false} is VALID [2018-11-23 12:00:12,119 INFO L273 TraceCheckUtils]: 65: Hoare triple {5821#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {5821#false} is VALID [2018-11-23 12:00:12,119 INFO L256 TraceCheckUtils]: 66: Hoare triple {5821#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {5821#false} is VALID [2018-11-23 12:00:12,119 INFO L273 TraceCheckUtils]: 67: Hoare triple {5821#false} ~cond := #in~cond; {5821#false} is VALID [2018-11-23 12:00:12,119 INFO L273 TraceCheckUtils]: 68: Hoare triple {5821#false} assume 0 == ~cond; {5821#false} is VALID [2018-11-23 12:00:12,119 INFO L273 TraceCheckUtils]: 69: Hoare triple {5821#false} assume !false; {5821#false} is VALID [2018-11-23 12:00:12,124 INFO L134 CoverageAnalysis]: Checked inductivity of 182 backedges. 7 proven. 145 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2018-11-23 12:00:12,124 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:00:12,124 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:00:12,141 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:00:12,177 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:00:12,195 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:00:12,197 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:00:12,347 INFO L256 TraceCheckUtils]: 0: Hoare triple {5820#true} call ULTIMATE.init(); {5820#true} is VALID [2018-11-23 12:00:12,347 INFO L273 TraceCheckUtils]: 1: Hoare triple {5820#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {5820#true} is VALID [2018-11-23 12:00:12,348 INFO L273 TraceCheckUtils]: 2: Hoare triple {5820#true} assume true; {5820#true} is VALID [2018-11-23 12:00:12,348 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5820#true} {5820#true} #79#return; {5820#true} is VALID [2018-11-23 12:00:12,348 INFO L256 TraceCheckUtils]: 4: Hoare triple {5820#true} call #t~ret8 := main(); {5820#true} is VALID [2018-11-23 12:00:12,348 INFO L273 TraceCheckUtils]: 5: Hoare triple {5820#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {5820#true} is VALID [2018-11-23 12:00:12,349 INFO L273 TraceCheckUtils]: 6: Hoare triple {5820#true} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {5854#(<= main_~i~0 1)} is VALID [2018-11-23 12:00:12,349 INFO L273 TraceCheckUtils]: 7: Hoare triple {5854#(<= main_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5854#(<= main_~i~0 1)} is VALID [2018-11-23 12:00:12,349 INFO L273 TraceCheckUtils]: 8: Hoare triple {5854#(<= main_~i~0 1)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {5854#(<= main_~i~0 1)} is VALID [2018-11-23 12:00:12,350 INFO L273 TraceCheckUtils]: 9: Hoare triple {5854#(<= main_~i~0 1)} ~i~0 := 1 + ~i~0; {5823#(<= main_~i~0 2)} is VALID [2018-11-23 12:00:12,350 INFO L273 TraceCheckUtils]: 10: Hoare triple {5823#(<= main_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5823#(<= main_~i~0 2)} is VALID [2018-11-23 12:00:12,351 INFO L273 TraceCheckUtils]: 11: Hoare triple {5823#(<= main_~i~0 2)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {5823#(<= main_~i~0 2)} is VALID [2018-11-23 12:00:12,351 INFO L273 TraceCheckUtils]: 12: Hoare triple {5823#(<= main_~i~0 2)} ~i~0 := 1 + ~i~0; {5824#(<= main_~i~0 3)} is VALID [2018-11-23 12:00:12,351 INFO L273 TraceCheckUtils]: 13: Hoare triple {5824#(<= main_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5824#(<= main_~i~0 3)} is VALID [2018-11-23 12:00:12,352 INFO L273 TraceCheckUtils]: 14: Hoare triple {5824#(<= main_~i~0 3)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {5824#(<= main_~i~0 3)} is VALID [2018-11-23 12:00:12,353 INFO L273 TraceCheckUtils]: 15: Hoare triple {5824#(<= main_~i~0 3)} ~i~0 := 1 + ~i~0; {5825#(<= main_~i~0 4)} is VALID [2018-11-23 12:00:12,353 INFO L273 TraceCheckUtils]: 16: Hoare triple {5825#(<= main_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5825#(<= main_~i~0 4)} is VALID [2018-11-23 12:00:12,354 INFO L273 TraceCheckUtils]: 17: Hoare triple {5825#(<= main_~i~0 4)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {5825#(<= main_~i~0 4)} is VALID [2018-11-23 12:00:12,354 INFO L273 TraceCheckUtils]: 18: Hoare triple {5825#(<= main_~i~0 4)} ~i~0 := 1 + ~i~0; {5826#(<= main_~i~0 5)} is VALID [2018-11-23 12:00:12,355 INFO L273 TraceCheckUtils]: 19: Hoare triple {5826#(<= main_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5826#(<= main_~i~0 5)} is VALID [2018-11-23 12:00:12,355 INFO L273 TraceCheckUtils]: 20: Hoare triple {5826#(<= main_~i~0 5)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {5826#(<= main_~i~0 5)} is VALID [2018-11-23 12:00:12,356 INFO L273 TraceCheckUtils]: 21: Hoare triple {5826#(<= main_~i~0 5)} ~i~0 := 1 + ~i~0; {5827#(<= main_~i~0 6)} is VALID [2018-11-23 12:00:12,357 INFO L273 TraceCheckUtils]: 22: Hoare triple {5827#(<= main_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5827#(<= main_~i~0 6)} is VALID [2018-11-23 12:00:12,357 INFO L273 TraceCheckUtils]: 23: Hoare triple {5827#(<= main_~i~0 6)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {5827#(<= main_~i~0 6)} is VALID [2018-11-23 12:00:12,358 INFO L273 TraceCheckUtils]: 24: Hoare triple {5827#(<= main_~i~0 6)} ~i~0 := 1 + ~i~0; {5828#(<= main_~i~0 7)} is VALID [2018-11-23 12:00:12,359 INFO L273 TraceCheckUtils]: 25: Hoare triple {5828#(<= main_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5828#(<= main_~i~0 7)} is VALID [2018-11-23 12:00:12,359 INFO L273 TraceCheckUtils]: 26: Hoare triple {5828#(<= main_~i~0 7)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {5828#(<= main_~i~0 7)} is VALID [2018-11-23 12:00:12,360 INFO L273 TraceCheckUtils]: 27: Hoare triple {5828#(<= main_~i~0 7)} ~i~0 := 1 + ~i~0; {5829#(<= main_~i~0 8)} is VALID [2018-11-23 12:00:12,360 INFO L273 TraceCheckUtils]: 28: Hoare triple {5829#(<= main_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5829#(<= main_~i~0 8)} is VALID [2018-11-23 12:00:12,361 INFO L273 TraceCheckUtils]: 29: Hoare triple {5829#(<= main_~i~0 8)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {5829#(<= main_~i~0 8)} is VALID [2018-11-23 12:00:12,362 INFO L273 TraceCheckUtils]: 30: Hoare triple {5829#(<= main_~i~0 8)} ~i~0 := 1 + ~i~0; {5830#(<= main_~i~0 9)} is VALID [2018-11-23 12:00:12,362 INFO L273 TraceCheckUtils]: 31: Hoare triple {5830#(<= main_~i~0 9)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5830#(<= main_~i~0 9)} is VALID [2018-11-23 12:00:12,363 INFO L273 TraceCheckUtils]: 32: Hoare triple {5830#(<= main_~i~0 9)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {5830#(<= main_~i~0 9)} is VALID [2018-11-23 12:00:12,364 INFO L273 TraceCheckUtils]: 33: Hoare triple {5830#(<= main_~i~0 9)} ~i~0 := 1 + ~i~0; {5831#(<= main_~i~0 10)} is VALID [2018-11-23 12:00:12,364 INFO L273 TraceCheckUtils]: 34: Hoare triple {5831#(<= main_~i~0 10)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {5831#(<= main_~i~0 10)} is VALID [2018-11-23 12:00:12,365 INFO L273 TraceCheckUtils]: 35: Hoare triple {5831#(<= main_~i~0 10)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {5831#(<= main_~i~0 10)} is VALID [2018-11-23 12:00:12,365 INFO L273 TraceCheckUtils]: 36: Hoare triple {5831#(<= main_~i~0 10)} ~i~0 := 1 + ~i~0; {5832#(<= main_~i~0 11)} is VALID [2018-11-23 12:00:12,366 INFO L273 TraceCheckUtils]: 37: Hoare triple {5832#(<= main_~i~0 11)} assume !(~i~0 < 100000); {5821#false} is VALID [2018-11-23 12:00:12,366 INFO L273 TraceCheckUtils]: 38: Hoare triple {5821#false} assume !(0 != ~swapped~0); {5821#false} is VALID [2018-11-23 12:00:12,367 INFO L273 TraceCheckUtils]: 39: Hoare triple {5821#false} havoc ~x~0;havoc ~y~0;~x~0 := 0; {5821#false} is VALID [2018-11-23 12:00:12,367 INFO L273 TraceCheckUtils]: 40: Hoare triple {5821#false} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {5821#false} is VALID [2018-11-23 12:00:12,367 INFO L273 TraceCheckUtils]: 41: Hoare triple {5821#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {5821#false} is VALID [2018-11-23 12:00:12,367 INFO L256 TraceCheckUtils]: 42: Hoare triple {5821#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {5821#false} is VALID [2018-11-23 12:00:12,367 INFO L273 TraceCheckUtils]: 43: Hoare triple {5821#false} ~cond := #in~cond; {5821#false} is VALID [2018-11-23 12:00:12,368 INFO L273 TraceCheckUtils]: 44: Hoare triple {5821#false} assume !(0 == ~cond); {5821#false} is VALID [2018-11-23 12:00:12,368 INFO L273 TraceCheckUtils]: 45: Hoare triple {5821#false} assume true; {5821#false} is VALID [2018-11-23 12:00:12,368 INFO L268 TraceCheckUtils]: 46: Hoare quadruple {5821#false} {5821#false} #83#return; {5821#false} is VALID [2018-11-23 12:00:12,368 INFO L273 TraceCheckUtils]: 47: Hoare triple {5821#false} havoc #t~mem6;havoc #t~mem7; {5821#false} is VALID [2018-11-23 12:00:12,368 INFO L273 TraceCheckUtils]: 48: Hoare triple {5821#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {5821#false} is VALID [2018-11-23 12:00:12,369 INFO L273 TraceCheckUtils]: 49: Hoare triple {5821#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {5821#false} is VALID [2018-11-23 12:00:12,369 INFO L256 TraceCheckUtils]: 50: Hoare triple {5821#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {5821#false} is VALID [2018-11-23 12:00:12,369 INFO L273 TraceCheckUtils]: 51: Hoare triple {5821#false} ~cond := #in~cond; {5821#false} is VALID [2018-11-23 12:00:12,369 INFO L273 TraceCheckUtils]: 52: Hoare triple {5821#false} assume !(0 == ~cond); {5821#false} is VALID [2018-11-23 12:00:12,369 INFO L273 TraceCheckUtils]: 53: Hoare triple {5821#false} assume true; {5821#false} is VALID [2018-11-23 12:00:12,370 INFO L268 TraceCheckUtils]: 54: Hoare quadruple {5821#false} {5821#false} #83#return; {5821#false} is VALID [2018-11-23 12:00:12,370 INFO L273 TraceCheckUtils]: 55: Hoare triple {5821#false} havoc #t~mem6;havoc #t~mem7; {5821#false} is VALID [2018-11-23 12:00:12,370 INFO L273 TraceCheckUtils]: 56: Hoare triple {5821#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {5821#false} is VALID [2018-11-23 12:00:12,370 INFO L273 TraceCheckUtils]: 57: Hoare triple {5821#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {5821#false} is VALID [2018-11-23 12:00:12,370 INFO L256 TraceCheckUtils]: 58: Hoare triple {5821#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {5821#false} is VALID [2018-11-23 12:00:12,371 INFO L273 TraceCheckUtils]: 59: Hoare triple {5821#false} ~cond := #in~cond; {5821#false} is VALID [2018-11-23 12:00:12,371 INFO L273 TraceCheckUtils]: 60: Hoare triple {5821#false} assume !(0 == ~cond); {5821#false} is VALID [2018-11-23 12:00:12,371 INFO L273 TraceCheckUtils]: 61: Hoare triple {5821#false} assume true; {5821#false} is VALID [2018-11-23 12:00:12,371 INFO L268 TraceCheckUtils]: 62: Hoare quadruple {5821#false} {5821#false} #83#return; {5821#false} is VALID [2018-11-23 12:00:12,372 INFO L273 TraceCheckUtils]: 63: Hoare triple {5821#false} havoc #t~mem6;havoc #t~mem7; {5821#false} is VALID [2018-11-23 12:00:12,372 INFO L273 TraceCheckUtils]: 64: Hoare triple {5821#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {5821#false} is VALID [2018-11-23 12:00:12,372 INFO L273 TraceCheckUtils]: 65: Hoare triple {5821#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {5821#false} is VALID [2018-11-23 12:00:12,372 INFO L256 TraceCheckUtils]: 66: Hoare triple {5821#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {5821#false} is VALID [2018-11-23 12:00:12,372 INFO L273 TraceCheckUtils]: 67: Hoare triple {5821#false} ~cond := #in~cond; {5821#false} is VALID [2018-11-23 12:00:12,372 INFO L273 TraceCheckUtils]: 68: Hoare triple {5821#false} assume 0 == ~cond; {5821#false} is VALID [2018-11-23 12:00:12,372 INFO L273 TraceCheckUtils]: 69: Hoare triple {5821#false} assume !false; {5821#false} is VALID [2018-11-23 12:00:12,376 INFO L134 CoverageAnalysis]: Checked inductivity of 182 backedges. 1 proven. 145 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2018-11-23 12:00:12,395 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:00:12,395 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 14 [2018-11-23 12:00:12,396 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 70 [2018-11-23 12:00:12,396 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:00:12,396 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states. [2018-11-23 12:00:12,461 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:00:12,462 INFO L459 AbstractCegarLoop]: Interpolant automaton has 14 states [2018-11-23 12:00:12,462 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2018-11-23 12:00:12,462 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=91, Invalid=91, Unknown=0, NotChecked=0, Total=182 [2018-11-23 12:00:12,462 INFO L87 Difference]: Start difference. First operand 104 states and 127 transitions. Second operand 14 states. [2018-11-23 12:00:13,056 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:00:13,056 INFO L93 Difference]: Finished difference Result 212 states and 264 transitions. [2018-11-23 12:00:13,056 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2018-11-23 12:00:13,056 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 70 [2018-11-23 12:00:13,057 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:00:13,057 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-23 12:00:13,058 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 93 transitions. [2018-11-23 12:00:13,058 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-23 12:00:13,060 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 93 transitions. [2018-11-23 12:00:13,060 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 93 transitions. [2018-11-23 12:00:13,483 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:00:13,485 INFO L225 Difference]: With dead ends: 212 [2018-11-23 12:00:13,485 INFO L226 Difference]: Without dead ends: 114 [2018-11-23 12:00:13,486 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 82 GetRequests, 70 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 18 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=91, Invalid=91, Unknown=0, NotChecked=0, Total=182 [2018-11-23 12:00:13,486 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 114 states. [2018-11-23 12:00:13,780 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 114 to 110. [2018-11-23 12:00:13,780 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:00:13,780 INFO L82 GeneralOperation]: Start isEquivalent. First operand 114 states. Second operand 110 states. [2018-11-23 12:00:13,780 INFO L74 IsIncluded]: Start isIncluded. First operand 114 states. Second operand 110 states. [2018-11-23 12:00:13,781 INFO L87 Difference]: Start difference. First operand 114 states. Second operand 110 states. [2018-11-23 12:00:13,783 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:00:13,783 INFO L93 Difference]: Finished difference Result 114 states and 141 transitions. [2018-11-23 12:00:13,783 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 141 transitions. [2018-11-23 12:00:13,783 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:00:13,783 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:00:13,783 INFO L74 IsIncluded]: Start isIncluded. First operand 110 states. Second operand 114 states. [2018-11-23 12:00:13,783 INFO L87 Difference]: Start difference. First operand 110 states. Second operand 114 states. [2018-11-23 12:00:13,786 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:00:13,786 INFO L93 Difference]: Finished difference Result 114 states and 141 transitions. [2018-11-23 12:00:13,786 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 141 transitions. [2018-11-23 12:00:13,786 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:00:13,787 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:00:13,787 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:00:13,787 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:00:13,787 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 110 states. [2018-11-23 12:00:13,789 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 110 states to 110 states and 135 transitions. [2018-11-23 12:00:13,790 INFO L78 Accepts]: Start accepts. Automaton has 110 states and 135 transitions. Word has length 70 [2018-11-23 12:00:13,790 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:00:13,790 INFO L480 AbstractCegarLoop]: Abstraction has 110 states and 135 transitions. [2018-11-23 12:00:13,790 INFO L481 AbstractCegarLoop]: Interpolant automaton has 14 states. [2018-11-23 12:00:13,790 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 135 transitions. [2018-11-23 12:00:13,791 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 74 [2018-11-23 12:00:13,791 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:00:13,791 INFO L402 BasicCegarLoop]: trace histogram [11, 11, 11, 4, 4, 4, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:00:13,792 INFO L423 AbstractCegarLoop]: === Iteration 14 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:00:13,792 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:00:13,792 INFO L82 PathProgramCache]: Analyzing trace with hash 1514421249, now seen corresponding path program 8 times [2018-11-23 12:00:13,792 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:00:13,792 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:00:13,793 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:00:13,793 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 12:00:13,793 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:00:13,807 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:00:14,613 INFO L256 TraceCheckUtils]: 0: Hoare triple {6716#true} call ULTIMATE.init(); {6716#true} is VALID [2018-11-23 12:00:14,613 INFO L273 TraceCheckUtils]: 1: Hoare triple {6716#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {6716#true} is VALID [2018-11-23 12:00:14,614 INFO L273 TraceCheckUtils]: 2: Hoare triple {6716#true} assume true; {6716#true} is VALID [2018-11-23 12:00:14,614 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6716#true} {6716#true} #79#return; {6716#true} is VALID [2018-11-23 12:00:14,614 INFO L256 TraceCheckUtils]: 4: Hoare triple {6716#true} call #t~ret8 := main(); {6716#true} is VALID [2018-11-23 12:00:14,614 INFO L273 TraceCheckUtils]: 5: Hoare triple {6716#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {6716#true} is VALID [2018-11-23 12:00:14,614 INFO L273 TraceCheckUtils]: 6: Hoare triple {6716#true} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {6718#(= main_~i~0 1)} is VALID [2018-11-23 12:00:14,619 INFO L273 TraceCheckUtils]: 7: Hoare triple {6718#(= main_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6718#(= main_~i~0 1)} is VALID [2018-11-23 12:00:14,619 INFO L273 TraceCheckUtils]: 8: Hoare triple {6718#(= main_~i~0 1)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {6718#(= main_~i~0 1)} is VALID [2018-11-23 12:00:14,621 INFO L273 TraceCheckUtils]: 9: Hoare triple {6718#(= main_~i~0 1)} ~i~0 := 1 + ~i~0; {6719#(<= main_~i~0 2)} is VALID [2018-11-23 12:00:14,621 INFO L273 TraceCheckUtils]: 10: Hoare triple {6719#(<= main_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6719#(<= main_~i~0 2)} is VALID [2018-11-23 12:00:14,623 INFO L273 TraceCheckUtils]: 11: Hoare triple {6719#(<= main_~i~0 2)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {6719#(<= main_~i~0 2)} is VALID [2018-11-23 12:00:14,623 INFO L273 TraceCheckUtils]: 12: Hoare triple {6719#(<= main_~i~0 2)} ~i~0 := 1 + ~i~0; {6720#(<= main_~i~0 3)} is VALID [2018-11-23 12:00:14,625 INFO L273 TraceCheckUtils]: 13: Hoare triple {6720#(<= main_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6720#(<= main_~i~0 3)} is VALID [2018-11-23 12:00:14,625 INFO L273 TraceCheckUtils]: 14: Hoare triple {6720#(<= main_~i~0 3)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {6720#(<= main_~i~0 3)} is VALID [2018-11-23 12:00:14,627 INFO L273 TraceCheckUtils]: 15: Hoare triple {6720#(<= main_~i~0 3)} ~i~0 := 1 + ~i~0; {6721#(<= main_~i~0 4)} is VALID [2018-11-23 12:00:14,627 INFO L273 TraceCheckUtils]: 16: Hoare triple {6721#(<= main_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6721#(<= main_~i~0 4)} is VALID [2018-11-23 12:00:14,629 INFO L273 TraceCheckUtils]: 17: Hoare triple {6721#(<= main_~i~0 4)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {6721#(<= main_~i~0 4)} is VALID [2018-11-23 12:00:14,629 INFO L273 TraceCheckUtils]: 18: Hoare triple {6721#(<= main_~i~0 4)} ~i~0 := 1 + ~i~0; {6722#(<= main_~i~0 5)} is VALID [2018-11-23 12:00:14,631 INFO L273 TraceCheckUtils]: 19: Hoare triple {6722#(<= main_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6722#(<= main_~i~0 5)} is VALID [2018-11-23 12:00:14,631 INFO L273 TraceCheckUtils]: 20: Hoare triple {6722#(<= main_~i~0 5)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {6722#(<= main_~i~0 5)} is VALID [2018-11-23 12:00:14,633 INFO L273 TraceCheckUtils]: 21: Hoare triple {6722#(<= main_~i~0 5)} ~i~0 := 1 + ~i~0; {6723#(<= main_~i~0 6)} is VALID [2018-11-23 12:00:14,633 INFO L273 TraceCheckUtils]: 22: Hoare triple {6723#(<= main_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6723#(<= main_~i~0 6)} is VALID [2018-11-23 12:00:14,635 INFO L273 TraceCheckUtils]: 23: Hoare triple {6723#(<= main_~i~0 6)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {6723#(<= main_~i~0 6)} is VALID [2018-11-23 12:00:14,635 INFO L273 TraceCheckUtils]: 24: Hoare triple {6723#(<= main_~i~0 6)} ~i~0 := 1 + ~i~0; {6724#(<= main_~i~0 7)} is VALID [2018-11-23 12:00:14,637 INFO L273 TraceCheckUtils]: 25: Hoare triple {6724#(<= main_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6724#(<= main_~i~0 7)} is VALID [2018-11-23 12:00:14,637 INFO L273 TraceCheckUtils]: 26: Hoare triple {6724#(<= main_~i~0 7)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {6724#(<= main_~i~0 7)} is VALID [2018-11-23 12:00:14,639 INFO L273 TraceCheckUtils]: 27: Hoare triple {6724#(<= main_~i~0 7)} ~i~0 := 1 + ~i~0; {6725#(<= main_~i~0 8)} is VALID [2018-11-23 12:00:14,639 INFO L273 TraceCheckUtils]: 28: Hoare triple {6725#(<= main_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6725#(<= main_~i~0 8)} is VALID [2018-11-23 12:00:14,641 INFO L273 TraceCheckUtils]: 29: Hoare triple {6725#(<= main_~i~0 8)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {6725#(<= main_~i~0 8)} is VALID [2018-11-23 12:00:14,641 INFO L273 TraceCheckUtils]: 30: Hoare triple {6725#(<= main_~i~0 8)} ~i~0 := 1 + ~i~0; {6726#(<= main_~i~0 9)} is VALID [2018-11-23 12:00:14,643 INFO L273 TraceCheckUtils]: 31: Hoare triple {6726#(<= main_~i~0 9)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6726#(<= main_~i~0 9)} is VALID [2018-11-23 12:00:14,643 INFO L273 TraceCheckUtils]: 32: Hoare triple {6726#(<= main_~i~0 9)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {6726#(<= main_~i~0 9)} is VALID [2018-11-23 12:00:14,645 INFO L273 TraceCheckUtils]: 33: Hoare triple {6726#(<= main_~i~0 9)} ~i~0 := 1 + ~i~0; {6727#(<= main_~i~0 10)} is VALID [2018-11-23 12:00:14,647 INFO L273 TraceCheckUtils]: 34: Hoare triple {6727#(<= main_~i~0 10)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6727#(<= main_~i~0 10)} is VALID [2018-11-23 12:00:14,647 INFO L273 TraceCheckUtils]: 35: Hoare triple {6727#(<= main_~i~0 10)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {6727#(<= main_~i~0 10)} is VALID [2018-11-23 12:00:14,649 INFO L273 TraceCheckUtils]: 36: Hoare triple {6727#(<= main_~i~0 10)} ~i~0 := 1 + ~i~0; {6728#(<= main_~i~0 11)} is VALID [2018-11-23 12:00:14,649 INFO L273 TraceCheckUtils]: 37: Hoare triple {6728#(<= main_~i~0 11)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6728#(<= main_~i~0 11)} is VALID [2018-11-23 12:00:14,651 INFO L273 TraceCheckUtils]: 38: Hoare triple {6728#(<= main_~i~0 11)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {6728#(<= main_~i~0 11)} is VALID [2018-11-23 12:00:14,651 INFO L273 TraceCheckUtils]: 39: Hoare triple {6728#(<= main_~i~0 11)} ~i~0 := 1 + ~i~0; {6729#(<= main_~i~0 12)} is VALID [2018-11-23 12:00:14,653 INFO L273 TraceCheckUtils]: 40: Hoare triple {6729#(<= main_~i~0 12)} assume !(~i~0 < 100000); {6717#false} is VALID [2018-11-23 12:00:14,653 INFO L273 TraceCheckUtils]: 41: Hoare triple {6717#false} assume !(0 != ~swapped~0); {6717#false} is VALID [2018-11-23 12:00:14,653 INFO L273 TraceCheckUtils]: 42: Hoare triple {6717#false} havoc ~x~0;havoc ~y~0;~x~0 := 0; {6717#false} is VALID [2018-11-23 12:00:14,653 INFO L273 TraceCheckUtils]: 43: Hoare triple {6717#false} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {6717#false} is VALID [2018-11-23 12:00:14,653 INFO L273 TraceCheckUtils]: 44: Hoare triple {6717#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {6717#false} is VALID [2018-11-23 12:00:14,653 INFO L256 TraceCheckUtils]: 45: Hoare triple {6717#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {6716#true} is VALID [2018-11-23 12:00:14,653 INFO L273 TraceCheckUtils]: 46: Hoare triple {6716#true} ~cond := #in~cond; {6716#true} is VALID [2018-11-23 12:00:14,654 INFO L273 TraceCheckUtils]: 47: Hoare triple {6716#true} assume !(0 == ~cond); {6716#true} is VALID [2018-11-23 12:00:14,654 INFO L273 TraceCheckUtils]: 48: Hoare triple {6716#true} assume true; {6716#true} is VALID [2018-11-23 12:00:14,654 INFO L268 TraceCheckUtils]: 49: Hoare quadruple {6716#true} {6717#false} #83#return; {6717#false} is VALID [2018-11-23 12:00:14,654 INFO L273 TraceCheckUtils]: 50: Hoare triple {6717#false} havoc #t~mem6;havoc #t~mem7; {6717#false} is VALID [2018-11-23 12:00:14,654 INFO L273 TraceCheckUtils]: 51: Hoare triple {6717#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {6717#false} is VALID [2018-11-23 12:00:14,654 INFO L273 TraceCheckUtils]: 52: Hoare triple {6717#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {6717#false} is VALID [2018-11-23 12:00:14,654 INFO L256 TraceCheckUtils]: 53: Hoare triple {6717#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {6716#true} is VALID [2018-11-23 12:00:14,655 INFO L273 TraceCheckUtils]: 54: Hoare triple {6716#true} ~cond := #in~cond; {6716#true} is VALID [2018-11-23 12:00:14,655 INFO L273 TraceCheckUtils]: 55: Hoare triple {6716#true} assume !(0 == ~cond); {6716#true} is VALID [2018-11-23 12:00:14,655 INFO L273 TraceCheckUtils]: 56: Hoare triple {6716#true} assume true; {6716#true} is VALID [2018-11-23 12:00:14,655 INFO L268 TraceCheckUtils]: 57: Hoare quadruple {6716#true} {6717#false} #83#return; {6717#false} is VALID [2018-11-23 12:00:14,655 INFO L273 TraceCheckUtils]: 58: Hoare triple {6717#false} havoc #t~mem6;havoc #t~mem7; {6717#false} is VALID [2018-11-23 12:00:14,655 INFO L273 TraceCheckUtils]: 59: Hoare triple {6717#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {6717#false} is VALID [2018-11-23 12:00:14,655 INFO L273 TraceCheckUtils]: 60: Hoare triple {6717#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {6717#false} is VALID [2018-11-23 12:00:14,655 INFO L256 TraceCheckUtils]: 61: Hoare triple {6717#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {6716#true} is VALID [2018-11-23 12:00:14,656 INFO L273 TraceCheckUtils]: 62: Hoare triple {6716#true} ~cond := #in~cond; {6716#true} is VALID [2018-11-23 12:00:14,656 INFO L273 TraceCheckUtils]: 63: Hoare triple {6716#true} assume !(0 == ~cond); {6716#true} is VALID [2018-11-23 12:00:14,656 INFO L273 TraceCheckUtils]: 64: Hoare triple {6716#true} assume true; {6716#true} is VALID [2018-11-23 12:00:14,656 INFO L268 TraceCheckUtils]: 65: Hoare quadruple {6716#true} {6717#false} #83#return; {6717#false} is VALID [2018-11-23 12:00:14,656 INFO L273 TraceCheckUtils]: 66: Hoare triple {6717#false} havoc #t~mem6;havoc #t~mem7; {6717#false} is VALID [2018-11-23 12:00:14,656 INFO L273 TraceCheckUtils]: 67: Hoare triple {6717#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {6717#false} is VALID [2018-11-23 12:00:14,656 INFO L273 TraceCheckUtils]: 68: Hoare triple {6717#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {6717#false} is VALID [2018-11-23 12:00:14,656 INFO L256 TraceCheckUtils]: 69: Hoare triple {6717#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {6717#false} is VALID [2018-11-23 12:00:14,657 INFO L273 TraceCheckUtils]: 70: Hoare triple {6717#false} ~cond := #in~cond; {6717#false} is VALID [2018-11-23 12:00:14,657 INFO L273 TraceCheckUtils]: 71: Hoare triple {6717#false} assume 0 == ~cond; {6717#false} is VALID [2018-11-23 12:00:14,657 INFO L273 TraceCheckUtils]: 72: Hoare triple {6717#false} assume !false; {6717#false} is VALID [2018-11-23 12:00:14,660 INFO L134 CoverageAnalysis]: Checked inductivity of 213 backedges. 7 proven. 176 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2018-11-23 12:00:14,660 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:00:14,660 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:00:14,677 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 12:00:14,707 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 12:00:14,708 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:00:14,721 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:00:14,724 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:00:14,944 INFO L256 TraceCheckUtils]: 0: Hoare triple {6716#true} call ULTIMATE.init(); {6716#true} is VALID [2018-11-23 12:00:14,944 INFO L273 TraceCheckUtils]: 1: Hoare triple {6716#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {6716#true} is VALID [2018-11-23 12:00:14,944 INFO L273 TraceCheckUtils]: 2: Hoare triple {6716#true} assume true; {6716#true} is VALID [2018-11-23 12:00:14,944 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6716#true} {6716#true} #79#return; {6716#true} is VALID [2018-11-23 12:00:14,944 INFO L256 TraceCheckUtils]: 4: Hoare triple {6716#true} call #t~ret8 := main(); {6716#true} is VALID [2018-11-23 12:00:14,944 INFO L273 TraceCheckUtils]: 5: Hoare triple {6716#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {6716#true} is VALID [2018-11-23 12:00:14,945 INFO L273 TraceCheckUtils]: 6: Hoare triple {6716#true} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {6751#(<= main_~i~0 1)} is VALID [2018-11-23 12:00:14,945 INFO L273 TraceCheckUtils]: 7: Hoare triple {6751#(<= main_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6751#(<= main_~i~0 1)} is VALID [2018-11-23 12:00:14,945 INFO L273 TraceCheckUtils]: 8: Hoare triple {6751#(<= main_~i~0 1)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {6751#(<= main_~i~0 1)} is VALID [2018-11-23 12:00:14,946 INFO L273 TraceCheckUtils]: 9: Hoare triple {6751#(<= main_~i~0 1)} ~i~0 := 1 + ~i~0; {6719#(<= main_~i~0 2)} is VALID [2018-11-23 12:00:14,947 INFO L273 TraceCheckUtils]: 10: Hoare triple {6719#(<= main_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6719#(<= main_~i~0 2)} is VALID [2018-11-23 12:00:14,947 INFO L273 TraceCheckUtils]: 11: Hoare triple {6719#(<= main_~i~0 2)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {6719#(<= main_~i~0 2)} is VALID [2018-11-23 12:00:14,948 INFO L273 TraceCheckUtils]: 12: Hoare triple {6719#(<= main_~i~0 2)} ~i~0 := 1 + ~i~0; {6720#(<= main_~i~0 3)} is VALID [2018-11-23 12:00:14,949 INFO L273 TraceCheckUtils]: 13: Hoare triple {6720#(<= main_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6720#(<= main_~i~0 3)} is VALID [2018-11-23 12:00:14,949 INFO L273 TraceCheckUtils]: 14: Hoare triple {6720#(<= main_~i~0 3)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {6720#(<= main_~i~0 3)} is VALID [2018-11-23 12:00:14,950 INFO L273 TraceCheckUtils]: 15: Hoare triple {6720#(<= main_~i~0 3)} ~i~0 := 1 + ~i~0; {6721#(<= main_~i~0 4)} is VALID [2018-11-23 12:00:14,951 INFO L273 TraceCheckUtils]: 16: Hoare triple {6721#(<= main_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6721#(<= main_~i~0 4)} is VALID [2018-11-23 12:00:14,951 INFO L273 TraceCheckUtils]: 17: Hoare triple {6721#(<= main_~i~0 4)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {6721#(<= main_~i~0 4)} is VALID [2018-11-23 12:00:14,952 INFO L273 TraceCheckUtils]: 18: Hoare triple {6721#(<= main_~i~0 4)} ~i~0 := 1 + ~i~0; {6722#(<= main_~i~0 5)} is VALID [2018-11-23 12:00:14,952 INFO L273 TraceCheckUtils]: 19: Hoare triple {6722#(<= main_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6722#(<= main_~i~0 5)} is VALID [2018-11-23 12:00:14,953 INFO L273 TraceCheckUtils]: 20: Hoare triple {6722#(<= main_~i~0 5)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {6722#(<= main_~i~0 5)} is VALID [2018-11-23 12:00:14,954 INFO L273 TraceCheckUtils]: 21: Hoare triple {6722#(<= main_~i~0 5)} ~i~0 := 1 + ~i~0; {6723#(<= main_~i~0 6)} is VALID [2018-11-23 12:00:14,954 INFO L273 TraceCheckUtils]: 22: Hoare triple {6723#(<= main_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6723#(<= main_~i~0 6)} is VALID [2018-11-23 12:00:14,955 INFO L273 TraceCheckUtils]: 23: Hoare triple {6723#(<= main_~i~0 6)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {6723#(<= main_~i~0 6)} is VALID [2018-11-23 12:00:14,956 INFO L273 TraceCheckUtils]: 24: Hoare triple {6723#(<= main_~i~0 6)} ~i~0 := 1 + ~i~0; {6724#(<= main_~i~0 7)} is VALID [2018-11-23 12:00:14,956 INFO L273 TraceCheckUtils]: 25: Hoare triple {6724#(<= main_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6724#(<= main_~i~0 7)} is VALID [2018-11-23 12:00:14,957 INFO L273 TraceCheckUtils]: 26: Hoare triple {6724#(<= main_~i~0 7)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {6724#(<= main_~i~0 7)} is VALID [2018-11-23 12:00:14,957 INFO L273 TraceCheckUtils]: 27: Hoare triple {6724#(<= main_~i~0 7)} ~i~0 := 1 + ~i~0; {6725#(<= main_~i~0 8)} is VALID [2018-11-23 12:00:14,958 INFO L273 TraceCheckUtils]: 28: Hoare triple {6725#(<= main_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6725#(<= main_~i~0 8)} is VALID [2018-11-23 12:00:14,958 INFO L273 TraceCheckUtils]: 29: Hoare triple {6725#(<= main_~i~0 8)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {6725#(<= main_~i~0 8)} is VALID [2018-11-23 12:00:14,959 INFO L273 TraceCheckUtils]: 30: Hoare triple {6725#(<= main_~i~0 8)} ~i~0 := 1 + ~i~0; {6726#(<= main_~i~0 9)} is VALID [2018-11-23 12:00:14,960 INFO L273 TraceCheckUtils]: 31: Hoare triple {6726#(<= main_~i~0 9)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6726#(<= main_~i~0 9)} is VALID [2018-11-23 12:00:14,960 INFO L273 TraceCheckUtils]: 32: Hoare triple {6726#(<= main_~i~0 9)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {6726#(<= main_~i~0 9)} is VALID [2018-11-23 12:00:14,961 INFO L273 TraceCheckUtils]: 33: Hoare triple {6726#(<= main_~i~0 9)} ~i~0 := 1 + ~i~0; {6727#(<= main_~i~0 10)} is VALID [2018-11-23 12:00:14,962 INFO L273 TraceCheckUtils]: 34: Hoare triple {6727#(<= main_~i~0 10)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6727#(<= main_~i~0 10)} is VALID [2018-11-23 12:00:14,962 INFO L273 TraceCheckUtils]: 35: Hoare triple {6727#(<= main_~i~0 10)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {6727#(<= main_~i~0 10)} is VALID [2018-11-23 12:00:14,963 INFO L273 TraceCheckUtils]: 36: Hoare triple {6727#(<= main_~i~0 10)} ~i~0 := 1 + ~i~0; {6728#(<= main_~i~0 11)} is VALID [2018-11-23 12:00:14,963 INFO L273 TraceCheckUtils]: 37: Hoare triple {6728#(<= main_~i~0 11)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {6728#(<= main_~i~0 11)} is VALID [2018-11-23 12:00:14,964 INFO L273 TraceCheckUtils]: 38: Hoare triple {6728#(<= main_~i~0 11)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {6728#(<= main_~i~0 11)} is VALID [2018-11-23 12:00:14,965 INFO L273 TraceCheckUtils]: 39: Hoare triple {6728#(<= main_~i~0 11)} ~i~0 := 1 + ~i~0; {6729#(<= main_~i~0 12)} is VALID [2018-11-23 12:00:14,965 INFO L273 TraceCheckUtils]: 40: Hoare triple {6729#(<= main_~i~0 12)} assume !(~i~0 < 100000); {6717#false} is VALID [2018-11-23 12:00:14,966 INFO L273 TraceCheckUtils]: 41: Hoare triple {6717#false} assume !(0 != ~swapped~0); {6717#false} is VALID [2018-11-23 12:00:14,966 INFO L273 TraceCheckUtils]: 42: Hoare triple {6717#false} havoc ~x~0;havoc ~y~0;~x~0 := 0; {6717#false} is VALID [2018-11-23 12:00:14,966 INFO L273 TraceCheckUtils]: 43: Hoare triple {6717#false} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {6717#false} is VALID [2018-11-23 12:00:14,966 INFO L273 TraceCheckUtils]: 44: Hoare triple {6717#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {6717#false} is VALID [2018-11-23 12:00:14,967 INFO L256 TraceCheckUtils]: 45: Hoare triple {6717#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {6717#false} is VALID [2018-11-23 12:00:14,967 INFO L273 TraceCheckUtils]: 46: Hoare triple {6717#false} ~cond := #in~cond; {6717#false} is VALID [2018-11-23 12:00:14,967 INFO L273 TraceCheckUtils]: 47: Hoare triple {6717#false} assume !(0 == ~cond); {6717#false} is VALID [2018-11-23 12:00:14,967 INFO L273 TraceCheckUtils]: 48: Hoare triple {6717#false} assume true; {6717#false} is VALID [2018-11-23 12:00:14,967 INFO L268 TraceCheckUtils]: 49: Hoare quadruple {6717#false} {6717#false} #83#return; {6717#false} is VALID [2018-11-23 12:00:14,968 INFO L273 TraceCheckUtils]: 50: Hoare triple {6717#false} havoc #t~mem6;havoc #t~mem7; {6717#false} is VALID [2018-11-23 12:00:14,968 INFO L273 TraceCheckUtils]: 51: Hoare triple {6717#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {6717#false} is VALID [2018-11-23 12:00:14,968 INFO L273 TraceCheckUtils]: 52: Hoare triple {6717#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {6717#false} is VALID [2018-11-23 12:00:14,968 INFO L256 TraceCheckUtils]: 53: Hoare triple {6717#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {6717#false} is VALID [2018-11-23 12:00:14,968 INFO L273 TraceCheckUtils]: 54: Hoare triple {6717#false} ~cond := #in~cond; {6717#false} is VALID [2018-11-23 12:00:14,969 INFO L273 TraceCheckUtils]: 55: Hoare triple {6717#false} assume !(0 == ~cond); {6717#false} is VALID [2018-11-23 12:00:14,969 INFO L273 TraceCheckUtils]: 56: Hoare triple {6717#false} assume true; {6717#false} is VALID [2018-11-23 12:00:14,969 INFO L268 TraceCheckUtils]: 57: Hoare quadruple {6717#false} {6717#false} #83#return; {6717#false} is VALID [2018-11-23 12:00:14,969 INFO L273 TraceCheckUtils]: 58: Hoare triple {6717#false} havoc #t~mem6;havoc #t~mem7; {6717#false} is VALID [2018-11-23 12:00:14,969 INFO L273 TraceCheckUtils]: 59: Hoare triple {6717#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {6717#false} is VALID [2018-11-23 12:00:14,970 INFO L273 TraceCheckUtils]: 60: Hoare triple {6717#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {6717#false} is VALID [2018-11-23 12:00:14,970 INFO L256 TraceCheckUtils]: 61: Hoare triple {6717#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {6717#false} is VALID [2018-11-23 12:00:14,970 INFO L273 TraceCheckUtils]: 62: Hoare triple {6717#false} ~cond := #in~cond; {6717#false} is VALID [2018-11-23 12:00:14,970 INFO L273 TraceCheckUtils]: 63: Hoare triple {6717#false} assume !(0 == ~cond); {6717#false} is VALID [2018-11-23 12:00:14,970 INFO L273 TraceCheckUtils]: 64: Hoare triple {6717#false} assume true; {6717#false} is VALID [2018-11-23 12:00:14,970 INFO L268 TraceCheckUtils]: 65: Hoare quadruple {6717#false} {6717#false} #83#return; {6717#false} is VALID [2018-11-23 12:00:14,970 INFO L273 TraceCheckUtils]: 66: Hoare triple {6717#false} havoc #t~mem6;havoc #t~mem7; {6717#false} is VALID [2018-11-23 12:00:14,970 INFO L273 TraceCheckUtils]: 67: Hoare triple {6717#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {6717#false} is VALID [2018-11-23 12:00:14,971 INFO L273 TraceCheckUtils]: 68: Hoare triple {6717#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {6717#false} is VALID [2018-11-23 12:00:14,971 INFO L256 TraceCheckUtils]: 69: Hoare triple {6717#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {6717#false} is VALID [2018-11-23 12:00:14,971 INFO L273 TraceCheckUtils]: 70: Hoare triple {6717#false} ~cond := #in~cond; {6717#false} is VALID [2018-11-23 12:00:14,971 INFO L273 TraceCheckUtils]: 71: Hoare triple {6717#false} assume 0 == ~cond; {6717#false} is VALID [2018-11-23 12:00:14,971 INFO L273 TraceCheckUtils]: 72: Hoare triple {6717#false} assume !false; {6717#false} is VALID [2018-11-23 12:00:14,974 INFO L134 CoverageAnalysis]: Checked inductivity of 213 backedges. 1 proven. 176 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2018-11-23 12:00:14,993 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:00:14,993 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 15 [2018-11-23 12:00:14,993 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 73 [2018-11-23 12:00:14,994 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:00:14,994 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states. [2018-11-23 12:00:15,052 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:00:15,052 INFO L459 AbstractCegarLoop]: Interpolant automaton has 15 states [2018-11-23 12:00:15,053 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2018-11-23 12:00:15,053 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=105, Invalid=105, Unknown=0, NotChecked=0, Total=210 [2018-11-23 12:00:15,053 INFO L87 Difference]: Start difference. First operand 110 states and 135 transitions. Second operand 15 states. [2018-11-23 12:00:16,040 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:00:16,041 INFO L93 Difference]: Finished difference Result 224 states and 280 transitions. [2018-11-23 12:00:16,041 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2018-11-23 12:00:16,041 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 73 [2018-11-23 12:00:16,041 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:00:16,041 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2018-11-23 12:00:16,043 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 97 transitions. [2018-11-23 12:00:16,043 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2018-11-23 12:00:16,044 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 97 transitions. [2018-11-23 12:00:16,045 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 97 transitions. [2018-11-23 12:00:16,575 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 97 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:00:16,578 INFO L225 Difference]: With dead ends: 224 [2018-11-23 12:00:16,578 INFO L226 Difference]: Without dead ends: 120 [2018-11-23 12:00:16,579 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 86 GetRequests, 73 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 20 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=105, Invalid=105, Unknown=0, NotChecked=0, Total=210 [2018-11-23 12:00:16,579 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 120 states. [2018-11-23 12:00:16,758 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 120 to 116. [2018-11-23 12:00:16,758 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:00:16,758 INFO L82 GeneralOperation]: Start isEquivalent. First operand 120 states. Second operand 116 states. [2018-11-23 12:00:16,759 INFO L74 IsIncluded]: Start isIncluded. First operand 120 states. Second operand 116 states. [2018-11-23 12:00:16,759 INFO L87 Difference]: Start difference. First operand 120 states. Second operand 116 states. [2018-11-23 12:00:16,761 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:00:16,761 INFO L93 Difference]: Finished difference Result 120 states and 149 transitions. [2018-11-23 12:00:16,762 INFO L276 IsEmpty]: Start isEmpty. Operand 120 states and 149 transitions. [2018-11-23 12:00:16,762 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:00:16,762 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:00:16,762 INFO L74 IsIncluded]: Start isIncluded. First operand 116 states. Second operand 120 states. [2018-11-23 12:00:16,763 INFO L87 Difference]: Start difference. First operand 116 states. Second operand 120 states. [2018-11-23 12:00:16,765 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:00:16,765 INFO L93 Difference]: Finished difference Result 120 states and 149 transitions. [2018-11-23 12:00:16,765 INFO L276 IsEmpty]: Start isEmpty. Operand 120 states and 149 transitions. [2018-11-23 12:00:16,766 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:00:16,766 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:00:16,766 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:00:16,766 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:00:16,766 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 116 states. [2018-11-23 12:00:16,769 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 116 states to 116 states and 143 transitions. [2018-11-23 12:00:16,769 INFO L78 Accepts]: Start accepts. Automaton has 116 states and 143 transitions. Word has length 73 [2018-11-23 12:00:16,769 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:00:16,769 INFO L480 AbstractCegarLoop]: Abstraction has 116 states and 143 transitions. [2018-11-23 12:00:16,769 INFO L481 AbstractCegarLoop]: Interpolant automaton has 15 states. [2018-11-23 12:00:16,769 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 143 transitions. [2018-11-23 12:00:16,770 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 77 [2018-11-23 12:00:16,770 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:00:16,770 INFO L402 BasicCegarLoop]: trace histogram [12, 12, 12, 4, 4, 4, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:00:16,771 INFO L423 AbstractCegarLoop]: === Iteration 15 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:00:16,771 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:00:16,771 INFO L82 PathProgramCache]: Analyzing trace with hash 655209386, now seen corresponding path program 9 times [2018-11-23 12:00:16,771 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:00:16,771 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:00:16,772 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:00:16,772 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:00:16,772 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:00:16,785 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:00:17,354 INFO L256 TraceCheckUtils]: 0: Hoare triple {7658#true} call ULTIMATE.init(); {7658#true} is VALID [2018-11-23 12:00:17,354 INFO L273 TraceCheckUtils]: 1: Hoare triple {7658#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {7658#true} is VALID [2018-11-23 12:00:17,354 INFO L273 TraceCheckUtils]: 2: Hoare triple {7658#true} assume true; {7658#true} is VALID [2018-11-23 12:00:17,354 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {7658#true} {7658#true} #79#return; {7658#true} is VALID [2018-11-23 12:00:17,355 INFO L256 TraceCheckUtils]: 4: Hoare triple {7658#true} call #t~ret8 := main(); {7658#true} is VALID [2018-11-23 12:00:17,355 INFO L273 TraceCheckUtils]: 5: Hoare triple {7658#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {7658#true} is VALID [2018-11-23 12:00:17,355 INFO L273 TraceCheckUtils]: 6: Hoare triple {7658#true} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {7660#(= main_~i~0 1)} is VALID [2018-11-23 12:00:17,355 INFO L273 TraceCheckUtils]: 7: Hoare triple {7660#(= main_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7660#(= main_~i~0 1)} is VALID [2018-11-23 12:00:17,356 INFO L273 TraceCheckUtils]: 8: Hoare triple {7660#(= main_~i~0 1)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {7660#(= main_~i~0 1)} is VALID [2018-11-23 12:00:17,356 INFO L273 TraceCheckUtils]: 9: Hoare triple {7660#(= main_~i~0 1)} ~i~0 := 1 + ~i~0; {7661#(<= main_~i~0 2)} is VALID [2018-11-23 12:00:17,356 INFO L273 TraceCheckUtils]: 10: Hoare triple {7661#(<= main_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7661#(<= main_~i~0 2)} is VALID [2018-11-23 12:00:17,357 INFO L273 TraceCheckUtils]: 11: Hoare triple {7661#(<= main_~i~0 2)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {7661#(<= main_~i~0 2)} is VALID [2018-11-23 12:00:17,357 INFO L273 TraceCheckUtils]: 12: Hoare triple {7661#(<= main_~i~0 2)} ~i~0 := 1 + ~i~0; {7662#(<= main_~i~0 3)} is VALID [2018-11-23 12:00:17,358 INFO L273 TraceCheckUtils]: 13: Hoare triple {7662#(<= main_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7662#(<= main_~i~0 3)} is VALID [2018-11-23 12:00:17,358 INFO L273 TraceCheckUtils]: 14: Hoare triple {7662#(<= main_~i~0 3)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {7662#(<= main_~i~0 3)} is VALID [2018-11-23 12:00:17,359 INFO L273 TraceCheckUtils]: 15: Hoare triple {7662#(<= main_~i~0 3)} ~i~0 := 1 + ~i~0; {7663#(<= main_~i~0 4)} is VALID [2018-11-23 12:00:17,360 INFO L273 TraceCheckUtils]: 16: Hoare triple {7663#(<= main_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7663#(<= main_~i~0 4)} is VALID [2018-11-23 12:00:17,360 INFO L273 TraceCheckUtils]: 17: Hoare triple {7663#(<= main_~i~0 4)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {7663#(<= main_~i~0 4)} is VALID [2018-11-23 12:00:17,361 INFO L273 TraceCheckUtils]: 18: Hoare triple {7663#(<= main_~i~0 4)} ~i~0 := 1 + ~i~0; {7664#(<= main_~i~0 5)} is VALID [2018-11-23 12:00:17,362 INFO L273 TraceCheckUtils]: 19: Hoare triple {7664#(<= main_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7664#(<= main_~i~0 5)} is VALID [2018-11-23 12:00:17,362 INFO L273 TraceCheckUtils]: 20: Hoare triple {7664#(<= main_~i~0 5)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {7664#(<= main_~i~0 5)} is VALID [2018-11-23 12:00:17,363 INFO L273 TraceCheckUtils]: 21: Hoare triple {7664#(<= main_~i~0 5)} ~i~0 := 1 + ~i~0; {7665#(<= main_~i~0 6)} is VALID [2018-11-23 12:00:17,363 INFO L273 TraceCheckUtils]: 22: Hoare triple {7665#(<= main_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7665#(<= main_~i~0 6)} is VALID [2018-11-23 12:00:17,364 INFO L273 TraceCheckUtils]: 23: Hoare triple {7665#(<= main_~i~0 6)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {7665#(<= main_~i~0 6)} is VALID [2018-11-23 12:00:17,365 INFO L273 TraceCheckUtils]: 24: Hoare triple {7665#(<= main_~i~0 6)} ~i~0 := 1 + ~i~0; {7666#(<= main_~i~0 7)} is VALID [2018-11-23 12:00:17,365 INFO L273 TraceCheckUtils]: 25: Hoare triple {7666#(<= main_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7666#(<= main_~i~0 7)} is VALID [2018-11-23 12:00:17,366 INFO L273 TraceCheckUtils]: 26: Hoare triple {7666#(<= main_~i~0 7)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {7666#(<= main_~i~0 7)} is VALID [2018-11-23 12:00:17,367 INFO L273 TraceCheckUtils]: 27: Hoare triple {7666#(<= main_~i~0 7)} ~i~0 := 1 + ~i~0; {7667#(<= main_~i~0 8)} is VALID [2018-11-23 12:00:17,367 INFO L273 TraceCheckUtils]: 28: Hoare triple {7667#(<= main_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7667#(<= main_~i~0 8)} is VALID [2018-11-23 12:00:17,368 INFO L273 TraceCheckUtils]: 29: Hoare triple {7667#(<= main_~i~0 8)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {7667#(<= main_~i~0 8)} is VALID [2018-11-23 12:00:17,368 INFO L273 TraceCheckUtils]: 30: Hoare triple {7667#(<= main_~i~0 8)} ~i~0 := 1 + ~i~0; {7668#(<= main_~i~0 9)} is VALID [2018-11-23 12:00:17,369 INFO L273 TraceCheckUtils]: 31: Hoare triple {7668#(<= main_~i~0 9)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7668#(<= main_~i~0 9)} is VALID [2018-11-23 12:00:17,369 INFO L273 TraceCheckUtils]: 32: Hoare triple {7668#(<= main_~i~0 9)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {7668#(<= main_~i~0 9)} is VALID [2018-11-23 12:00:17,370 INFO L273 TraceCheckUtils]: 33: Hoare triple {7668#(<= main_~i~0 9)} ~i~0 := 1 + ~i~0; {7669#(<= main_~i~0 10)} is VALID [2018-11-23 12:00:17,371 INFO L273 TraceCheckUtils]: 34: Hoare triple {7669#(<= main_~i~0 10)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7669#(<= main_~i~0 10)} is VALID [2018-11-23 12:00:17,371 INFO L273 TraceCheckUtils]: 35: Hoare triple {7669#(<= main_~i~0 10)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {7669#(<= main_~i~0 10)} is VALID [2018-11-23 12:00:17,372 INFO L273 TraceCheckUtils]: 36: Hoare triple {7669#(<= main_~i~0 10)} ~i~0 := 1 + ~i~0; {7670#(<= main_~i~0 11)} is VALID [2018-11-23 12:00:17,373 INFO L273 TraceCheckUtils]: 37: Hoare triple {7670#(<= main_~i~0 11)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7670#(<= main_~i~0 11)} is VALID [2018-11-23 12:00:17,373 INFO L273 TraceCheckUtils]: 38: Hoare triple {7670#(<= main_~i~0 11)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {7670#(<= main_~i~0 11)} is VALID [2018-11-23 12:00:17,374 INFO L273 TraceCheckUtils]: 39: Hoare triple {7670#(<= main_~i~0 11)} ~i~0 := 1 + ~i~0; {7671#(<= main_~i~0 12)} is VALID [2018-11-23 12:00:17,374 INFO L273 TraceCheckUtils]: 40: Hoare triple {7671#(<= main_~i~0 12)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7671#(<= main_~i~0 12)} is VALID [2018-11-23 12:00:17,375 INFO L273 TraceCheckUtils]: 41: Hoare triple {7671#(<= main_~i~0 12)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {7671#(<= main_~i~0 12)} is VALID [2018-11-23 12:00:17,376 INFO L273 TraceCheckUtils]: 42: Hoare triple {7671#(<= main_~i~0 12)} ~i~0 := 1 + ~i~0; {7672#(<= main_~i~0 13)} is VALID [2018-11-23 12:00:17,376 INFO L273 TraceCheckUtils]: 43: Hoare triple {7672#(<= main_~i~0 13)} assume !(~i~0 < 100000); {7659#false} is VALID [2018-11-23 12:00:17,377 INFO L273 TraceCheckUtils]: 44: Hoare triple {7659#false} assume !(0 != ~swapped~0); {7659#false} is VALID [2018-11-23 12:00:17,377 INFO L273 TraceCheckUtils]: 45: Hoare triple {7659#false} havoc ~x~0;havoc ~y~0;~x~0 := 0; {7659#false} is VALID [2018-11-23 12:00:17,377 INFO L273 TraceCheckUtils]: 46: Hoare triple {7659#false} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {7659#false} is VALID [2018-11-23 12:00:17,377 INFO L273 TraceCheckUtils]: 47: Hoare triple {7659#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {7659#false} is VALID [2018-11-23 12:00:17,378 INFO L256 TraceCheckUtils]: 48: Hoare triple {7659#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {7658#true} is VALID [2018-11-23 12:00:17,378 INFO L273 TraceCheckUtils]: 49: Hoare triple {7658#true} ~cond := #in~cond; {7658#true} is VALID [2018-11-23 12:00:17,378 INFO L273 TraceCheckUtils]: 50: Hoare triple {7658#true} assume !(0 == ~cond); {7658#true} is VALID [2018-11-23 12:00:17,378 INFO L273 TraceCheckUtils]: 51: Hoare triple {7658#true} assume true; {7658#true} is VALID [2018-11-23 12:00:17,378 INFO L268 TraceCheckUtils]: 52: Hoare quadruple {7658#true} {7659#false} #83#return; {7659#false} is VALID [2018-11-23 12:00:17,379 INFO L273 TraceCheckUtils]: 53: Hoare triple {7659#false} havoc #t~mem6;havoc #t~mem7; {7659#false} is VALID [2018-11-23 12:00:17,379 INFO L273 TraceCheckUtils]: 54: Hoare triple {7659#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {7659#false} is VALID [2018-11-23 12:00:17,379 INFO L273 TraceCheckUtils]: 55: Hoare triple {7659#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {7659#false} is VALID [2018-11-23 12:00:17,379 INFO L256 TraceCheckUtils]: 56: Hoare triple {7659#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {7658#true} is VALID [2018-11-23 12:00:17,379 INFO L273 TraceCheckUtils]: 57: Hoare triple {7658#true} ~cond := #in~cond; {7658#true} is VALID [2018-11-23 12:00:17,380 INFO L273 TraceCheckUtils]: 58: Hoare triple {7658#true} assume !(0 == ~cond); {7658#true} is VALID [2018-11-23 12:00:17,380 INFO L273 TraceCheckUtils]: 59: Hoare triple {7658#true} assume true; {7658#true} is VALID [2018-11-23 12:00:17,380 INFO L268 TraceCheckUtils]: 60: Hoare quadruple {7658#true} {7659#false} #83#return; {7659#false} is VALID [2018-11-23 12:00:17,380 INFO L273 TraceCheckUtils]: 61: Hoare triple {7659#false} havoc #t~mem6;havoc #t~mem7; {7659#false} is VALID [2018-11-23 12:00:17,380 INFO L273 TraceCheckUtils]: 62: Hoare triple {7659#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {7659#false} is VALID [2018-11-23 12:00:17,381 INFO L273 TraceCheckUtils]: 63: Hoare triple {7659#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {7659#false} is VALID [2018-11-23 12:00:17,381 INFO L256 TraceCheckUtils]: 64: Hoare triple {7659#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {7658#true} is VALID [2018-11-23 12:00:17,381 INFO L273 TraceCheckUtils]: 65: Hoare triple {7658#true} ~cond := #in~cond; {7658#true} is VALID [2018-11-23 12:00:17,381 INFO L273 TraceCheckUtils]: 66: Hoare triple {7658#true} assume !(0 == ~cond); {7658#true} is VALID [2018-11-23 12:00:17,381 INFO L273 TraceCheckUtils]: 67: Hoare triple {7658#true} assume true; {7658#true} is VALID [2018-11-23 12:00:17,382 INFO L268 TraceCheckUtils]: 68: Hoare quadruple {7658#true} {7659#false} #83#return; {7659#false} is VALID [2018-11-23 12:00:17,382 INFO L273 TraceCheckUtils]: 69: Hoare triple {7659#false} havoc #t~mem6;havoc #t~mem7; {7659#false} is VALID [2018-11-23 12:00:17,382 INFO L273 TraceCheckUtils]: 70: Hoare triple {7659#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {7659#false} is VALID [2018-11-23 12:00:17,382 INFO L273 TraceCheckUtils]: 71: Hoare triple {7659#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {7659#false} is VALID [2018-11-23 12:00:17,382 INFO L256 TraceCheckUtils]: 72: Hoare triple {7659#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {7659#false} is VALID [2018-11-23 12:00:17,383 INFO L273 TraceCheckUtils]: 73: Hoare triple {7659#false} ~cond := #in~cond; {7659#false} is VALID [2018-11-23 12:00:17,383 INFO L273 TraceCheckUtils]: 74: Hoare triple {7659#false} assume 0 == ~cond; {7659#false} is VALID [2018-11-23 12:00:17,383 INFO L273 TraceCheckUtils]: 75: Hoare triple {7659#false} assume !false; {7659#false} is VALID [2018-11-23 12:00:17,387 INFO L134 CoverageAnalysis]: Checked inductivity of 247 backedges. 7 proven. 210 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2018-11-23 12:00:17,387 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:00:17,388 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:00:17,399 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 12:00:17,444 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 13 check-sat command(s) [2018-11-23 12:00:17,445 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:00:17,462 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:00:17,464 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:00:18,409 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 37 treesize of output 25 [2018-11-23 12:00:18,423 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 13 [2018-11-23 12:00:18,430 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:00:18,433 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:00:18,435 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:00:18,435 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:37, output treesize:3 [2018-11-23 12:00:18,438 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:00:18,439 WARN L384 uantifierElimination]: Input elimination task: ∃ [|#memory_int|, |main_~#a~0.base|]. (let ((.cse3 (select |#memory_int| |main_~#a~0.base|))) (let ((.cse1 (select .cse3 16)) (.cse0 (select .cse3 12)) (.cse2 (select .cse3 0))) (and (<= .cse0 .cse1) (<= .cse1 |main_#t~mem7|) (<= .cse2 .cse0) (<= |main_#t~mem6| .cse2)))) [2018-11-23 12:00:18,439 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (<= |main_#t~mem6| |main_#t~mem7|) [2018-11-23 12:00:18,516 INFO L256 TraceCheckUtils]: 0: Hoare triple {7658#true} call ULTIMATE.init(); {7658#true} is VALID [2018-11-23 12:00:18,516 INFO L273 TraceCheckUtils]: 1: Hoare triple {7658#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {7658#true} is VALID [2018-11-23 12:00:18,516 INFO L273 TraceCheckUtils]: 2: Hoare triple {7658#true} assume true; {7658#true} is VALID [2018-11-23 12:00:18,516 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {7658#true} {7658#true} #79#return; {7658#true} is VALID [2018-11-23 12:00:18,517 INFO L256 TraceCheckUtils]: 4: Hoare triple {7658#true} call #t~ret8 := main(); {7658#true} is VALID [2018-11-23 12:00:18,517 INFO L273 TraceCheckUtils]: 5: Hoare triple {7658#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {7691#(and (= 1 main_~swapped~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,518 INFO L273 TraceCheckUtils]: 6: Hoare triple {7691#(and (= 1 main_~swapped~0) (= |main_~#a~0.offset| 0))} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {7695#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,519 INFO L273 TraceCheckUtils]: 7: Hoare triple {7695#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7695#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,519 INFO L273 TraceCheckUtils]: 8: Hoare triple {7695#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {7695#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,520 INFO L273 TraceCheckUtils]: 9: Hoare triple {7695#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {7705#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,520 INFO L273 TraceCheckUtils]: 10: Hoare triple {7705#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7705#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,521 INFO L273 TraceCheckUtils]: 11: Hoare triple {7705#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {7705#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,522 INFO L273 TraceCheckUtils]: 12: Hoare triple {7705#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {7715#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,522 INFO L273 TraceCheckUtils]: 13: Hoare triple {7715#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7715#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,523 INFO L273 TraceCheckUtils]: 14: Hoare triple {7715#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {7715#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,524 INFO L273 TraceCheckUtils]: 15: Hoare triple {7715#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {7725#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,525 INFO L273 TraceCheckUtils]: 16: Hoare triple {7725#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7729#(and (<= |main_#t~mem1| (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) |main_#t~mem0|))} is VALID [2018-11-23 12:00:18,526 INFO L273 TraceCheckUtils]: 17: Hoare triple {7729#(and (<= |main_#t~mem1| (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) |main_#t~mem0|))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,527 INFO L273 TraceCheckUtils]: 18: Hoare triple {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,528 INFO L273 TraceCheckUtils]: 19: Hoare triple {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,529 INFO L273 TraceCheckUtils]: 20: Hoare triple {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,530 INFO L273 TraceCheckUtils]: 21: Hoare triple {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,531 INFO L273 TraceCheckUtils]: 22: Hoare triple {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,531 INFO L273 TraceCheckUtils]: 23: Hoare triple {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,532 INFO L273 TraceCheckUtils]: 24: Hoare triple {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,533 INFO L273 TraceCheckUtils]: 25: Hoare triple {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,534 INFO L273 TraceCheckUtils]: 26: Hoare triple {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,535 INFO L273 TraceCheckUtils]: 27: Hoare triple {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,535 INFO L273 TraceCheckUtils]: 28: Hoare triple {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,536 INFO L273 TraceCheckUtils]: 29: Hoare triple {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,537 INFO L273 TraceCheckUtils]: 30: Hoare triple {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,538 INFO L273 TraceCheckUtils]: 31: Hoare triple {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,539 INFO L273 TraceCheckUtils]: 32: Hoare triple {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,539 INFO L273 TraceCheckUtils]: 33: Hoare triple {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,540 INFO L273 TraceCheckUtils]: 34: Hoare triple {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,541 INFO L273 TraceCheckUtils]: 35: Hoare triple {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,542 INFO L273 TraceCheckUtils]: 36: Hoare triple {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,543 INFO L273 TraceCheckUtils]: 37: Hoare triple {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,543 INFO L273 TraceCheckUtils]: 38: Hoare triple {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,544 INFO L273 TraceCheckUtils]: 39: Hoare triple {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,545 INFO L273 TraceCheckUtils]: 40: Hoare triple {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,546 INFO L273 TraceCheckUtils]: 41: Hoare triple {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,547 INFO L273 TraceCheckUtils]: 42: Hoare triple {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,547 INFO L273 TraceCheckUtils]: 43: Hoare triple {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < 100000); {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,548 INFO L273 TraceCheckUtils]: 44: Hoare triple {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} assume !(0 != ~swapped~0); {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,549 INFO L273 TraceCheckUtils]: 45: Hoare triple {7733#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= |main_~#a~0.offset| 0))} havoc ~x~0;havoc ~y~0;~x~0 := 0; {7818#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,550 INFO L273 TraceCheckUtils]: 46: Hoare triple {7818#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {7822#(and (= (+ main_~x~0 1) main_~y~0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,551 INFO L273 TraceCheckUtils]: 47: Hoare triple {7822#(and (= (+ main_~x~0 1) main_~y~0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {7822#(and (= (+ main_~x~0 1) main_~y~0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,553 INFO L256 TraceCheckUtils]: 48: Hoare triple {7822#(and (= (+ main_~x~0 1) main_~y~0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {7829#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 16)))} is VALID [2018-11-23 12:00:18,553 INFO L273 TraceCheckUtils]: 49: Hoare triple {7829#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 16)))} ~cond := #in~cond; {7829#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 16)))} is VALID [2018-11-23 12:00:18,554 INFO L273 TraceCheckUtils]: 50: Hoare triple {7829#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 16)))} assume !(0 == ~cond); {7829#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 16)))} is VALID [2018-11-23 12:00:18,554 INFO L273 TraceCheckUtils]: 51: Hoare triple {7829#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 16)))} assume true; {7829#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 16)))} is VALID [2018-11-23 12:00:18,555 INFO L268 TraceCheckUtils]: 52: Hoare quadruple {7829#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 16)))} {7822#(and (= (+ main_~x~0 1) main_~y~0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} #83#return; {7822#(and (= (+ main_~x~0 1) main_~y~0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,556 INFO L273 TraceCheckUtils]: 53: Hoare triple {7822#(and (= (+ main_~x~0 1) main_~y~0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} havoc #t~mem6;havoc #t~mem7; {7822#(and (= (+ main_~x~0 1) main_~y~0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,558 INFO L273 TraceCheckUtils]: 54: Hoare triple {7822#(and (= (+ main_~x~0 1) main_~y~0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {7848#(and (= (+ main_~x~0 2) main_~y~0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,559 INFO L273 TraceCheckUtils]: 55: Hoare triple {7848#(and (= (+ main_~x~0 2) main_~y~0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {7848#(and (= (+ main_~x~0 2) main_~y~0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,560 INFO L256 TraceCheckUtils]: 56: Hoare triple {7848#(and (= (+ main_~x~0 2) main_~y~0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {7829#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 16)))} is VALID [2018-11-23 12:00:18,561 INFO L273 TraceCheckUtils]: 57: Hoare triple {7829#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 16)))} ~cond := #in~cond; {7829#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 16)))} is VALID [2018-11-23 12:00:18,561 INFO L273 TraceCheckUtils]: 58: Hoare triple {7829#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 16)))} assume !(0 == ~cond); {7829#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 16)))} is VALID [2018-11-23 12:00:18,562 INFO L273 TraceCheckUtils]: 59: Hoare triple {7829#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 16)))} assume true; {7829#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 16)))} is VALID [2018-11-23 12:00:18,563 INFO L268 TraceCheckUtils]: 60: Hoare quadruple {7829#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 16)))} {7848#(and (= (+ main_~x~0 2) main_~y~0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} #83#return; {7848#(and (= (+ main_~x~0 2) main_~y~0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,564 INFO L273 TraceCheckUtils]: 61: Hoare triple {7848#(and (= (+ main_~x~0 2) main_~y~0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} havoc #t~mem6;havoc #t~mem7; {7848#(and (= (+ main_~x~0 2) main_~y~0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,565 INFO L273 TraceCheckUtils]: 62: Hoare triple {7848#(and (= (+ main_~x~0 2) main_~y~0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (= |main_~#a~0.offset| 0))} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {7873#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (= (+ main_~x~0 3) main_~y~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,566 INFO L273 TraceCheckUtils]: 63: Hoare triple {7873#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (= (+ main_~x~0 3) main_~y~0) (= |main_~#a~0.offset| 0))} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {7877#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) |main_#t~mem6|) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (<= |main_#t~mem7| (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~y~0) |main_~#a~0.offset|))) (= (+ main_~x~0 3) main_~y~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,568 INFO L256 TraceCheckUtils]: 64: Hoare triple {7877#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) |main_#t~mem6|) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (<= |main_#t~mem7| (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~y~0) |main_~#a~0.offset|))) (= (+ main_~x~0 3) main_~y~0) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {7829#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 16)))} is VALID [2018-11-23 12:00:18,569 INFO L273 TraceCheckUtils]: 65: Hoare triple {7829#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 16)))} ~cond := #in~cond; {7884#(and (exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 16))) (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond))} is VALID [2018-11-23 12:00:18,570 INFO L273 TraceCheckUtils]: 66: Hoare triple {7884#(and (exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 16))) (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond))} assume !(0 == ~cond); {7888#(and (not (= |__VERIFIER_assert_#in~cond| 0)) (exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 16))))} is VALID [2018-11-23 12:00:18,571 INFO L273 TraceCheckUtils]: 67: Hoare triple {7888#(and (not (= |__VERIFIER_assert_#in~cond| 0)) (exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 16))))} assume true; {7888#(and (not (= |__VERIFIER_assert_#in~cond| 0)) (exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 16))))} is VALID [2018-11-23 12:00:18,573 INFO L268 TraceCheckUtils]: 68: Hoare quadruple {7888#(and (not (= |__VERIFIER_assert_#in~cond| 0)) (exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 12) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 16))))} {7877#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) |main_#t~mem6|) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (<= |main_#t~mem7| (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~y~0) |main_~#a~0.offset|))) (= (+ main_~x~0 3) main_~y~0) (= |main_~#a~0.offset| 0))} #83#return; {7895#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~y~0) |main_~#a~0.offset|))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (= (+ main_~x~0 3) main_~y~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,574 INFO L273 TraceCheckUtils]: 69: Hoare triple {7895#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~y~0) |main_~#a~0.offset|))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (= (+ main_~x~0 3) main_~y~0) (= |main_~#a~0.offset| 0))} havoc #t~mem6;havoc #t~mem7; {7895#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~y~0) |main_~#a~0.offset|))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (= (+ main_~x~0 3) main_~y~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,576 INFO L273 TraceCheckUtils]: 70: Hoare triple {7895#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~y~0) |main_~#a~0.offset|))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (= (+ main_~x~0 3) main_~y~0) (= |main_~#a~0.offset| 0))} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {7902#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset| 12))) (= main_~y~0 (+ main_~x~0 4)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:00:18,577 INFO L273 TraceCheckUtils]: 71: Hoare triple {7902#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 12)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16))) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset| 12))) (= main_~y~0 (+ main_~x~0 4)) (= |main_~#a~0.offset| 0))} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {7906#(<= |main_#t~mem6| |main_#t~mem7|)} is VALID [2018-11-23 12:00:18,578 INFO L256 TraceCheckUtils]: 72: Hoare triple {7906#(<= |main_#t~mem6| |main_#t~mem7|)} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {7910#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:00:18,579 INFO L273 TraceCheckUtils]: 73: Hoare triple {7910#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {7914#(= 1 __VERIFIER_assert_~cond)} is VALID [2018-11-23 12:00:18,579 INFO L273 TraceCheckUtils]: 74: Hoare triple {7914#(= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7659#false} is VALID [2018-11-23 12:00:18,579 INFO L273 TraceCheckUtils]: 75: Hoare triple {7659#false} assume !false; {7659#false} is VALID [2018-11-23 12:00:18,597 INFO L134 CoverageAnalysis]: Checked inductivity of 247 backedges. 6 proven. 135 refuted. 0 times theorem prover too weak. 106 trivial. 0 not checked. [2018-11-23 12:00:18,616 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:00:18,616 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 22] total 35 [2018-11-23 12:00:18,616 INFO L78 Accepts]: Start accepts. Automaton has 35 states. Word has length 76 [2018-11-23 12:00:18,617 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:00:18,617 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 35 states. [2018-11-23 12:00:18,753 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 104 edges. 104 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:00:18,754 INFO L459 AbstractCegarLoop]: Interpolant automaton has 35 states [2018-11-23 12:00:18,754 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 35 interpolants. [2018-11-23 12:00:18,755 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=216, Invalid=974, Unknown=0, NotChecked=0, Total=1190 [2018-11-23 12:00:18,755 INFO L87 Difference]: Start difference. First operand 116 states and 143 transitions. Second operand 35 states. [2018-11-23 12:01:01,735 WARN L180 SmtUtils]: Spent 103.00 ms on a formula simplification that was a NOOP. DAG size: 17 [2018-11-23 12:01:01,865 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:01:01,865 INFO L93 Difference]: Finished difference Result 294 states and 374 transitions. [2018-11-23 12:01:01,865 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 66 states. [2018-11-23 12:01:01,866 INFO L78 Accepts]: Start accepts. Automaton has 35 states. Word has length 76 [2018-11-23 12:01:01,866 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:01:01,866 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 35 states. [2018-11-23 12:01:01,870 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 66 states to 66 states and 249 transitions. [2018-11-23 12:01:01,870 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 35 states. [2018-11-23 12:01:01,876 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 66 states to 66 states and 249 transitions. [2018-11-23 12:01:01,880 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 66 states and 249 transitions. [2018-11-23 12:01:03,261 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 249 edges. 249 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:01:03,265 INFO L225 Difference]: With dead ends: 294 [2018-11-23 12:01:03,265 INFO L226 Difference]: Without dead ends: 184 [2018-11-23 12:01:03,268 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 139 GetRequests, 53 SyntacticMatches, 4 SemanticMatches, 82 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2194 ImplicationChecksByTransitivity, 2.9s TimeCoverageRelationStatistics Valid=1053, Invalid=5919, Unknown=0, NotChecked=0, Total=6972 [2018-11-23 12:01:03,268 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 184 states. [2018-11-23 12:01:03,525 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 184 to 130. [2018-11-23 12:01:03,525 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:01:03,525 INFO L82 GeneralOperation]: Start isEquivalent. First operand 184 states. Second operand 130 states. [2018-11-23 12:01:03,526 INFO L74 IsIncluded]: Start isIncluded. First operand 184 states. Second operand 130 states. [2018-11-23 12:01:03,526 INFO L87 Difference]: Start difference. First operand 184 states. Second operand 130 states. [2018-11-23 12:01:03,531 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:01:03,532 INFO L93 Difference]: Finished difference Result 184 states and 232 transitions. [2018-11-23 12:01:03,532 INFO L276 IsEmpty]: Start isEmpty. Operand 184 states and 232 transitions. [2018-11-23 12:01:03,532 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:01:03,532 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:01:03,532 INFO L74 IsIncluded]: Start isIncluded. First operand 130 states. Second operand 184 states. [2018-11-23 12:01:03,533 INFO L87 Difference]: Start difference. First operand 130 states. Second operand 184 states. [2018-11-23 12:01:03,536 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:01:03,537 INFO L93 Difference]: Finished difference Result 184 states and 232 transitions. [2018-11-23 12:01:03,537 INFO L276 IsEmpty]: Start isEmpty. Operand 184 states and 232 transitions. [2018-11-23 12:01:03,537 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:01:03,538 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:01:03,538 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:01:03,538 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:01:03,538 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 130 states. [2018-11-23 12:01:03,541 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 130 states to 130 states and 159 transitions. [2018-11-23 12:01:03,541 INFO L78 Accepts]: Start accepts. Automaton has 130 states and 159 transitions. Word has length 76 [2018-11-23 12:01:03,541 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:01:03,541 INFO L480 AbstractCegarLoop]: Abstraction has 130 states and 159 transitions. [2018-11-23 12:01:03,541 INFO L481 AbstractCegarLoop]: Interpolant automaton has 35 states. [2018-11-23 12:01:03,541 INFO L276 IsEmpty]: Start isEmpty. Operand 130 states and 159 transitions. [2018-11-23 12:01:03,542 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 88 [2018-11-23 12:01:03,542 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:01:03,542 INFO L402 BasicCegarLoop]: trace histogram [13, 13, 13, 5, 5, 5, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:01:03,543 INFO L423 AbstractCegarLoop]: === Iteration 16 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:01:03,543 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:01:03,543 INFO L82 PathProgramCache]: Analyzing trace with hash 1735117332, now seen corresponding path program 10 times [2018-11-23 12:01:03,543 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:01:03,543 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:01:03,544 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:01:03,544 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:01:03,544 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:01:03,558 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:01:03,771 INFO L256 TraceCheckUtils]: 0: Hoare triple {8968#true} call ULTIMATE.init(); {8968#true} is VALID [2018-11-23 12:01:03,771 INFO L273 TraceCheckUtils]: 1: Hoare triple {8968#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {8968#true} is VALID [2018-11-23 12:01:03,771 INFO L273 TraceCheckUtils]: 2: Hoare triple {8968#true} assume true; {8968#true} is VALID [2018-11-23 12:01:03,771 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {8968#true} {8968#true} #79#return; {8968#true} is VALID [2018-11-23 12:01:03,771 INFO L256 TraceCheckUtils]: 4: Hoare triple {8968#true} call #t~ret8 := main(); {8968#true} is VALID [2018-11-23 12:01:03,771 INFO L273 TraceCheckUtils]: 5: Hoare triple {8968#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {8968#true} is VALID [2018-11-23 12:01:03,772 INFO L273 TraceCheckUtils]: 6: Hoare triple {8968#true} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {8970#(= main_~i~0 1)} is VALID [2018-11-23 12:01:03,772 INFO L273 TraceCheckUtils]: 7: Hoare triple {8970#(= main_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8970#(= main_~i~0 1)} is VALID [2018-11-23 12:01:03,773 INFO L273 TraceCheckUtils]: 8: Hoare triple {8970#(= main_~i~0 1)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {8970#(= main_~i~0 1)} is VALID [2018-11-23 12:01:03,774 INFO L273 TraceCheckUtils]: 9: Hoare triple {8970#(= main_~i~0 1)} ~i~0 := 1 + ~i~0; {8971#(<= main_~i~0 2)} is VALID [2018-11-23 12:01:03,774 INFO L273 TraceCheckUtils]: 10: Hoare triple {8971#(<= main_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8971#(<= main_~i~0 2)} is VALID [2018-11-23 12:01:03,774 INFO L273 TraceCheckUtils]: 11: Hoare triple {8971#(<= main_~i~0 2)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {8971#(<= main_~i~0 2)} is VALID [2018-11-23 12:01:03,775 INFO L273 TraceCheckUtils]: 12: Hoare triple {8971#(<= main_~i~0 2)} ~i~0 := 1 + ~i~0; {8972#(<= main_~i~0 3)} is VALID [2018-11-23 12:01:03,775 INFO L273 TraceCheckUtils]: 13: Hoare triple {8972#(<= main_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8972#(<= main_~i~0 3)} is VALID [2018-11-23 12:01:03,775 INFO L273 TraceCheckUtils]: 14: Hoare triple {8972#(<= main_~i~0 3)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {8972#(<= main_~i~0 3)} is VALID [2018-11-23 12:01:03,776 INFO L273 TraceCheckUtils]: 15: Hoare triple {8972#(<= main_~i~0 3)} ~i~0 := 1 + ~i~0; {8973#(<= main_~i~0 4)} is VALID [2018-11-23 12:01:03,777 INFO L273 TraceCheckUtils]: 16: Hoare triple {8973#(<= main_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8973#(<= main_~i~0 4)} is VALID [2018-11-23 12:01:03,777 INFO L273 TraceCheckUtils]: 17: Hoare triple {8973#(<= main_~i~0 4)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {8973#(<= main_~i~0 4)} is VALID [2018-11-23 12:01:03,778 INFO L273 TraceCheckUtils]: 18: Hoare triple {8973#(<= main_~i~0 4)} ~i~0 := 1 + ~i~0; {8974#(<= main_~i~0 5)} is VALID [2018-11-23 12:01:03,778 INFO L273 TraceCheckUtils]: 19: Hoare triple {8974#(<= main_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8974#(<= main_~i~0 5)} is VALID [2018-11-23 12:01:03,779 INFO L273 TraceCheckUtils]: 20: Hoare triple {8974#(<= main_~i~0 5)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {8974#(<= main_~i~0 5)} is VALID [2018-11-23 12:01:03,780 INFO L273 TraceCheckUtils]: 21: Hoare triple {8974#(<= main_~i~0 5)} ~i~0 := 1 + ~i~0; {8975#(<= main_~i~0 6)} is VALID [2018-11-23 12:01:03,780 INFO L273 TraceCheckUtils]: 22: Hoare triple {8975#(<= main_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8975#(<= main_~i~0 6)} is VALID [2018-11-23 12:01:03,781 INFO L273 TraceCheckUtils]: 23: Hoare triple {8975#(<= main_~i~0 6)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {8975#(<= main_~i~0 6)} is VALID [2018-11-23 12:01:03,782 INFO L273 TraceCheckUtils]: 24: Hoare triple {8975#(<= main_~i~0 6)} ~i~0 := 1 + ~i~0; {8976#(<= main_~i~0 7)} is VALID [2018-11-23 12:01:03,782 INFO L273 TraceCheckUtils]: 25: Hoare triple {8976#(<= main_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8976#(<= main_~i~0 7)} is VALID [2018-11-23 12:01:03,783 INFO L273 TraceCheckUtils]: 26: Hoare triple {8976#(<= main_~i~0 7)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {8976#(<= main_~i~0 7)} is VALID [2018-11-23 12:01:03,783 INFO L273 TraceCheckUtils]: 27: Hoare triple {8976#(<= main_~i~0 7)} ~i~0 := 1 + ~i~0; {8977#(<= main_~i~0 8)} is VALID [2018-11-23 12:01:03,784 INFO L273 TraceCheckUtils]: 28: Hoare triple {8977#(<= main_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8977#(<= main_~i~0 8)} is VALID [2018-11-23 12:01:03,784 INFO L273 TraceCheckUtils]: 29: Hoare triple {8977#(<= main_~i~0 8)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {8977#(<= main_~i~0 8)} is VALID [2018-11-23 12:01:03,785 INFO L273 TraceCheckUtils]: 30: Hoare triple {8977#(<= main_~i~0 8)} ~i~0 := 1 + ~i~0; {8978#(<= main_~i~0 9)} is VALID [2018-11-23 12:01:03,786 INFO L273 TraceCheckUtils]: 31: Hoare triple {8978#(<= main_~i~0 9)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8978#(<= main_~i~0 9)} is VALID [2018-11-23 12:01:03,786 INFO L273 TraceCheckUtils]: 32: Hoare triple {8978#(<= main_~i~0 9)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {8978#(<= main_~i~0 9)} is VALID [2018-11-23 12:01:03,787 INFO L273 TraceCheckUtils]: 33: Hoare triple {8978#(<= main_~i~0 9)} ~i~0 := 1 + ~i~0; {8979#(<= main_~i~0 10)} is VALID [2018-11-23 12:01:03,788 INFO L273 TraceCheckUtils]: 34: Hoare triple {8979#(<= main_~i~0 10)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8979#(<= main_~i~0 10)} is VALID [2018-11-23 12:01:03,788 INFO L273 TraceCheckUtils]: 35: Hoare triple {8979#(<= main_~i~0 10)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {8979#(<= main_~i~0 10)} is VALID [2018-11-23 12:01:03,789 INFO L273 TraceCheckUtils]: 36: Hoare triple {8979#(<= main_~i~0 10)} ~i~0 := 1 + ~i~0; {8980#(<= main_~i~0 11)} is VALID [2018-11-23 12:01:03,789 INFO L273 TraceCheckUtils]: 37: Hoare triple {8980#(<= main_~i~0 11)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8980#(<= main_~i~0 11)} is VALID [2018-11-23 12:01:03,790 INFO L273 TraceCheckUtils]: 38: Hoare triple {8980#(<= main_~i~0 11)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {8980#(<= main_~i~0 11)} is VALID [2018-11-23 12:01:03,791 INFO L273 TraceCheckUtils]: 39: Hoare triple {8980#(<= main_~i~0 11)} ~i~0 := 1 + ~i~0; {8981#(<= main_~i~0 12)} is VALID [2018-11-23 12:01:03,791 INFO L273 TraceCheckUtils]: 40: Hoare triple {8981#(<= main_~i~0 12)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8981#(<= main_~i~0 12)} is VALID [2018-11-23 12:01:03,792 INFO L273 TraceCheckUtils]: 41: Hoare triple {8981#(<= main_~i~0 12)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {8981#(<= main_~i~0 12)} is VALID [2018-11-23 12:01:03,793 INFO L273 TraceCheckUtils]: 42: Hoare triple {8981#(<= main_~i~0 12)} ~i~0 := 1 + ~i~0; {8982#(<= main_~i~0 13)} is VALID [2018-11-23 12:01:03,793 INFO L273 TraceCheckUtils]: 43: Hoare triple {8982#(<= main_~i~0 13)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8982#(<= main_~i~0 13)} is VALID [2018-11-23 12:01:03,794 INFO L273 TraceCheckUtils]: 44: Hoare triple {8982#(<= main_~i~0 13)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {8982#(<= main_~i~0 13)} is VALID [2018-11-23 12:01:03,794 INFO L273 TraceCheckUtils]: 45: Hoare triple {8982#(<= main_~i~0 13)} ~i~0 := 1 + ~i~0; {8983#(<= main_~i~0 14)} is VALID [2018-11-23 12:01:03,795 INFO L273 TraceCheckUtils]: 46: Hoare triple {8983#(<= main_~i~0 14)} assume !(~i~0 < 100000); {8969#false} is VALID [2018-11-23 12:01:03,795 INFO L273 TraceCheckUtils]: 47: Hoare triple {8969#false} assume !(0 != ~swapped~0); {8969#false} is VALID [2018-11-23 12:01:03,796 INFO L273 TraceCheckUtils]: 48: Hoare triple {8969#false} havoc ~x~0;havoc ~y~0;~x~0 := 0; {8969#false} is VALID [2018-11-23 12:01:03,796 INFO L273 TraceCheckUtils]: 49: Hoare triple {8969#false} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {8969#false} is VALID [2018-11-23 12:01:03,796 INFO L273 TraceCheckUtils]: 50: Hoare triple {8969#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {8969#false} is VALID [2018-11-23 12:01:03,796 INFO L256 TraceCheckUtils]: 51: Hoare triple {8969#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {8968#true} is VALID [2018-11-23 12:01:03,796 INFO L273 TraceCheckUtils]: 52: Hoare triple {8968#true} ~cond := #in~cond; {8968#true} is VALID [2018-11-23 12:01:03,797 INFO L273 TraceCheckUtils]: 53: Hoare triple {8968#true} assume !(0 == ~cond); {8968#true} is VALID [2018-11-23 12:01:03,797 INFO L273 TraceCheckUtils]: 54: Hoare triple {8968#true} assume true; {8968#true} is VALID [2018-11-23 12:01:03,797 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {8968#true} {8969#false} #83#return; {8969#false} is VALID [2018-11-23 12:01:03,797 INFO L273 TraceCheckUtils]: 56: Hoare triple {8969#false} havoc #t~mem6;havoc #t~mem7; {8969#false} is VALID [2018-11-23 12:01:03,797 INFO L273 TraceCheckUtils]: 57: Hoare triple {8969#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {8969#false} is VALID [2018-11-23 12:01:03,798 INFO L273 TraceCheckUtils]: 58: Hoare triple {8969#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {8969#false} is VALID [2018-11-23 12:01:03,798 INFO L256 TraceCheckUtils]: 59: Hoare triple {8969#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {8968#true} is VALID [2018-11-23 12:01:03,798 INFO L273 TraceCheckUtils]: 60: Hoare triple {8968#true} ~cond := #in~cond; {8968#true} is VALID [2018-11-23 12:01:03,798 INFO L273 TraceCheckUtils]: 61: Hoare triple {8968#true} assume !(0 == ~cond); {8968#true} is VALID [2018-11-23 12:01:03,798 INFO L273 TraceCheckUtils]: 62: Hoare triple {8968#true} assume true; {8968#true} is VALID [2018-11-23 12:01:03,799 INFO L268 TraceCheckUtils]: 63: Hoare quadruple {8968#true} {8969#false} #83#return; {8969#false} is VALID [2018-11-23 12:01:03,799 INFO L273 TraceCheckUtils]: 64: Hoare triple {8969#false} havoc #t~mem6;havoc #t~mem7; {8969#false} is VALID [2018-11-23 12:01:03,799 INFO L273 TraceCheckUtils]: 65: Hoare triple {8969#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {8969#false} is VALID [2018-11-23 12:01:03,799 INFO L273 TraceCheckUtils]: 66: Hoare triple {8969#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {8969#false} is VALID [2018-11-23 12:01:03,799 INFO L256 TraceCheckUtils]: 67: Hoare triple {8969#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {8968#true} is VALID [2018-11-23 12:01:03,800 INFO L273 TraceCheckUtils]: 68: Hoare triple {8968#true} ~cond := #in~cond; {8968#true} is VALID [2018-11-23 12:01:03,800 INFO L273 TraceCheckUtils]: 69: Hoare triple {8968#true} assume !(0 == ~cond); {8968#true} is VALID [2018-11-23 12:01:03,800 INFO L273 TraceCheckUtils]: 70: Hoare triple {8968#true} assume true; {8968#true} is VALID [2018-11-23 12:01:03,800 INFO L268 TraceCheckUtils]: 71: Hoare quadruple {8968#true} {8969#false} #83#return; {8969#false} is VALID [2018-11-23 12:01:03,800 INFO L273 TraceCheckUtils]: 72: Hoare triple {8969#false} havoc #t~mem6;havoc #t~mem7; {8969#false} is VALID [2018-11-23 12:01:03,800 INFO L273 TraceCheckUtils]: 73: Hoare triple {8969#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {8969#false} is VALID [2018-11-23 12:01:03,800 INFO L273 TraceCheckUtils]: 74: Hoare triple {8969#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {8969#false} is VALID [2018-11-23 12:01:03,801 INFO L256 TraceCheckUtils]: 75: Hoare triple {8969#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {8968#true} is VALID [2018-11-23 12:01:03,801 INFO L273 TraceCheckUtils]: 76: Hoare triple {8968#true} ~cond := #in~cond; {8968#true} is VALID [2018-11-23 12:01:03,801 INFO L273 TraceCheckUtils]: 77: Hoare triple {8968#true} assume !(0 == ~cond); {8968#true} is VALID [2018-11-23 12:01:03,801 INFO L273 TraceCheckUtils]: 78: Hoare triple {8968#true} assume true; {8968#true} is VALID [2018-11-23 12:01:03,801 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {8968#true} {8969#false} #83#return; {8969#false} is VALID [2018-11-23 12:01:03,801 INFO L273 TraceCheckUtils]: 80: Hoare triple {8969#false} havoc #t~mem6;havoc #t~mem7; {8969#false} is VALID [2018-11-23 12:01:03,801 INFO L273 TraceCheckUtils]: 81: Hoare triple {8969#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {8969#false} is VALID [2018-11-23 12:01:03,801 INFO L273 TraceCheckUtils]: 82: Hoare triple {8969#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {8969#false} is VALID [2018-11-23 12:01:03,801 INFO L256 TraceCheckUtils]: 83: Hoare triple {8969#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {8969#false} is VALID [2018-11-23 12:01:03,802 INFO L273 TraceCheckUtils]: 84: Hoare triple {8969#false} ~cond := #in~cond; {8969#false} is VALID [2018-11-23 12:01:03,802 INFO L273 TraceCheckUtils]: 85: Hoare triple {8969#false} assume 0 == ~cond; {8969#false} is VALID [2018-11-23 12:01:03,802 INFO L273 TraceCheckUtils]: 86: Hoare triple {8969#false} assume !false; {8969#false} is VALID [2018-11-23 12:01:03,808 INFO L134 CoverageAnalysis]: Checked inductivity of 312 backedges. 9 proven. 247 refuted. 0 times theorem prover too weak. 56 trivial. 0 not checked. [2018-11-23 12:01:03,809 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:01:03,809 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 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:01:03,823 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 12:01:03,859 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 12:01:03,859 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:01:03,879 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:01:03,880 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:01:04,344 INFO L256 TraceCheckUtils]: 0: Hoare triple {8968#true} call ULTIMATE.init(); {8968#true} is VALID [2018-11-23 12:01:04,344 INFO L273 TraceCheckUtils]: 1: Hoare triple {8968#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {8968#true} is VALID [2018-11-23 12:01:04,345 INFO L273 TraceCheckUtils]: 2: Hoare triple {8968#true} assume true; {8968#true} is VALID [2018-11-23 12:01:04,345 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {8968#true} {8968#true} #79#return; {8968#true} is VALID [2018-11-23 12:01:04,345 INFO L256 TraceCheckUtils]: 4: Hoare triple {8968#true} call #t~ret8 := main(); {8968#true} is VALID [2018-11-23 12:01:04,345 INFO L273 TraceCheckUtils]: 5: Hoare triple {8968#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {8968#true} is VALID [2018-11-23 12:01:04,346 INFO L273 TraceCheckUtils]: 6: Hoare triple {8968#true} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {9005#(<= main_~i~0 1)} is VALID [2018-11-23 12:01:04,347 INFO L273 TraceCheckUtils]: 7: Hoare triple {9005#(<= main_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {9005#(<= main_~i~0 1)} is VALID [2018-11-23 12:01:04,347 INFO L273 TraceCheckUtils]: 8: Hoare triple {9005#(<= main_~i~0 1)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {9005#(<= main_~i~0 1)} is VALID [2018-11-23 12:01:04,347 INFO L273 TraceCheckUtils]: 9: Hoare triple {9005#(<= main_~i~0 1)} ~i~0 := 1 + ~i~0; {8971#(<= main_~i~0 2)} is VALID [2018-11-23 12:01:04,348 INFO L273 TraceCheckUtils]: 10: Hoare triple {8971#(<= main_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8971#(<= main_~i~0 2)} is VALID [2018-11-23 12:01:04,348 INFO L273 TraceCheckUtils]: 11: Hoare triple {8971#(<= main_~i~0 2)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {8971#(<= main_~i~0 2)} is VALID [2018-11-23 12:01:04,349 INFO L273 TraceCheckUtils]: 12: Hoare triple {8971#(<= main_~i~0 2)} ~i~0 := 1 + ~i~0; {8972#(<= main_~i~0 3)} is VALID [2018-11-23 12:01:04,349 INFO L273 TraceCheckUtils]: 13: Hoare triple {8972#(<= main_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8972#(<= main_~i~0 3)} is VALID [2018-11-23 12:01:04,350 INFO L273 TraceCheckUtils]: 14: Hoare triple {8972#(<= main_~i~0 3)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {8972#(<= main_~i~0 3)} is VALID [2018-11-23 12:01:04,350 INFO L273 TraceCheckUtils]: 15: Hoare triple {8972#(<= main_~i~0 3)} ~i~0 := 1 + ~i~0; {8973#(<= main_~i~0 4)} is VALID [2018-11-23 12:01:04,351 INFO L273 TraceCheckUtils]: 16: Hoare triple {8973#(<= main_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8973#(<= main_~i~0 4)} is VALID [2018-11-23 12:01:04,351 INFO L273 TraceCheckUtils]: 17: Hoare triple {8973#(<= main_~i~0 4)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {8973#(<= main_~i~0 4)} is VALID [2018-11-23 12:01:04,352 INFO L273 TraceCheckUtils]: 18: Hoare triple {8973#(<= main_~i~0 4)} ~i~0 := 1 + ~i~0; {8974#(<= main_~i~0 5)} is VALID [2018-11-23 12:01:04,353 INFO L273 TraceCheckUtils]: 19: Hoare triple {8974#(<= main_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8974#(<= main_~i~0 5)} is VALID [2018-11-23 12:01:04,353 INFO L273 TraceCheckUtils]: 20: Hoare triple {8974#(<= main_~i~0 5)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {8974#(<= main_~i~0 5)} is VALID [2018-11-23 12:01:04,354 INFO L273 TraceCheckUtils]: 21: Hoare triple {8974#(<= main_~i~0 5)} ~i~0 := 1 + ~i~0; {8975#(<= main_~i~0 6)} is VALID [2018-11-23 12:01:04,355 INFO L273 TraceCheckUtils]: 22: Hoare triple {8975#(<= main_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8975#(<= main_~i~0 6)} is VALID [2018-11-23 12:01:04,355 INFO L273 TraceCheckUtils]: 23: Hoare triple {8975#(<= main_~i~0 6)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {8975#(<= main_~i~0 6)} is VALID [2018-11-23 12:01:04,356 INFO L273 TraceCheckUtils]: 24: Hoare triple {8975#(<= main_~i~0 6)} ~i~0 := 1 + ~i~0; {8976#(<= main_~i~0 7)} is VALID [2018-11-23 12:01:04,356 INFO L273 TraceCheckUtils]: 25: Hoare triple {8976#(<= main_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8976#(<= main_~i~0 7)} is VALID [2018-11-23 12:01:04,357 INFO L273 TraceCheckUtils]: 26: Hoare triple {8976#(<= main_~i~0 7)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {8976#(<= main_~i~0 7)} is VALID [2018-11-23 12:01:04,358 INFO L273 TraceCheckUtils]: 27: Hoare triple {8976#(<= main_~i~0 7)} ~i~0 := 1 + ~i~0; {8977#(<= main_~i~0 8)} is VALID [2018-11-23 12:01:04,358 INFO L273 TraceCheckUtils]: 28: Hoare triple {8977#(<= main_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8977#(<= main_~i~0 8)} is VALID [2018-11-23 12:01:04,359 INFO L273 TraceCheckUtils]: 29: Hoare triple {8977#(<= main_~i~0 8)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {8977#(<= main_~i~0 8)} is VALID [2018-11-23 12:01:04,359 INFO L273 TraceCheckUtils]: 30: Hoare triple {8977#(<= main_~i~0 8)} ~i~0 := 1 + ~i~0; {8978#(<= main_~i~0 9)} is VALID [2018-11-23 12:01:04,385 INFO L273 TraceCheckUtils]: 31: Hoare triple {8978#(<= main_~i~0 9)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8978#(<= main_~i~0 9)} is VALID [2018-11-23 12:01:04,391 INFO L273 TraceCheckUtils]: 32: Hoare triple {8978#(<= main_~i~0 9)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {8978#(<= main_~i~0 9)} is VALID [2018-11-23 12:01:04,392 INFO L273 TraceCheckUtils]: 33: Hoare triple {8978#(<= main_~i~0 9)} ~i~0 := 1 + ~i~0; {8979#(<= main_~i~0 10)} is VALID [2018-11-23 12:01:04,392 INFO L273 TraceCheckUtils]: 34: Hoare triple {8979#(<= main_~i~0 10)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8979#(<= main_~i~0 10)} is VALID [2018-11-23 12:01:04,393 INFO L273 TraceCheckUtils]: 35: Hoare triple {8979#(<= main_~i~0 10)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {8979#(<= main_~i~0 10)} is VALID [2018-11-23 12:01:04,393 INFO L273 TraceCheckUtils]: 36: Hoare triple {8979#(<= main_~i~0 10)} ~i~0 := 1 + ~i~0; {8980#(<= main_~i~0 11)} is VALID [2018-11-23 12:01:04,394 INFO L273 TraceCheckUtils]: 37: Hoare triple {8980#(<= main_~i~0 11)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8980#(<= main_~i~0 11)} is VALID [2018-11-23 12:01:04,394 INFO L273 TraceCheckUtils]: 38: Hoare triple {8980#(<= main_~i~0 11)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {8980#(<= main_~i~0 11)} is VALID [2018-11-23 12:01:04,394 INFO L273 TraceCheckUtils]: 39: Hoare triple {8980#(<= main_~i~0 11)} ~i~0 := 1 + ~i~0; {8981#(<= main_~i~0 12)} is VALID [2018-11-23 12:01:04,395 INFO L273 TraceCheckUtils]: 40: Hoare triple {8981#(<= main_~i~0 12)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8981#(<= main_~i~0 12)} is VALID [2018-11-23 12:01:04,395 INFO L273 TraceCheckUtils]: 41: Hoare triple {8981#(<= main_~i~0 12)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {8981#(<= main_~i~0 12)} is VALID [2018-11-23 12:01:04,395 INFO L273 TraceCheckUtils]: 42: Hoare triple {8981#(<= main_~i~0 12)} ~i~0 := 1 + ~i~0; {8982#(<= main_~i~0 13)} is VALID [2018-11-23 12:01:04,396 INFO L273 TraceCheckUtils]: 43: Hoare triple {8982#(<= main_~i~0 13)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {8982#(<= main_~i~0 13)} is VALID [2018-11-23 12:01:04,396 INFO L273 TraceCheckUtils]: 44: Hoare triple {8982#(<= main_~i~0 13)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {8982#(<= main_~i~0 13)} is VALID [2018-11-23 12:01:04,397 INFO L273 TraceCheckUtils]: 45: Hoare triple {8982#(<= main_~i~0 13)} ~i~0 := 1 + ~i~0; {8983#(<= main_~i~0 14)} is VALID [2018-11-23 12:01:04,398 INFO L273 TraceCheckUtils]: 46: Hoare triple {8983#(<= main_~i~0 14)} assume !(~i~0 < 100000); {8969#false} is VALID [2018-11-23 12:01:04,398 INFO L273 TraceCheckUtils]: 47: Hoare triple {8969#false} assume !(0 != ~swapped~0); {8969#false} is VALID [2018-11-23 12:01:04,398 INFO L273 TraceCheckUtils]: 48: Hoare triple {8969#false} havoc ~x~0;havoc ~y~0;~x~0 := 0; {8969#false} is VALID [2018-11-23 12:01:04,398 INFO L273 TraceCheckUtils]: 49: Hoare triple {8969#false} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {8969#false} is VALID [2018-11-23 12:01:04,399 INFO L273 TraceCheckUtils]: 50: Hoare triple {8969#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {8969#false} is VALID [2018-11-23 12:01:04,399 INFO L256 TraceCheckUtils]: 51: Hoare triple {8969#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {8969#false} is VALID [2018-11-23 12:01:04,399 INFO L273 TraceCheckUtils]: 52: Hoare triple {8969#false} ~cond := #in~cond; {8969#false} is VALID [2018-11-23 12:01:04,399 INFO L273 TraceCheckUtils]: 53: Hoare triple {8969#false} assume !(0 == ~cond); {8969#false} is VALID [2018-11-23 12:01:04,399 INFO L273 TraceCheckUtils]: 54: Hoare triple {8969#false} assume true; {8969#false} is VALID [2018-11-23 12:01:04,400 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {8969#false} {8969#false} #83#return; {8969#false} is VALID [2018-11-23 12:01:04,400 INFO L273 TraceCheckUtils]: 56: Hoare triple {8969#false} havoc #t~mem6;havoc #t~mem7; {8969#false} is VALID [2018-11-23 12:01:04,400 INFO L273 TraceCheckUtils]: 57: Hoare triple {8969#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {8969#false} is VALID [2018-11-23 12:01:04,400 INFO L273 TraceCheckUtils]: 58: Hoare triple {8969#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {8969#false} is VALID [2018-11-23 12:01:04,400 INFO L256 TraceCheckUtils]: 59: Hoare triple {8969#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {8969#false} is VALID [2018-11-23 12:01:04,401 INFO L273 TraceCheckUtils]: 60: Hoare triple {8969#false} ~cond := #in~cond; {8969#false} is VALID [2018-11-23 12:01:04,401 INFO L273 TraceCheckUtils]: 61: Hoare triple {8969#false} assume !(0 == ~cond); {8969#false} is VALID [2018-11-23 12:01:04,401 INFO L273 TraceCheckUtils]: 62: Hoare triple {8969#false} assume true; {8969#false} is VALID [2018-11-23 12:01:04,401 INFO L268 TraceCheckUtils]: 63: Hoare quadruple {8969#false} {8969#false} #83#return; {8969#false} is VALID [2018-11-23 12:01:04,401 INFO L273 TraceCheckUtils]: 64: Hoare triple {8969#false} havoc #t~mem6;havoc #t~mem7; {8969#false} is VALID [2018-11-23 12:01:04,401 INFO L273 TraceCheckUtils]: 65: Hoare triple {8969#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {8969#false} is VALID [2018-11-23 12:01:04,401 INFO L273 TraceCheckUtils]: 66: Hoare triple {8969#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {8969#false} is VALID [2018-11-23 12:01:04,402 INFO L256 TraceCheckUtils]: 67: Hoare triple {8969#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {8969#false} is VALID [2018-11-23 12:01:04,402 INFO L273 TraceCheckUtils]: 68: Hoare triple {8969#false} ~cond := #in~cond; {8969#false} is VALID [2018-11-23 12:01:04,402 INFO L273 TraceCheckUtils]: 69: Hoare triple {8969#false} assume !(0 == ~cond); {8969#false} is VALID [2018-11-23 12:01:04,402 INFO L273 TraceCheckUtils]: 70: Hoare triple {8969#false} assume true; {8969#false} is VALID [2018-11-23 12:01:04,402 INFO L268 TraceCheckUtils]: 71: Hoare quadruple {8969#false} {8969#false} #83#return; {8969#false} is VALID [2018-11-23 12:01:04,402 INFO L273 TraceCheckUtils]: 72: Hoare triple {8969#false} havoc #t~mem6;havoc #t~mem7; {8969#false} is VALID [2018-11-23 12:01:04,402 INFO L273 TraceCheckUtils]: 73: Hoare triple {8969#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {8969#false} is VALID [2018-11-23 12:01:04,403 INFO L273 TraceCheckUtils]: 74: Hoare triple {8969#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {8969#false} is VALID [2018-11-23 12:01:04,403 INFO L256 TraceCheckUtils]: 75: Hoare triple {8969#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {8969#false} is VALID [2018-11-23 12:01:04,403 INFO L273 TraceCheckUtils]: 76: Hoare triple {8969#false} ~cond := #in~cond; {8969#false} is VALID [2018-11-23 12:01:04,403 INFO L273 TraceCheckUtils]: 77: Hoare triple {8969#false} assume !(0 == ~cond); {8969#false} is VALID [2018-11-23 12:01:04,403 INFO L273 TraceCheckUtils]: 78: Hoare triple {8969#false} assume true; {8969#false} is VALID [2018-11-23 12:01:04,403 INFO L268 TraceCheckUtils]: 79: Hoare quadruple {8969#false} {8969#false} #83#return; {8969#false} is VALID [2018-11-23 12:01:04,404 INFO L273 TraceCheckUtils]: 80: Hoare triple {8969#false} havoc #t~mem6;havoc #t~mem7; {8969#false} is VALID [2018-11-23 12:01:04,404 INFO L273 TraceCheckUtils]: 81: Hoare triple {8969#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {8969#false} is VALID [2018-11-23 12:01:04,404 INFO L273 TraceCheckUtils]: 82: Hoare triple {8969#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {8969#false} is VALID [2018-11-23 12:01:04,404 INFO L256 TraceCheckUtils]: 83: Hoare triple {8969#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {8969#false} is VALID [2018-11-23 12:01:04,404 INFO L273 TraceCheckUtils]: 84: Hoare triple {8969#false} ~cond := #in~cond; {8969#false} is VALID [2018-11-23 12:01:04,404 INFO L273 TraceCheckUtils]: 85: Hoare triple {8969#false} assume 0 == ~cond; {8969#false} is VALID [2018-11-23 12:01:04,405 INFO L273 TraceCheckUtils]: 86: Hoare triple {8969#false} assume !false; {8969#false} is VALID [2018-11-23 12:01:04,410 INFO L134 CoverageAnalysis]: Checked inductivity of 312 backedges. 1 proven. 247 refuted. 0 times theorem prover too weak. 64 trivial. 0 not checked. [2018-11-23 12:01:04,432 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:01:04,432 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 16] total 17 [2018-11-23 12:01:04,433 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 87 [2018-11-23 12:01:04,434 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:01:04,434 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states. [2018-11-23 12:01:04,557 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:01:04,557 INFO L459 AbstractCegarLoop]: Interpolant automaton has 17 states [2018-11-23 12:01:04,557 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2018-11-23 12:01:04,557 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=136, Invalid=136, Unknown=0, NotChecked=0, Total=272 [2018-11-23 12:01:04,558 INFO L87 Difference]: Start difference. First operand 130 states and 159 transitions. Second operand 17 states. [2018-11-23 12:01:05,178 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:01:05,178 INFO L93 Difference]: Finished difference Result 264 states and 328 transitions. [2018-11-23 12:01:05,178 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2018-11-23 12:01:05,178 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 87 [2018-11-23 12:01:05,178 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:01:05,178 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-23 12:01:05,180 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 105 transitions. [2018-11-23 12:01:05,180 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-23 12:01:05,181 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 105 transitions. [2018-11-23 12:01:05,181 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 105 transitions. [2018-11-23 12:01:05,347 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 105 edges. 105 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:01:05,350 INFO L225 Difference]: With dead ends: 264 [2018-11-23 12:01:05,351 INFO L226 Difference]: Without dead ends: 140 [2018-11-23 12:01:05,351 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 102 GetRequests, 87 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 24 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=136, Invalid=136, Unknown=0, NotChecked=0, Total=272 [2018-11-23 12:01:05,351 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 140 states. [2018-11-23 12:01:05,604 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 140 to 136. [2018-11-23 12:01:05,605 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:01:05,605 INFO L82 GeneralOperation]: Start isEquivalent. First operand 140 states. Second operand 136 states. [2018-11-23 12:01:05,605 INFO L74 IsIncluded]: Start isIncluded. First operand 140 states. Second operand 136 states. [2018-11-23 12:01:05,605 INFO L87 Difference]: Start difference. First operand 140 states. Second operand 136 states. [2018-11-23 12:01:05,608 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:01:05,609 INFO L93 Difference]: Finished difference Result 140 states and 173 transitions. [2018-11-23 12:01:05,609 INFO L276 IsEmpty]: Start isEmpty. Operand 140 states and 173 transitions. [2018-11-23 12:01:05,609 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:01:05,609 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:01:05,610 INFO L74 IsIncluded]: Start isIncluded. First operand 136 states. Second operand 140 states. [2018-11-23 12:01:05,610 INFO L87 Difference]: Start difference. First operand 136 states. Second operand 140 states. [2018-11-23 12:01:05,613 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:01:05,613 INFO L93 Difference]: Finished difference Result 140 states and 173 transitions. [2018-11-23 12:01:05,613 INFO L276 IsEmpty]: Start isEmpty. Operand 140 states and 173 transitions. [2018-11-23 12:01:05,614 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:01:05,614 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:01:05,614 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:01:05,614 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:01:05,614 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 136 states. [2018-11-23 12:01:05,617 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 136 states to 136 states and 167 transitions. [2018-11-23 12:01:05,617 INFO L78 Accepts]: Start accepts. Automaton has 136 states and 167 transitions. Word has length 87 [2018-11-23 12:01:05,618 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:01:05,618 INFO L480 AbstractCegarLoop]: Abstraction has 136 states and 167 transitions. [2018-11-23 12:01:05,618 INFO L481 AbstractCegarLoop]: Interpolant automaton has 17 states. [2018-11-23 12:01:05,618 INFO L276 IsEmpty]: Start isEmpty. Operand 136 states and 167 transitions. [2018-11-23 12:01:05,619 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 91 [2018-11-23 12:01:05,619 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:01:05,619 INFO L402 BasicCegarLoop]: trace histogram [14, 14, 14, 5, 5, 5, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:01:05,619 INFO L423 AbstractCegarLoop]: === Iteration 17 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:01:05,620 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:01:05,620 INFO L82 PathProgramCache]: Analyzing trace with hash -256760323, now seen corresponding path program 11 times [2018-11-23 12:01:05,620 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:01:05,620 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:01:05,621 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:01:05,621 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:01:05,621 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:01:05,636 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:01:06,293 INFO L256 TraceCheckUtils]: 0: Hoare triple {10075#true} call ULTIMATE.init(); {10075#true} is VALID [2018-11-23 12:01:06,293 INFO L273 TraceCheckUtils]: 1: Hoare triple {10075#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {10075#true} is VALID [2018-11-23 12:01:06,293 INFO L273 TraceCheckUtils]: 2: Hoare triple {10075#true} assume true; {10075#true} is VALID [2018-11-23 12:01:06,293 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {10075#true} {10075#true} #79#return; {10075#true} is VALID [2018-11-23 12:01:06,293 INFO L256 TraceCheckUtils]: 4: Hoare triple {10075#true} call #t~ret8 := main(); {10075#true} is VALID [2018-11-23 12:01:06,293 INFO L273 TraceCheckUtils]: 5: Hoare triple {10075#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {10075#true} is VALID [2018-11-23 12:01:06,294 INFO L273 TraceCheckUtils]: 6: Hoare triple {10075#true} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {10077#(= main_~i~0 1)} is VALID [2018-11-23 12:01:06,295 INFO L273 TraceCheckUtils]: 7: Hoare triple {10077#(= main_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10077#(= main_~i~0 1)} is VALID [2018-11-23 12:01:06,295 INFO L273 TraceCheckUtils]: 8: Hoare triple {10077#(= main_~i~0 1)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {10077#(= main_~i~0 1)} is VALID [2018-11-23 12:01:06,296 INFO L273 TraceCheckUtils]: 9: Hoare triple {10077#(= main_~i~0 1)} ~i~0 := 1 + ~i~0; {10078#(<= main_~i~0 2)} is VALID [2018-11-23 12:01:06,296 INFO L273 TraceCheckUtils]: 10: Hoare triple {10078#(<= main_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10078#(<= main_~i~0 2)} is VALID [2018-11-23 12:01:06,297 INFO L273 TraceCheckUtils]: 11: Hoare triple {10078#(<= main_~i~0 2)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {10078#(<= main_~i~0 2)} is VALID [2018-11-23 12:01:06,298 INFO L273 TraceCheckUtils]: 12: Hoare triple {10078#(<= main_~i~0 2)} ~i~0 := 1 + ~i~0; {10079#(<= main_~i~0 3)} is VALID [2018-11-23 12:01:06,298 INFO L273 TraceCheckUtils]: 13: Hoare triple {10079#(<= main_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10079#(<= main_~i~0 3)} is VALID [2018-11-23 12:01:06,299 INFO L273 TraceCheckUtils]: 14: Hoare triple {10079#(<= main_~i~0 3)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {10079#(<= main_~i~0 3)} is VALID [2018-11-23 12:01:06,300 INFO L273 TraceCheckUtils]: 15: Hoare triple {10079#(<= main_~i~0 3)} ~i~0 := 1 + ~i~0; {10080#(<= main_~i~0 4)} is VALID [2018-11-23 12:01:06,300 INFO L273 TraceCheckUtils]: 16: Hoare triple {10080#(<= main_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10080#(<= main_~i~0 4)} is VALID [2018-11-23 12:01:06,301 INFO L273 TraceCheckUtils]: 17: Hoare triple {10080#(<= main_~i~0 4)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {10080#(<= main_~i~0 4)} is VALID [2018-11-23 12:01:06,301 INFO L273 TraceCheckUtils]: 18: Hoare triple {10080#(<= main_~i~0 4)} ~i~0 := 1 + ~i~0; {10081#(<= main_~i~0 5)} is VALID [2018-11-23 12:01:06,302 INFO L273 TraceCheckUtils]: 19: Hoare triple {10081#(<= main_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10081#(<= main_~i~0 5)} is VALID [2018-11-23 12:01:06,303 INFO L273 TraceCheckUtils]: 20: Hoare triple {10081#(<= main_~i~0 5)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {10081#(<= main_~i~0 5)} is VALID [2018-11-23 12:01:06,303 INFO L273 TraceCheckUtils]: 21: Hoare triple {10081#(<= main_~i~0 5)} ~i~0 := 1 + ~i~0; {10082#(<= main_~i~0 6)} is VALID [2018-11-23 12:01:06,304 INFO L273 TraceCheckUtils]: 22: Hoare triple {10082#(<= main_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10082#(<= main_~i~0 6)} is VALID [2018-11-23 12:01:06,304 INFO L273 TraceCheckUtils]: 23: Hoare triple {10082#(<= main_~i~0 6)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {10082#(<= main_~i~0 6)} is VALID [2018-11-23 12:01:06,305 INFO L273 TraceCheckUtils]: 24: Hoare triple {10082#(<= main_~i~0 6)} ~i~0 := 1 + ~i~0; {10083#(<= main_~i~0 7)} is VALID [2018-11-23 12:01:06,306 INFO L273 TraceCheckUtils]: 25: Hoare triple {10083#(<= main_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10083#(<= main_~i~0 7)} is VALID [2018-11-23 12:01:06,306 INFO L273 TraceCheckUtils]: 26: Hoare triple {10083#(<= main_~i~0 7)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {10083#(<= main_~i~0 7)} is VALID [2018-11-23 12:01:06,307 INFO L273 TraceCheckUtils]: 27: Hoare triple {10083#(<= main_~i~0 7)} ~i~0 := 1 + ~i~0; {10084#(<= main_~i~0 8)} is VALID [2018-11-23 12:01:06,308 INFO L273 TraceCheckUtils]: 28: Hoare triple {10084#(<= main_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10084#(<= main_~i~0 8)} is VALID [2018-11-23 12:01:06,308 INFO L273 TraceCheckUtils]: 29: Hoare triple {10084#(<= main_~i~0 8)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {10084#(<= main_~i~0 8)} is VALID [2018-11-23 12:01:06,309 INFO L273 TraceCheckUtils]: 30: Hoare triple {10084#(<= main_~i~0 8)} ~i~0 := 1 + ~i~0; {10085#(<= main_~i~0 9)} is VALID [2018-11-23 12:01:06,309 INFO L273 TraceCheckUtils]: 31: Hoare triple {10085#(<= main_~i~0 9)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10085#(<= main_~i~0 9)} is VALID [2018-11-23 12:01:06,310 INFO L273 TraceCheckUtils]: 32: Hoare triple {10085#(<= main_~i~0 9)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {10085#(<= main_~i~0 9)} is VALID [2018-11-23 12:01:06,311 INFO L273 TraceCheckUtils]: 33: Hoare triple {10085#(<= main_~i~0 9)} ~i~0 := 1 + ~i~0; {10086#(<= main_~i~0 10)} is VALID [2018-11-23 12:01:06,311 INFO L273 TraceCheckUtils]: 34: Hoare triple {10086#(<= main_~i~0 10)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10086#(<= main_~i~0 10)} is VALID [2018-11-23 12:01:06,312 INFO L273 TraceCheckUtils]: 35: Hoare triple {10086#(<= main_~i~0 10)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {10086#(<= main_~i~0 10)} is VALID [2018-11-23 12:01:06,313 INFO L273 TraceCheckUtils]: 36: Hoare triple {10086#(<= main_~i~0 10)} ~i~0 := 1 + ~i~0; {10087#(<= main_~i~0 11)} is VALID [2018-11-23 12:01:06,313 INFO L273 TraceCheckUtils]: 37: Hoare triple {10087#(<= main_~i~0 11)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10087#(<= main_~i~0 11)} is VALID [2018-11-23 12:01:06,314 INFO L273 TraceCheckUtils]: 38: Hoare triple {10087#(<= main_~i~0 11)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {10087#(<= main_~i~0 11)} is VALID [2018-11-23 12:01:06,314 INFO L273 TraceCheckUtils]: 39: Hoare triple {10087#(<= main_~i~0 11)} ~i~0 := 1 + ~i~0; {10088#(<= main_~i~0 12)} is VALID [2018-11-23 12:01:06,315 INFO L273 TraceCheckUtils]: 40: Hoare triple {10088#(<= main_~i~0 12)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10088#(<= main_~i~0 12)} is VALID [2018-11-23 12:01:06,316 INFO L273 TraceCheckUtils]: 41: Hoare triple {10088#(<= main_~i~0 12)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {10088#(<= main_~i~0 12)} is VALID [2018-11-23 12:01:06,316 INFO L273 TraceCheckUtils]: 42: Hoare triple {10088#(<= main_~i~0 12)} ~i~0 := 1 + ~i~0; {10089#(<= main_~i~0 13)} is VALID [2018-11-23 12:01:06,317 INFO L273 TraceCheckUtils]: 43: Hoare triple {10089#(<= main_~i~0 13)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10089#(<= main_~i~0 13)} is VALID [2018-11-23 12:01:06,317 INFO L273 TraceCheckUtils]: 44: Hoare triple {10089#(<= main_~i~0 13)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {10089#(<= main_~i~0 13)} is VALID [2018-11-23 12:01:06,318 INFO L273 TraceCheckUtils]: 45: Hoare triple {10089#(<= main_~i~0 13)} ~i~0 := 1 + ~i~0; {10090#(<= main_~i~0 14)} is VALID [2018-11-23 12:01:06,319 INFO L273 TraceCheckUtils]: 46: Hoare triple {10090#(<= main_~i~0 14)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10090#(<= main_~i~0 14)} is VALID [2018-11-23 12:01:06,319 INFO L273 TraceCheckUtils]: 47: Hoare triple {10090#(<= main_~i~0 14)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {10090#(<= main_~i~0 14)} is VALID [2018-11-23 12:01:06,320 INFO L273 TraceCheckUtils]: 48: Hoare triple {10090#(<= main_~i~0 14)} ~i~0 := 1 + ~i~0; {10091#(<= main_~i~0 15)} is VALID [2018-11-23 12:01:06,321 INFO L273 TraceCheckUtils]: 49: Hoare triple {10091#(<= main_~i~0 15)} assume !(~i~0 < 100000); {10076#false} is VALID [2018-11-23 12:01:06,321 INFO L273 TraceCheckUtils]: 50: Hoare triple {10076#false} assume !(0 != ~swapped~0); {10076#false} is VALID [2018-11-23 12:01:06,321 INFO L273 TraceCheckUtils]: 51: Hoare triple {10076#false} havoc ~x~0;havoc ~y~0;~x~0 := 0; {10076#false} is VALID [2018-11-23 12:01:06,322 INFO L273 TraceCheckUtils]: 52: Hoare triple {10076#false} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {10076#false} is VALID [2018-11-23 12:01:06,322 INFO L273 TraceCheckUtils]: 53: Hoare triple {10076#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {10076#false} is VALID [2018-11-23 12:01:06,322 INFO L256 TraceCheckUtils]: 54: Hoare triple {10076#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {10075#true} is VALID [2018-11-23 12:01:06,322 INFO L273 TraceCheckUtils]: 55: Hoare triple {10075#true} ~cond := #in~cond; {10075#true} is VALID [2018-11-23 12:01:06,322 INFO L273 TraceCheckUtils]: 56: Hoare triple {10075#true} assume !(0 == ~cond); {10075#true} is VALID [2018-11-23 12:01:06,323 INFO L273 TraceCheckUtils]: 57: Hoare triple {10075#true} assume true; {10075#true} is VALID [2018-11-23 12:01:06,323 INFO L268 TraceCheckUtils]: 58: Hoare quadruple {10075#true} {10076#false} #83#return; {10076#false} is VALID [2018-11-23 12:01:06,323 INFO L273 TraceCheckUtils]: 59: Hoare triple {10076#false} havoc #t~mem6;havoc #t~mem7; {10076#false} is VALID [2018-11-23 12:01:06,323 INFO L273 TraceCheckUtils]: 60: Hoare triple {10076#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {10076#false} is VALID [2018-11-23 12:01:06,323 INFO L273 TraceCheckUtils]: 61: Hoare triple {10076#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {10076#false} is VALID [2018-11-23 12:01:06,324 INFO L256 TraceCheckUtils]: 62: Hoare triple {10076#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {10075#true} is VALID [2018-11-23 12:01:06,324 INFO L273 TraceCheckUtils]: 63: Hoare triple {10075#true} ~cond := #in~cond; {10075#true} is VALID [2018-11-23 12:01:06,324 INFO L273 TraceCheckUtils]: 64: Hoare triple {10075#true} assume !(0 == ~cond); {10075#true} is VALID [2018-11-23 12:01:06,324 INFO L273 TraceCheckUtils]: 65: Hoare triple {10075#true} assume true; {10075#true} is VALID [2018-11-23 12:01:06,324 INFO L268 TraceCheckUtils]: 66: Hoare quadruple {10075#true} {10076#false} #83#return; {10076#false} is VALID [2018-11-23 12:01:06,325 INFO L273 TraceCheckUtils]: 67: Hoare triple {10076#false} havoc #t~mem6;havoc #t~mem7; {10076#false} is VALID [2018-11-23 12:01:06,325 INFO L273 TraceCheckUtils]: 68: Hoare triple {10076#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {10076#false} is VALID [2018-11-23 12:01:06,325 INFO L273 TraceCheckUtils]: 69: Hoare triple {10076#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {10076#false} is VALID [2018-11-23 12:01:06,325 INFO L256 TraceCheckUtils]: 70: Hoare triple {10076#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {10075#true} is VALID [2018-11-23 12:01:06,325 INFO L273 TraceCheckUtils]: 71: Hoare triple {10075#true} ~cond := #in~cond; {10075#true} is VALID [2018-11-23 12:01:06,325 INFO L273 TraceCheckUtils]: 72: Hoare triple {10075#true} assume !(0 == ~cond); {10075#true} is VALID [2018-11-23 12:01:06,325 INFO L273 TraceCheckUtils]: 73: Hoare triple {10075#true} assume true; {10075#true} is VALID [2018-11-23 12:01:06,325 INFO L268 TraceCheckUtils]: 74: Hoare quadruple {10075#true} {10076#false} #83#return; {10076#false} is VALID [2018-11-23 12:01:06,326 INFO L273 TraceCheckUtils]: 75: Hoare triple {10076#false} havoc #t~mem6;havoc #t~mem7; {10076#false} is VALID [2018-11-23 12:01:06,326 INFO L273 TraceCheckUtils]: 76: Hoare triple {10076#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {10076#false} is VALID [2018-11-23 12:01:06,326 INFO L273 TraceCheckUtils]: 77: Hoare triple {10076#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {10076#false} is VALID [2018-11-23 12:01:06,326 INFO L256 TraceCheckUtils]: 78: Hoare triple {10076#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {10075#true} is VALID [2018-11-23 12:01:06,326 INFO L273 TraceCheckUtils]: 79: Hoare triple {10075#true} ~cond := #in~cond; {10075#true} is VALID [2018-11-23 12:01:06,326 INFO L273 TraceCheckUtils]: 80: Hoare triple {10075#true} assume !(0 == ~cond); {10075#true} is VALID [2018-11-23 12:01:06,326 INFO L273 TraceCheckUtils]: 81: Hoare triple {10075#true} assume true; {10075#true} is VALID [2018-11-23 12:01:06,326 INFO L268 TraceCheckUtils]: 82: Hoare quadruple {10075#true} {10076#false} #83#return; {10076#false} is VALID [2018-11-23 12:01:06,326 INFO L273 TraceCheckUtils]: 83: Hoare triple {10076#false} havoc #t~mem6;havoc #t~mem7; {10076#false} is VALID [2018-11-23 12:01:06,327 INFO L273 TraceCheckUtils]: 84: Hoare triple {10076#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {10076#false} is VALID [2018-11-23 12:01:06,327 INFO L273 TraceCheckUtils]: 85: Hoare triple {10076#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {10076#false} is VALID [2018-11-23 12:01:06,327 INFO L256 TraceCheckUtils]: 86: Hoare triple {10076#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {10076#false} is VALID [2018-11-23 12:01:06,327 INFO L273 TraceCheckUtils]: 87: Hoare triple {10076#false} ~cond := #in~cond; {10076#false} is VALID [2018-11-23 12:01:06,327 INFO L273 TraceCheckUtils]: 88: Hoare triple {10076#false} assume 0 == ~cond; {10076#false} is VALID [2018-11-23 12:01:06,327 INFO L273 TraceCheckUtils]: 89: Hoare triple {10076#false} assume !false; {10076#false} is VALID [2018-11-23 12:01:06,331 INFO L134 CoverageAnalysis]: Checked inductivity of 352 backedges. 9 proven. 287 refuted. 0 times theorem prover too weak. 56 trivial. 0 not checked. [2018-11-23 12:01:06,332 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:01:06,332 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 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:01:06,340 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-23 12:01:06,387 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 15 check-sat command(s) [2018-11-23 12:01:06,388 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:01:06,423 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:01:06,424 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:01:06,583 INFO L256 TraceCheckUtils]: 0: Hoare triple {10075#true} call ULTIMATE.init(); {10075#true} is VALID [2018-11-23 12:01:06,583 INFO L273 TraceCheckUtils]: 1: Hoare triple {10075#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {10075#true} is VALID [2018-11-23 12:01:06,584 INFO L273 TraceCheckUtils]: 2: Hoare triple {10075#true} assume true; {10075#true} is VALID [2018-11-23 12:01:06,584 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {10075#true} {10075#true} #79#return; {10075#true} is VALID [2018-11-23 12:01:06,584 INFO L256 TraceCheckUtils]: 4: Hoare triple {10075#true} call #t~ret8 := main(); {10075#true} is VALID [2018-11-23 12:01:06,584 INFO L273 TraceCheckUtils]: 5: Hoare triple {10075#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {10075#true} is VALID [2018-11-23 12:01:06,585 INFO L273 TraceCheckUtils]: 6: Hoare triple {10075#true} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {10113#(<= main_~i~0 1)} is VALID [2018-11-23 12:01:06,586 INFO L273 TraceCheckUtils]: 7: Hoare triple {10113#(<= main_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10113#(<= main_~i~0 1)} is VALID [2018-11-23 12:01:06,586 INFO L273 TraceCheckUtils]: 8: Hoare triple {10113#(<= main_~i~0 1)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {10113#(<= main_~i~0 1)} is VALID [2018-11-23 12:01:06,587 INFO L273 TraceCheckUtils]: 9: Hoare triple {10113#(<= main_~i~0 1)} ~i~0 := 1 + ~i~0; {10078#(<= main_~i~0 2)} is VALID [2018-11-23 12:01:06,587 INFO L273 TraceCheckUtils]: 10: Hoare triple {10078#(<= main_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10078#(<= main_~i~0 2)} is VALID [2018-11-23 12:01:06,588 INFO L273 TraceCheckUtils]: 11: Hoare triple {10078#(<= main_~i~0 2)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {10078#(<= main_~i~0 2)} is VALID [2018-11-23 12:01:06,588 INFO L273 TraceCheckUtils]: 12: Hoare triple {10078#(<= main_~i~0 2)} ~i~0 := 1 + ~i~0; {10079#(<= main_~i~0 3)} is VALID [2018-11-23 12:01:06,588 INFO L273 TraceCheckUtils]: 13: Hoare triple {10079#(<= main_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10079#(<= main_~i~0 3)} is VALID [2018-11-23 12:01:06,589 INFO L273 TraceCheckUtils]: 14: Hoare triple {10079#(<= main_~i~0 3)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {10079#(<= main_~i~0 3)} is VALID [2018-11-23 12:01:06,589 INFO L273 TraceCheckUtils]: 15: Hoare triple {10079#(<= main_~i~0 3)} ~i~0 := 1 + ~i~0; {10080#(<= main_~i~0 4)} is VALID [2018-11-23 12:01:06,590 INFO L273 TraceCheckUtils]: 16: Hoare triple {10080#(<= main_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10080#(<= main_~i~0 4)} is VALID [2018-11-23 12:01:06,590 INFO L273 TraceCheckUtils]: 17: Hoare triple {10080#(<= main_~i~0 4)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {10080#(<= main_~i~0 4)} is VALID [2018-11-23 12:01:06,591 INFO L273 TraceCheckUtils]: 18: Hoare triple {10080#(<= main_~i~0 4)} ~i~0 := 1 + ~i~0; {10081#(<= main_~i~0 5)} is VALID [2018-11-23 12:01:06,592 INFO L273 TraceCheckUtils]: 19: Hoare triple {10081#(<= main_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10081#(<= main_~i~0 5)} is VALID [2018-11-23 12:01:06,592 INFO L273 TraceCheckUtils]: 20: Hoare triple {10081#(<= main_~i~0 5)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {10081#(<= main_~i~0 5)} is VALID [2018-11-23 12:01:06,593 INFO L273 TraceCheckUtils]: 21: Hoare triple {10081#(<= main_~i~0 5)} ~i~0 := 1 + ~i~0; {10082#(<= main_~i~0 6)} is VALID [2018-11-23 12:01:06,594 INFO L273 TraceCheckUtils]: 22: Hoare triple {10082#(<= main_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10082#(<= main_~i~0 6)} is VALID [2018-11-23 12:01:06,594 INFO L273 TraceCheckUtils]: 23: Hoare triple {10082#(<= main_~i~0 6)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {10082#(<= main_~i~0 6)} is VALID [2018-11-23 12:01:06,595 INFO L273 TraceCheckUtils]: 24: Hoare triple {10082#(<= main_~i~0 6)} ~i~0 := 1 + ~i~0; {10083#(<= main_~i~0 7)} is VALID [2018-11-23 12:01:06,595 INFO L273 TraceCheckUtils]: 25: Hoare triple {10083#(<= main_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10083#(<= main_~i~0 7)} is VALID [2018-11-23 12:01:06,596 INFO L273 TraceCheckUtils]: 26: Hoare triple {10083#(<= main_~i~0 7)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {10083#(<= main_~i~0 7)} is VALID [2018-11-23 12:01:06,597 INFO L273 TraceCheckUtils]: 27: Hoare triple {10083#(<= main_~i~0 7)} ~i~0 := 1 + ~i~0; {10084#(<= main_~i~0 8)} is VALID [2018-11-23 12:01:06,597 INFO L273 TraceCheckUtils]: 28: Hoare triple {10084#(<= main_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10084#(<= main_~i~0 8)} is VALID [2018-11-23 12:01:06,598 INFO L273 TraceCheckUtils]: 29: Hoare triple {10084#(<= main_~i~0 8)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {10084#(<= main_~i~0 8)} is VALID [2018-11-23 12:01:06,599 INFO L273 TraceCheckUtils]: 30: Hoare triple {10084#(<= main_~i~0 8)} ~i~0 := 1 + ~i~0; {10085#(<= main_~i~0 9)} is VALID [2018-11-23 12:01:06,599 INFO L273 TraceCheckUtils]: 31: Hoare triple {10085#(<= main_~i~0 9)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10085#(<= main_~i~0 9)} is VALID [2018-11-23 12:01:06,600 INFO L273 TraceCheckUtils]: 32: Hoare triple {10085#(<= main_~i~0 9)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {10085#(<= main_~i~0 9)} is VALID [2018-11-23 12:01:06,601 INFO L273 TraceCheckUtils]: 33: Hoare triple {10085#(<= main_~i~0 9)} ~i~0 := 1 + ~i~0; {10086#(<= main_~i~0 10)} is VALID [2018-11-23 12:01:06,601 INFO L273 TraceCheckUtils]: 34: Hoare triple {10086#(<= main_~i~0 10)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10086#(<= main_~i~0 10)} is VALID [2018-11-23 12:01:06,602 INFO L273 TraceCheckUtils]: 35: Hoare triple {10086#(<= main_~i~0 10)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {10086#(<= main_~i~0 10)} is VALID [2018-11-23 12:01:06,602 INFO L273 TraceCheckUtils]: 36: Hoare triple {10086#(<= main_~i~0 10)} ~i~0 := 1 + ~i~0; {10087#(<= main_~i~0 11)} is VALID [2018-11-23 12:01:06,603 INFO L273 TraceCheckUtils]: 37: Hoare triple {10087#(<= main_~i~0 11)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10087#(<= main_~i~0 11)} is VALID [2018-11-23 12:01:06,603 INFO L273 TraceCheckUtils]: 38: Hoare triple {10087#(<= main_~i~0 11)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {10087#(<= main_~i~0 11)} is VALID [2018-11-23 12:01:06,604 INFO L273 TraceCheckUtils]: 39: Hoare triple {10087#(<= main_~i~0 11)} ~i~0 := 1 + ~i~0; {10088#(<= main_~i~0 12)} is VALID [2018-11-23 12:01:06,605 INFO L273 TraceCheckUtils]: 40: Hoare triple {10088#(<= main_~i~0 12)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10088#(<= main_~i~0 12)} is VALID [2018-11-23 12:01:06,605 INFO L273 TraceCheckUtils]: 41: Hoare triple {10088#(<= main_~i~0 12)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {10088#(<= main_~i~0 12)} is VALID [2018-11-23 12:01:06,606 INFO L273 TraceCheckUtils]: 42: Hoare triple {10088#(<= main_~i~0 12)} ~i~0 := 1 + ~i~0; {10089#(<= main_~i~0 13)} is VALID [2018-11-23 12:01:06,607 INFO L273 TraceCheckUtils]: 43: Hoare triple {10089#(<= main_~i~0 13)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10089#(<= main_~i~0 13)} is VALID [2018-11-23 12:01:06,607 INFO L273 TraceCheckUtils]: 44: Hoare triple {10089#(<= main_~i~0 13)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {10089#(<= main_~i~0 13)} is VALID [2018-11-23 12:01:06,608 INFO L273 TraceCheckUtils]: 45: Hoare triple {10089#(<= main_~i~0 13)} ~i~0 := 1 + ~i~0; {10090#(<= main_~i~0 14)} is VALID [2018-11-23 12:01:06,608 INFO L273 TraceCheckUtils]: 46: Hoare triple {10090#(<= main_~i~0 14)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {10090#(<= main_~i~0 14)} is VALID [2018-11-23 12:01:06,609 INFO L273 TraceCheckUtils]: 47: Hoare triple {10090#(<= main_~i~0 14)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {10090#(<= main_~i~0 14)} is VALID [2018-11-23 12:01:06,610 INFO L273 TraceCheckUtils]: 48: Hoare triple {10090#(<= main_~i~0 14)} ~i~0 := 1 + ~i~0; {10091#(<= main_~i~0 15)} is VALID [2018-11-23 12:01:06,610 INFO L273 TraceCheckUtils]: 49: Hoare triple {10091#(<= main_~i~0 15)} assume !(~i~0 < 100000); {10076#false} is VALID [2018-11-23 12:01:06,611 INFO L273 TraceCheckUtils]: 50: Hoare triple {10076#false} assume !(0 != ~swapped~0); {10076#false} is VALID [2018-11-23 12:01:06,611 INFO L273 TraceCheckUtils]: 51: Hoare triple {10076#false} havoc ~x~0;havoc ~y~0;~x~0 := 0; {10076#false} is VALID [2018-11-23 12:01:06,611 INFO L273 TraceCheckUtils]: 52: Hoare triple {10076#false} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {10076#false} is VALID [2018-11-23 12:01:06,611 INFO L273 TraceCheckUtils]: 53: Hoare triple {10076#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {10076#false} is VALID [2018-11-23 12:01:06,612 INFO L256 TraceCheckUtils]: 54: Hoare triple {10076#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {10076#false} is VALID [2018-11-23 12:01:06,612 INFO L273 TraceCheckUtils]: 55: Hoare triple {10076#false} ~cond := #in~cond; {10076#false} is VALID [2018-11-23 12:01:06,612 INFO L273 TraceCheckUtils]: 56: Hoare triple {10076#false} assume !(0 == ~cond); {10076#false} is VALID [2018-11-23 12:01:06,612 INFO L273 TraceCheckUtils]: 57: Hoare triple {10076#false} assume true; {10076#false} is VALID [2018-11-23 12:01:06,612 INFO L268 TraceCheckUtils]: 58: Hoare quadruple {10076#false} {10076#false} #83#return; {10076#false} is VALID [2018-11-23 12:01:06,613 INFO L273 TraceCheckUtils]: 59: Hoare triple {10076#false} havoc #t~mem6;havoc #t~mem7; {10076#false} is VALID [2018-11-23 12:01:06,613 INFO L273 TraceCheckUtils]: 60: Hoare triple {10076#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {10076#false} is VALID [2018-11-23 12:01:06,613 INFO L273 TraceCheckUtils]: 61: Hoare triple {10076#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {10076#false} is VALID [2018-11-23 12:01:06,613 INFO L256 TraceCheckUtils]: 62: Hoare triple {10076#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {10076#false} is VALID [2018-11-23 12:01:06,613 INFO L273 TraceCheckUtils]: 63: Hoare triple {10076#false} ~cond := #in~cond; {10076#false} is VALID [2018-11-23 12:01:06,614 INFO L273 TraceCheckUtils]: 64: Hoare triple {10076#false} assume !(0 == ~cond); {10076#false} is VALID [2018-11-23 12:01:06,614 INFO L273 TraceCheckUtils]: 65: Hoare triple {10076#false} assume true; {10076#false} is VALID [2018-11-23 12:01:06,614 INFO L268 TraceCheckUtils]: 66: Hoare quadruple {10076#false} {10076#false} #83#return; {10076#false} is VALID [2018-11-23 12:01:06,614 INFO L273 TraceCheckUtils]: 67: Hoare triple {10076#false} havoc #t~mem6;havoc #t~mem7; {10076#false} is VALID [2018-11-23 12:01:06,614 INFO L273 TraceCheckUtils]: 68: Hoare triple {10076#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {10076#false} is VALID [2018-11-23 12:01:06,614 INFO L273 TraceCheckUtils]: 69: Hoare triple {10076#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {10076#false} is VALID [2018-11-23 12:01:06,614 INFO L256 TraceCheckUtils]: 70: Hoare triple {10076#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {10076#false} is VALID [2018-11-23 12:01:06,615 INFO L273 TraceCheckUtils]: 71: Hoare triple {10076#false} ~cond := #in~cond; {10076#false} is VALID [2018-11-23 12:01:06,615 INFO L273 TraceCheckUtils]: 72: Hoare triple {10076#false} assume !(0 == ~cond); {10076#false} is VALID [2018-11-23 12:01:06,615 INFO L273 TraceCheckUtils]: 73: Hoare triple {10076#false} assume true; {10076#false} is VALID [2018-11-23 12:01:06,615 INFO L268 TraceCheckUtils]: 74: Hoare quadruple {10076#false} {10076#false} #83#return; {10076#false} is VALID [2018-11-23 12:01:06,615 INFO L273 TraceCheckUtils]: 75: Hoare triple {10076#false} havoc #t~mem6;havoc #t~mem7; {10076#false} is VALID [2018-11-23 12:01:06,615 INFO L273 TraceCheckUtils]: 76: Hoare triple {10076#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {10076#false} is VALID [2018-11-23 12:01:06,615 INFO L273 TraceCheckUtils]: 77: Hoare triple {10076#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {10076#false} is VALID [2018-11-23 12:01:06,615 INFO L256 TraceCheckUtils]: 78: Hoare triple {10076#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {10076#false} is VALID [2018-11-23 12:01:06,616 INFO L273 TraceCheckUtils]: 79: Hoare triple {10076#false} ~cond := #in~cond; {10076#false} is VALID [2018-11-23 12:01:06,616 INFO L273 TraceCheckUtils]: 80: Hoare triple {10076#false} assume !(0 == ~cond); {10076#false} is VALID [2018-11-23 12:01:06,616 INFO L273 TraceCheckUtils]: 81: Hoare triple {10076#false} assume true; {10076#false} is VALID [2018-11-23 12:01:06,616 INFO L268 TraceCheckUtils]: 82: Hoare quadruple {10076#false} {10076#false} #83#return; {10076#false} is VALID [2018-11-23 12:01:06,616 INFO L273 TraceCheckUtils]: 83: Hoare triple {10076#false} havoc #t~mem6;havoc #t~mem7; {10076#false} is VALID [2018-11-23 12:01:06,616 INFO L273 TraceCheckUtils]: 84: Hoare triple {10076#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {10076#false} is VALID [2018-11-23 12:01:06,616 INFO L273 TraceCheckUtils]: 85: Hoare triple {10076#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {10076#false} is VALID [2018-11-23 12:01:06,616 INFO L256 TraceCheckUtils]: 86: Hoare triple {10076#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {10076#false} is VALID [2018-11-23 12:01:06,616 INFO L273 TraceCheckUtils]: 87: Hoare triple {10076#false} ~cond := #in~cond; {10076#false} is VALID [2018-11-23 12:01:06,617 INFO L273 TraceCheckUtils]: 88: Hoare triple {10076#false} assume 0 == ~cond; {10076#false} is VALID [2018-11-23 12:01:06,617 INFO L273 TraceCheckUtils]: 89: Hoare triple {10076#false} assume !false; {10076#false} is VALID [2018-11-23 12:01:06,621 INFO L134 CoverageAnalysis]: Checked inductivity of 352 backedges. 1 proven. 287 refuted. 0 times theorem prover too weak. 64 trivial. 0 not checked. [2018-11-23 12:01:06,641 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:01:06,641 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 17] total 18 [2018-11-23 12:01:06,642 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 90 [2018-11-23 12:01:06,643 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:01:06,643 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states. [2018-11-23 12:01:06,731 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:01:06,731 INFO L459 AbstractCegarLoop]: Interpolant automaton has 18 states [2018-11-23 12:01:06,731 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2018-11-23 12:01:06,731 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=153, Invalid=153, Unknown=0, NotChecked=0, Total=306 [2018-11-23 12:01:06,731 INFO L87 Difference]: Start difference. First operand 136 states and 167 transitions. Second operand 18 states. [2018-11-23 12:01:07,390 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:01:07,391 INFO L93 Difference]: Finished difference Result 276 states and 344 transitions. [2018-11-23 12:01:07,391 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2018-11-23 12:01:07,391 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 90 [2018-11-23 12:01:07,391 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 12:01:07,391 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-23 12:01:07,393 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 109 transitions. [2018-11-23 12:01:07,393 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-23 12:01:07,394 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 109 transitions. [2018-11-23 12:01:07,394 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 109 transitions. [2018-11-23 12:01:07,558 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 109 edges. 109 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:01:07,561 INFO L225 Difference]: With dead ends: 276 [2018-11-23 12:01:07,562 INFO L226 Difference]: Without dead ends: 146 [2018-11-23 12:01:07,562 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 106 GetRequests, 90 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 26 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=153, Invalid=153, Unknown=0, NotChecked=0, Total=306 [2018-11-23 12:01:07,563 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 146 states. [2018-11-23 12:01:07,881 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 146 to 142. [2018-11-23 12:01:07,881 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 12:01:07,882 INFO L82 GeneralOperation]: Start isEquivalent. First operand 146 states. Second operand 142 states. [2018-11-23 12:01:07,882 INFO L74 IsIncluded]: Start isIncluded. First operand 146 states. Second operand 142 states. [2018-11-23 12:01:07,882 INFO L87 Difference]: Start difference. First operand 146 states. Second operand 142 states. [2018-11-23 12:01:07,885 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:01:07,885 INFO L93 Difference]: Finished difference Result 146 states and 181 transitions. [2018-11-23 12:01:07,885 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 181 transitions. [2018-11-23 12:01:07,886 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:01:07,886 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:01:07,886 INFO L74 IsIncluded]: Start isIncluded. First operand 142 states. Second operand 146 states. [2018-11-23 12:01:07,886 INFO L87 Difference]: Start difference. First operand 142 states. Second operand 146 states. [2018-11-23 12:01:07,889 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 12:01:07,889 INFO L93 Difference]: Finished difference Result 146 states and 181 transitions. [2018-11-23 12:01:07,889 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 181 transitions. [2018-11-23 12:01:07,890 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 12:01:07,890 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 12:01:07,890 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 12:01:07,890 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 12:01:07,890 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 142 states. [2018-11-23 12:01:07,893 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 142 states to 142 states and 175 transitions. [2018-11-23 12:01:07,893 INFO L78 Accepts]: Start accepts. Automaton has 142 states and 175 transitions. Word has length 90 [2018-11-23 12:01:07,894 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 12:01:07,894 INFO L480 AbstractCegarLoop]: Abstraction has 142 states and 175 transitions. [2018-11-23 12:01:07,894 INFO L481 AbstractCegarLoop]: Interpolant automaton has 18 states. [2018-11-23 12:01:07,894 INFO L276 IsEmpty]: Start isEmpty. Operand 142 states and 175 transitions. [2018-11-23 12:01:07,895 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 94 [2018-11-23 12:01:07,895 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 12:01:07,895 INFO L402 BasicCegarLoop]: trace histogram [15, 15, 15, 5, 5, 5, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 12:01:07,895 INFO L423 AbstractCegarLoop]: === Iteration 18 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 12:01:07,896 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 12:01:07,896 INFO L82 PathProgramCache]: Analyzing trace with hash -1015818892, now seen corresponding path program 12 times [2018-11-23 12:01:07,896 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 12:01:07,896 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 12:01:07,897 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:01:07,897 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 12:01:07,897 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 12:01:07,912 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:01:08,436 INFO L256 TraceCheckUtils]: 0: Hoare triple {11228#true} call ULTIMATE.init(); {11228#true} is VALID [2018-11-23 12:01:08,437 INFO L273 TraceCheckUtils]: 1: Hoare triple {11228#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {11228#true} is VALID [2018-11-23 12:01:08,437 INFO L273 TraceCheckUtils]: 2: Hoare triple {11228#true} assume true; {11228#true} is VALID [2018-11-23 12:01:08,437 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {11228#true} {11228#true} #79#return; {11228#true} is VALID [2018-11-23 12:01:08,437 INFO L256 TraceCheckUtils]: 4: Hoare triple {11228#true} call #t~ret8 := main(); {11228#true} is VALID [2018-11-23 12:01:08,437 INFO L273 TraceCheckUtils]: 5: Hoare triple {11228#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {11228#true} is VALID [2018-11-23 12:01:08,438 INFO L273 TraceCheckUtils]: 6: Hoare triple {11228#true} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {11230#(= main_~i~0 1)} is VALID [2018-11-23 12:01:08,438 INFO L273 TraceCheckUtils]: 7: Hoare triple {11230#(= main_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11230#(= main_~i~0 1)} is VALID [2018-11-23 12:01:08,439 INFO L273 TraceCheckUtils]: 8: Hoare triple {11230#(= main_~i~0 1)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11230#(= main_~i~0 1)} is VALID [2018-11-23 12:01:08,439 INFO L273 TraceCheckUtils]: 9: Hoare triple {11230#(= main_~i~0 1)} ~i~0 := 1 + ~i~0; {11231#(<= main_~i~0 2)} is VALID [2018-11-23 12:01:08,439 INFO L273 TraceCheckUtils]: 10: Hoare triple {11231#(<= main_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11231#(<= main_~i~0 2)} is VALID [2018-11-23 12:01:08,440 INFO L273 TraceCheckUtils]: 11: Hoare triple {11231#(<= main_~i~0 2)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11231#(<= main_~i~0 2)} is VALID [2018-11-23 12:01:08,440 INFO L273 TraceCheckUtils]: 12: Hoare triple {11231#(<= main_~i~0 2)} ~i~0 := 1 + ~i~0; {11232#(<= main_~i~0 3)} is VALID [2018-11-23 12:01:08,441 INFO L273 TraceCheckUtils]: 13: Hoare triple {11232#(<= main_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11232#(<= main_~i~0 3)} is VALID [2018-11-23 12:01:08,441 INFO L273 TraceCheckUtils]: 14: Hoare triple {11232#(<= main_~i~0 3)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11232#(<= main_~i~0 3)} is VALID [2018-11-23 12:01:08,442 INFO L273 TraceCheckUtils]: 15: Hoare triple {11232#(<= main_~i~0 3)} ~i~0 := 1 + ~i~0; {11233#(<= main_~i~0 4)} is VALID [2018-11-23 12:01:08,443 INFO L273 TraceCheckUtils]: 16: Hoare triple {11233#(<= main_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11233#(<= main_~i~0 4)} is VALID [2018-11-23 12:01:08,443 INFO L273 TraceCheckUtils]: 17: Hoare triple {11233#(<= main_~i~0 4)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11233#(<= main_~i~0 4)} is VALID [2018-11-23 12:01:08,444 INFO L273 TraceCheckUtils]: 18: Hoare triple {11233#(<= main_~i~0 4)} ~i~0 := 1 + ~i~0; {11234#(<= main_~i~0 5)} is VALID [2018-11-23 12:01:08,445 INFO L273 TraceCheckUtils]: 19: Hoare triple {11234#(<= main_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11234#(<= main_~i~0 5)} is VALID [2018-11-23 12:01:08,445 INFO L273 TraceCheckUtils]: 20: Hoare triple {11234#(<= main_~i~0 5)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11234#(<= main_~i~0 5)} is VALID [2018-11-23 12:01:08,446 INFO L273 TraceCheckUtils]: 21: Hoare triple {11234#(<= main_~i~0 5)} ~i~0 := 1 + ~i~0; {11235#(<= main_~i~0 6)} is VALID [2018-11-23 12:01:08,446 INFO L273 TraceCheckUtils]: 22: Hoare triple {11235#(<= main_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11235#(<= main_~i~0 6)} is VALID [2018-11-23 12:01:08,447 INFO L273 TraceCheckUtils]: 23: Hoare triple {11235#(<= main_~i~0 6)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11235#(<= main_~i~0 6)} is VALID [2018-11-23 12:01:08,448 INFO L273 TraceCheckUtils]: 24: Hoare triple {11235#(<= main_~i~0 6)} ~i~0 := 1 + ~i~0; {11236#(<= main_~i~0 7)} is VALID [2018-11-23 12:01:08,448 INFO L273 TraceCheckUtils]: 25: Hoare triple {11236#(<= main_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11236#(<= main_~i~0 7)} is VALID [2018-11-23 12:01:08,449 INFO L273 TraceCheckUtils]: 26: Hoare triple {11236#(<= main_~i~0 7)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11236#(<= main_~i~0 7)} is VALID [2018-11-23 12:01:08,450 INFO L273 TraceCheckUtils]: 27: Hoare triple {11236#(<= main_~i~0 7)} ~i~0 := 1 + ~i~0; {11237#(<= main_~i~0 8)} is VALID [2018-11-23 12:01:08,450 INFO L273 TraceCheckUtils]: 28: Hoare triple {11237#(<= main_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11237#(<= main_~i~0 8)} is VALID [2018-11-23 12:01:08,451 INFO L273 TraceCheckUtils]: 29: Hoare triple {11237#(<= main_~i~0 8)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11237#(<= main_~i~0 8)} is VALID [2018-11-23 12:01:08,451 INFO L273 TraceCheckUtils]: 30: Hoare triple {11237#(<= main_~i~0 8)} ~i~0 := 1 + ~i~0; {11238#(<= main_~i~0 9)} is VALID [2018-11-23 12:01:08,452 INFO L273 TraceCheckUtils]: 31: Hoare triple {11238#(<= main_~i~0 9)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11238#(<= main_~i~0 9)} is VALID [2018-11-23 12:01:08,452 INFO L273 TraceCheckUtils]: 32: Hoare triple {11238#(<= main_~i~0 9)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11238#(<= main_~i~0 9)} is VALID [2018-11-23 12:01:08,453 INFO L273 TraceCheckUtils]: 33: Hoare triple {11238#(<= main_~i~0 9)} ~i~0 := 1 + ~i~0; {11239#(<= main_~i~0 10)} is VALID [2018-11-23 12:01:08,454 INFO L273 TraceCheckUtils]: 34: Hoare triple {11239#(<= main_~i~0 10)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11239#(<= main_~i~0 10)} is VALID [2018-11-23 12:01:08,454 INFO L273 TraceCheckUtils]: 35: Hoare triple {11239#(<= main_~i~0 10)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11239#(<= main_~i~0 10)} is VALID [2018-11-23 12:01:08,455 INFO L273 TraceCheckUtils]: 36: Hoare triple {11239#(<= main_~i~0 10)} ~i~0 := 1 + ~i~0; {11240#(<= main_~i~0 11)} is VALID [2018-11-23 12:01:08,456 INFO L273 TraceCheckUtils]: 37: Hoare triple {11240#(<= main_~i~0 11)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11240#(<= main_~i~0 11)} is VALID [2018-11-23 12:01:08,456 INFO L273 TraceCheckUtils]: 38: Hoare triple {11240#(<= main_~i~0 11)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11240#(<= main_~i~0 11)} is VALID [2018-11-23 12:01:08,457 INFO L273 TraceCheckUtils]: 39: Hoare triple {11240#(<= main_~i~0 11)} ~i~0 := 1 + ~i~0; {11241#(<= main_~i~0 12)} is VALID [2018-11-23 12:01:08,458 INFO L273 TraceCheckUtils]: 40: Hoare triple {11241#(<= main_~i~0 12)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11241#(<= main_~i~0 12)} is VALID [2018-11-23 12:01:08,458 INFO L273 TraceCheckUtils]: 41: Hoare triple {11241#(<= main_~i~0 12)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11241#(<= main_~i~0 12)} is VALID [2018-11-23 12:01:08,459 INFO L273 TraceCheckUtils]: 42: Hoare triple {11241#(<= main_~i~0 12)} ~i~0 := 1 + ~i~0; {11242#(<= main_~i~0 13)} is VALID [2018-11-23 12:01:08,459 INFO L273 TraceCheckUtils]: 43: Hoare triple {11242#(<= main_~i~0 13)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11242#(<= main_~i~0 13)} is VALID [2018-11-23 12:01:08,460 INFO L273 TraceCheckUtils]: 44: Hoare triple {11242#(<= main_~i~0 13)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11242#(<= main_~i~0 13)} is VALID [2018-11-23 12:01:08,461 INFO L273 TraceCheckUtils]: 45: Hoare triple {11242#(<= main_~i~0 13)} ~i~0 := 1 + ~i~0; {11243#(<= main_~i~0 14)} is VALID [2018-11-23 12:01:08,461 INFO L273 TraceCheckUtils]: 46: Hoare triple {11243#(<= main_~i~0 14)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11243#(<= main_~i~0 14)} is VALID [2018-11-23 12:01:08,462 INFO L273 TraceCheckUtils]: 47: Hoare triple {11243#(<= main_~i~0 14)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11243#(<= main_~i~0 14)} is VALID [2018-11-23 12:01:08,463 INFO L273 TraceCheckUtils]: 48: Hoare triple {11243#(<= main_~i~0 14)} ~i~0 := 1 + ~i~0; {11244#(<= main_~i~0 15)} is VALID [2018-11-23 12:01:08,463 INFO L273 TraceCheckUtils]: 49: Hoare triple {11244#(<= main_~i~0 15)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11244#(<= main_~i~0 15)} is VALID [2018-11-23 12:01:08,464 INFO L273 TraceCheckUtils]: 50: Hoare triple {11244#(<= main_~i~0 15)} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11244#(<= main_~i~0 15)} is VALID [2018-11-23 12:01:08,464 INFO L273 TraceCheckUtils]: 51: Hoare triple {11244#(<= main_~i~0 15)} ~i~0 := 1 + ~i~0; {11245#(<= main_~i~0 16)} is VALID [2018-11-23 12:01:08,465 INFO L273 TraceCheckUtils]: 52: Hoare triple {11245#(<= main_~i~0 16)} assume !(~i~0 < 100000); {11229#false} is VALID [2018-11-23 12:01:08,465 INFO L273 TraceCheckUtils]: 53: Hoare triple {11229#false} assume !(0 != ~swapped~0); {11229#false} is VALID [2018-11-23 12:01:08,466 INFO L273 TraceCheckUtils]: 54: Hoare triple {11229#false} havoc ~x~0;havoc ~y~0;~x~0 := 0; {11229#false} is VALID [2018-11-23 12:01:08,466 INFO L273 TraceCheckUtils]: 55: Hoare triple {11229#false} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {11229#false} is VALID [2018-11-23 12:01:08,466 INFO L273 TraceCheckUtils]: 56: Hoare triple {11229#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {11229#false} is VALID [2018-11-23 12:01:08,466 INFO L256 TraceCheckUtils]: 57: Hoare triple {11229#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {11228#true} is VALID [2018-11-23 12:01:08,466 INFO L273 TraceCheckUtils]: 58: Hoare triple {11228#true} ~cond := #in~cond; {11228#true} is VALID [2018-11-23 12:01:08,467 INFO L273 TraceCheckUtils]: 59: Hoare triple {11228#true} assume !(0 == ~cond); {11228#true} is VALID [2018-11-23 12:01:08,467 INFO L273 TraceCheckUtils]: 60: Hoare triple {11228#true} assume true; {11228#true} is VALID [2018-11-23 12:01:08,467 INFO L268 TraceCheckUtils]: 61: Hoare quadruple {11228#true} {11229#false} #83#return; {11229#false} is VALID [2018-11-23 12:01:08,467 INFO L273 TraceCheckUtils]: 62: Hoare triple {11229#false} havoc #t~mem6;havoc #t~mem7; {11229#false} is VALID [2018-11-23 12:01:08,467 INFO L273 TraceCheckUtils]: 63: Hoare triple {11229#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {11229#false} is VALID [2018-11-23 12:01:08,468 INFO L273 TraceCheckUtils]: 64: Hoare triple {11229#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {11229#false} is VALID [2018-11-23 12:01:08,468 INFO L256 TraceCheckUtils]: 65: Hoare triple {11229#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {11228#true} is VALID [2018-11-23 12:01:08,468 INFO L273 TraceCheckUtils]: 66: Hoare triple {11228#true} ~cond := #in~cond; {11228#true} is VALID [2018-11-23 12:01:08,468 INFO L273 TraceCheckUtils]: 67: Hoare triple {11228#true} assume !(0 == ~cond); {11228#true} is VALID [2018-11-23 12:01:08,468 INFO L273 TraceCheckUtils]: 68: Hoare triple {11228#true} assume true; {11228#true} is VALID [2018-11-23 12:01:08,468 INFO L268 TraceCheckUtils]: 69: Hoare quadruple {11228#true} {11229#false} #83#return; {11229#false} is VALID [2018-11-23 12:01:08,468 INFO L273 TraceCheckUtils]: 70: Hoare triple {11229#false} havoc #t~mem6;havoc #t~mem7; {11229#false} is VALID [2018-11-23 12:01:08,468 INFO L273 TraceCheckUtils]: 71: Hoare triple {11229#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {11229#false} is VALID [2018-11-23 12:01:08,469 INFO L273 TraceCheckUtils]: 72: Hoare triple {11229#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {11229#false} is VALID [2018-11-23 12:01:08,469 INFO L256 TraceCheckUtils]: 73: Hoare triple {11229#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {11228#true} is VALID [2018-11-23 12:01:08,469 INFO L273 TraceCheckUtils]: 74: Hoare triple {11228#true} ~cond := #in~cond; {11228#true} is VALID [2018-11-23 12:01:08,469 INFO L273 TraceCheckUtils]: 75: Hoare triple {11228#true} assume !(0 == ~cond); {11228#true} is VALID [2018-11-23 12:01:08,469 INFO L273 TraceCheckUtils]: 76: Hoare triple {11228#true} assume true; {11228#true} is VALID [2018-11-23 12:01:08,469 INFO L268 TraceCheckUtils]: 77: Hoare quadruple {11228#true} {11229#false} #83#return; {11229#false} is VALID [2018-11-23 12:01:08,469 INFO L273 TraceCheckUtils]: 78: Hoare triple {11229#false} havoc #t~mem6;havoc #t~mem7; {11229#false} is VALID [2018-11-23 12:01:08,469 INFO L273 TraceCheckUtils]: 79: Hoare triple {11229#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {11229#false} is VALID [2018-11-23 12:01:08,470 INFO L273 TraceCheckUtils]: 80: Hoare triple {11229#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {11229#false} is VALID [2018-11-23 12:01:08,470 INFO L256 TraceCheckUtils]: 81: Hoare triple {11229#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {11228#true} is VALID [2018-11-23 12:01:08,470 INFO L273 TraceCheckUtils]: 82: Hoare triple {11228#true} ~cond := #in~cond; {11228#true} is VALID [2018-11-23 12:01:08,470 INFO L273 TraceCheckUtils]: 83: Hoare triple {11228#true} assume !(0 == ~cond); {11228#true} is VALID [2018-11-23 12:01:08,470 INFO L273 TraceCheckUtils]: 84: Hoare triple {11228#true} assume true; {11228#true} is VALID [2018-11-23 12:01:08,470 INFO L268 TraceCheckUtils]: 85: Hoare quadruple {11228#true} {11229#false} #83#return; {11229#false} is VALID [2018-11-23 12:01:08,470 INFO L273 TraceCheckUtils]: 86: Hoare triple {11229#false} havoc #t~mem6;havoc #t~mem7; {11229#false} is VALID [2018-11-23 12:01:08,470 INFO L273 TraceCheckUtils]: 87: Hoare triple {11229#false} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {11229#false} is VALID [2018-11-23 12:01:08,470 INFO L273 TraceCheckUtils]: 88: Hoare triple {11229#false} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {11229#false} is VALID [2018-11-23 12:01:08,471 INFO L256 TraceCheckUtils]: 89: Hoare triple {11229#false} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {11229#false} is VALID [2018-11-23 12:01:08,471 INFO L273 TraceCheckUtils]: 90: Hoare triple {11229#false} ~cond := #in~cond; {11229#false} is VALID [2018-11-23 12:01:08,471 INFO L273 TraceCheckUtils]: 91: Hoare triple {11229#false} assume 0 == ~cond; {11229#false} is VALID [2018-11-23 12:01:08,471 INFO L273 TraceCheckUtils]: 92: Hoare triple {11229#false} assume !false; {11229#false} is VALID [2018-11-23 12:01:08,475 INFO L134 CoverageAnalysis]: Checked inductivity of 395 backedges. 9 proven. 330 refuted. 0 times theorem prover too weak. 56 trivial. 0 not checked. [2018-11-23 12:01:08,476 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 12:01:08,476 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:01:08,484 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-23 12:01:08,535 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 15 check-sat command(s) [2018-11-23 12:01:08,535 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 12:01:08,556 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 12:01:08,558 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 12:01:10,195 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 37 treesize of output 25 [2018-11-23 12:01:10,212 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 13 [2018-11-23 12:01:10,219 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 12:01:10,221 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 12:01:10,223 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:01:10,224 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:37, output treesize:3 [2018-11-23 12:01:10,227 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-23 12:01:10,228 WARN L384 uantifierElimination]: Input elimination task: ∃ [|#memory_int|, |main_~#a~0.base|]. (let ((.cse3 (select |#memory_int| |main_~#a~0.base|))) (let ((.cse1 (select .cse3 16)) (.cse0 (select .cse3 0)) (.cse2 (select .cse3 20))) (and (<= .cse0 .cse1) (<= .cse1 .cse2) (<= |main_#t~mem6| .cse0) (<= .cse2 |main_#t~mem7|)))) [2018-11-23 12:01:10,228 WARN L385 uantifierElimination]: ElimStorePlain result: ∃ []. (<= |main_#t~mem6| |main_#t~mem7|) [2018-11-23 12:01:10,333 INFO L256 TraceCheckUtils]: 0: Hoare triple {11228#true} call ULTIMATE.init(); {11228#true} is VALID [2018-11-23 12:01:10,333 INFO L273 TraceCheckUtils]: 1: Hoare triple {11228#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {11228#true} is VALID [2018-11-23 12:01:10,333 INFO L273 TraceCheckUtils]: 2: Hoare triple {11228#true} assume true; {11228#true} is VALID [2018-11-23 12:01:10,333 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {11228#true} {11228#true} #79#return; {11228#true} is VALID [2018-11-23 12:01:10,333 INFO L256 TraceCheckUtils]: 4: Hoare triple {11228#true} call #t~ret8 := main(); {11228#true} is VALID [2018-11-23 12:01:10,334 INFO L273 TraceCheckUtils]: 5: Hoare triple {11228#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);~swapped~0 := 1; {11264#(and (= 1 main_~swapped~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,334 INFO L273 TraceCheckUtils]: 6: Hoare triple {11264#(and (= 1 main_~swapped~0) (= |main_~#a~0.offset| 0))} assume !!(0 != ~swapped~0);~swapped~0 := 0;~i~0 := 1; {11268#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,335 INFO L273 TraceCheckUtils]: 7: Hoare triple {11268#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11268#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,335 INFO L273 TraceCheckUtils]: 8: Hoare triple {11268#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11268#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,336 INFO L273 TraceCheckUtils]: 9: Hoare triple {11268#(and (= main_~i~0 1) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {11278#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,336 INFO L273 TraceCheckUtils]: 10: Hoare triple {11278#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11278#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,337 INFO L273 TraceCheckUtils]: 11: Hoare triple {11278#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11278#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,337 INFO L273 TraceCheckUtils]: 12: Hoare triple {11278#(and (= main_~i~0 2) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {11288#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,338 INFO L273 TraceCheckUtils]: 13: Hoare triple {11288#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11288#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,338 INFO L273 TraceCheckUtils]: 14: Hoare triple {11288#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11288#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,339 INFO L273 TraceCheckUtils]: 15: Hoare triple {11288#(and (= main_~i~0 3) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {11298#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,340 INFO L273 TraceCheckUtils]: 16: Hoare triple {11298#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11298#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,340 INFO L273 TraceCheckUtils]: 17: Hoare triple {11298#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11298#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,341 INFO L273 TraceCheckUtils]: 18: Hoare triple {11298#(and (= main_~i~0 4) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {11308#(and (= main_~i~0 5) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,342 INFO L273 TraceCheckUtils]: 19: Hoare triple {11308#(and (= main_~i~0 5) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11312#(and (<= |main_#t~mem1| (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) |main_#t~mem0|) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,343 INFO L273 TraceCheckUtils]: 20: Hoare triple {11312#(and (<= |main_#t~mem1| (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) |main_#t~mem0|) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,344 INFO L273 TraceCheckUtils]: 21: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,345 INFO L273 TraceCheckUtils]: 22: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,359 INFO L273 TraceCheckUtils]: 23: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,360 INFO L273 TraceCheckUtils]: 24: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,360 INFO L273 TraceCheckUtils]: 25: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,361 INFO L273 TraceCheckUtils]: 26: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,361 INFO L273 TraceCheckUtils]: 27: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,362 INFO L273 TraceCheckUtils]: 28: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,362 INFO L273 TraceCheckUtils]: 29: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,363 INFO L273 TraceCheckUtils]: 30: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,364 INFO L273 TraceCheckUtils]: 31: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,365 INFO L273 TraceCheckUtils]: 32: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,366 INFO L273 TraceCheckUtils]: 33: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,366 INFO L273 TraceCheckUtils]: 34: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,367 INFO L273 TraceCheckUtils]: 35: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,368 INFO L273 TraceCheckUtils]: 36: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,369 INFO L273 TraceCheckUtils]: 37: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,370 INFO L273 TraceCheckUtils]: 38: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,370 INFO L273 TraceCheckUtils]: 39: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,371 INFO L273 TraceCheckUtils]: 40: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,372 INFO L273 TraceCheckUtils]: 41: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,373 INFO L273 TraceCheckUtils]: 42: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,374 INFO L273 TraceCheckUtils]: 43: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,375 INFO L273 TraceCheckUtils]: 44: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,375 INFO L273 TraceCheckUtils]: 45: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,376 INFO L273 TraceCheckUtils]: 46: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,377 INFO L273 TraceCheckUtils]: 47: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,378 INFO L273 TraceCheckUtils]: 48: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,379 INFO L273 TraceCheckUtils]: 49: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~#a~0.base, ~#a~0.offset + 4 * (~i~0 - 1), 4);call #t~mem1 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,379 INFO L273 TraceCheckUtils]: 50: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} assume !(#t~mem0 > #t~mem1);havoc #t~mem0;havoc #t~mem1; {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,380 INFO L273 TraceCheckUtils]: 51: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} ~i~0 := 1 + ~i~0; {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,381 INFO L273 TraceCheckUtils]: 52: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} assume !(~i~0 < 100000); {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,382 INFO L273 TraceCheckUtils]: 53: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} assume !(0 != ~swapped~0); {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,383 INFO L273 TraceCheckUtils]: 54: Hoare triple {11316#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} havoc ~x~0;havoc ~y~0;~x~0 := 0; {11419#(and (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,383 INFO L273 TraceCheckUtils]: 55: Hoare triple {11419#(and (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} assume !!(~x~0 < 100000);~y~0 := 1 + ~x~0; {11423#(and (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,384 INFO L273 TraceCheckUtils]: 56: Hoare triple {11423#(and (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {11423#(and (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,386 INFO L256 TraceCheckUtils]: 57: Hoare triple {11423#(and (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {11430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20)))} is VALID [2018-11-23 12:01:10,387 INFO L273 TraceCheckUtils]: 58: Hoare triple {11430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20)))} ~cond := #in~cond; {11430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20)))} is VALID [2018-11-23 12:01:10,387 INFO L273 TraceCheckUtils]: 59: Hoare triple {11430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20)))} assume !(0 == ~cond); {11430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20)))} is VALID [2018-11-23 12:01:10,388 INFO L273 TraceCheckUtils]: 60: Hoare triple {11430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20)))} assume true; {11430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20)))} is VALID [2018-11-23 12:01:10,389 INFO L268 TraceCheckUtils]: 61: Hoare quadruple {11430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20)))} {11423#(and (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} #83#return; {11423#(and (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,390 INFO L273 TraceCheckUtils]: 62: Hoare triple {11423#(and (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} havoc #t~mem6;havoc #t~mem7; {11423#(and (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,391 INFO L273 TraceCheckUtils]: 63: Hoare triple {11423#(and (= (+ main_~x~0 1) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {11449#(and (= (+ main_~x~0 2) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,392 INFO L273 TraceCheckUtils]: 64: Hoare triple {11449#(and (= (+ main_~x~0 2) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {11449#(and (= (+ main_~x~0 2) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,394 INFO L256 TraceCheckUtils]: 65: Hoare triple {11449#(and (= (+ main_~x~0 2) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {11430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20)))} is VALID [2018-11-23 12:01:10,394 INFO L273 TraceCheckUtils]: 66: Hoare triple {11430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20)))} ~cond := #in~cond; {11430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20)))} is VALID [2018-11-23 12:01:10,395 INFO L273 TraceCheckUtils]: 67: Hoare triple {11430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20)))} assume !(0 == ~cond); {11430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20)))} is VALID [2018-11-23 12:01:10,395 INFO L273 TraceCheckUtils]: 68: Hoare triple {11430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20)))} assume true; {11430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20)))} is VALID [2018-11-23 12:01:10,396 INFO L268 TraceCheckUtils]: 69: Hoare quadruple {11430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20)))} {11449#(and (= (+ main_~x~0 2) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} #83#return; {11449#(and (= (+ main_~x~0 2) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,397 INFO L273 TraceCheckUtils]: 70: Hoare triple {11449#(and (= (+ main_~x~0 2) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} havoc #t~mem6;havoc #t~mem7; {11449#(and (= (+ main_~x~0 2) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,398 INFO L273 TraceCheckUtils]: 71: Hoare triple {11449#(and (= (+ main_~x~0 2) main_~y~0) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= |main_~#a~0.offset| 0))} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {11474#(and (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= (+ main_~x~0 3) main_~y~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,399 INFO L273 TraceCheckUtils]: 72: Hoare triple {11474#(and (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= (+ main_~x~0 3) main_~y~0) (= |main_~#a~0.offset| 0))} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {11474#(and (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= (+ main_~x~0 3) main_~y~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,401 INFO L256 TraceCheckUtils]: 73: Hoare triple {11474#(and (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= (+ main_~x~0 3) main_~y~0) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {11430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20)))} is VALID [2018-11-23 12:01:10,402 INFO L273 TraceCheckUtils]: 74: Hoare triple {11430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20)))} ~cond := #in~cond; {11430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20)))} is VALID [2018-11-23 12:01:10,402 INFO L273 TraceCheckUtils]: 75: Hoare triple {11430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20)))} assume !(0 == ~cond); {11430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20)))} is VALID [2018-11-23 12:01:10,403 INFO L273 TraceCheckUtils]: 76: Hoare triple {11430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20)))} assume true; {11430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20)))} is VALID [2018-11-23 12:01:10,404 INFO L268 TraceCheckUtils]: 77: Hoare quadruple {11430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20)))} {11474#(and (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= (+ main_~x~0 3) main_~y~0) (= |main_~#a~0.offset| 0))} #83#return; {11474#(and (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= (+ main_~x~0 3) main_~y~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,405 INFO L273 TraceCheckUtils]: 78: Hoare triple {11474#(and (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= (+ main_~x~0 3) main_~y~0) (= |main_~#a~0.offset| 0))} havoc #t~mem6;havoc #t~mem7; {11474#(and (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= (+ main_~x~0 3) main_~y~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,406 INFO L273 TraceCheckUtils]: 79: Hoare triple {11474#(and (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= (+ main_~x~0 3) main_~y~0) (= |main_~#a~0.offset| 0))} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {11499#(and (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= main_~y~0 (+ main_~x~0 4)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,407 INFO L273 TraceCheckUtils]: 80: Hoare triple {11499#(and (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= main_~y~0 (+ main_~x~0 4)) (= |main_~#a~0.offset| 0))} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {11503#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) |main_#t~mem6|) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (<= |main_#t~mem7| (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~y~0) |main_~#a~0.offset|))) (= main_~y~0 (+ main_~x~0 4)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,409 INFO L256 TraceCheckUtils]: 81: Hoare triple {11503#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) |main_#t~mem6|) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (<= |main_#t~mem7| (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~y~0) |main_~#a~0.offset|))) (= main_~y~0 (+ main_~x~0 4)) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {11430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20)))} is VALID [2018-11-23 12:01:10,410 INFO L273 TraceCheckUtils]: 82: Hoare triple {11430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20)))} ~cond := #in~cond; {11510#(and (exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20))) (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond))} is VALID [2018-11-23 12:01:10,411 INFO L273 TraceCheckUtils]: 83: Hoare triple {11510#(and (exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20))) (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond))} assume !(0 == ~cond); {11514#(and (not (= |__VERIFIER_assert_#in~cond| 0)) (exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20))))} is VALID [2018-11-23 12:01:10,412 INFO L273 TraceCheckUtils]: 84: Hoare triple {11514#(and (not (= |__VERIFIER_assert_#in~cond| 0)) (exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20))))} assume true; {11514#(and (not (= |__VERIFIER_assert_#in~cond| 0)) (exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20))))} is VALID [2018-11-23 12:01:10,414 INFO L268 TraceCheckUtils]: 85: Hoare quadruple {11514#(and (not (= |__VERIFIER_assert_#in~cond| 0)) (exists ((|v_main_~#a~0.base_BEFORE_CALL_7| Int)) (<= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 16) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_7|) 20))))} {11503#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) |main_#t~mem6|) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (<= |main_#t~mem7| (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~y~0) |main_~#a~0.offset|))) (= main_~y~0 (+ main_~x~0 4)) (= |main_~#a~0.offset| 0))} #83#return; {11521#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~y~0) |main_~#a~0.offset|))) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= main_~y~0 (+ main_~x~0 4)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,415 INFO L273 TraceCheckUtils]: 86: Hoare triple {11521#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~y~0) |main_~#a~0.offset|))) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= main_~y~0 (+ main_~x~0 4)) (= |main_~#a~0.offset| 0))} havoc #t~mem6;havoc #t~mem7; {11521#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~y~0) |main_~#a~0.offset|))) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= main_~y~0 (+ main_~x~0 4)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,416 INFO L273 TraceCheckUtils]: 87: Hoare triple {11521#(and (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~y~0) |main_~#a~0.offset|))) (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= main_~y~0 (+ main_~x~0 4)) (= |main_~#a~0.offset| 0))} #t~post5 := ~y~0;~y~0 := 1 + #t~post5;havoc #t~post5; {11528#(and (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset| 16))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= (+ main_~x~0 5) main_~y~0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-23 12:01:10,417 INFO L273 TraceCheckUtils]: 88: Hoare triple {11528#(and (= main_~x~0 0) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset| 16))) (<= (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 16)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 20))) (= (+ main_~x~0 5) main_~y~0) (= |main_~#a~0.offset| 0))} assume !!(~y~0 < 100000);call #t~mem6 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem7 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~y~0, 4); {11532#(<= |main_#t~mem6| |main_#t~mem7|)} is VALID [2018-11-23 12:01:10,417 INFO L256 TraceCheckUtils]: 89: Hoare triple {11532#(<= |main_#t~mem6| |main_#t~mem7|)} call __VERIFIER_assert((if #t~mem6 <= #t~mem7 then 1 else 0)); {11536#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-23 12:01:10,418 INFO L273 TraceCheckUtils]: 90: Hoare triple {11536#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {11540#(= 1 __VERIFIER_assert_~cond)} is VALID [2018-11-23 12:01:10,418 INFO L273 TraceCheckUtils]: 91: Hoare triple {11540#(= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11229#false} is VALID [2018-11-23 12:01:10,418 INFO L273 TraceCheckUtils]: 92: Hoare triple {11229#false} assume !false; {11229#false} is VALID [2018-11-23 12:01:10,444 INFO L134 CoverageAnalysis]: Checked inductivity of 395 backedges. 9 proven. 216 refuted. 0 times theorem prover too weak. 170 trivial. 0 not checked. [2018-11-23 12:01:10,462 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 12:01:10,463 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 24] total 40 [2018-11-23 12:01:10,463 INFO L78 Accepts]: Start accepts. Automaton has 40 states. Word has length 93 [2018-11-23 12:01:10,464 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 12:01:10,464 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 40 states. [2018-11-23 12:01:10,608 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 121 edges. 121 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 12:01:10,608 INFO L459 AbstractCegarLoop]: Interpolant automaton has 40 states [2018-11-23 12:01:10,609 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 40 interpolants. [2018-11-23 12:01:10,610 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=295, Invalid=1265, Unknown=0, NotChecked=0, Total=1560 [2018-11-23 12:01:10,610 INFO L87 Difference]: Start difference. First operand 142 states and 175 transitions. Second operand 40 states. [2018-11-23 12:01:37,202 WARN L180 SmtUtils]: Spent 128.00 ms on a formula simplification that was a NOOP. DAG size: 20