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/AutomizerC.xml -s ../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf -i ../../../trunk/examples/svcomp/array-examples/standard_strcmp_true-unreach-call_ground.i -------------------------------------------------------------------------------- This is Ultimate 0.1.23-18e5b2d-m [2018-11-18 22:57:38,504 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-18 22:57:38,506 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-18 22:57:38,518 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-18 22:57:38,519 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-18 22:57:38,520 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-18 22:57:38,521 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-18 22:57:38,524 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-18 22:57:38,526 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-18 22:57:38,527 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-18 22:57:38,530 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-18 22:57:38,531 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-18 22:57:38,532 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-18 22:57:38,535 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-18 22:57:38,536 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-18 22:57:38,539 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-18 22:57:38,540 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-18 22:57:38,548 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-18 22:57:38,553 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-18 22:57:38,558 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-18 22:57:38,560 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-18 22:57:38,561 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-18 22:57:38,566 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-18 22:57:38,566 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-18 22:57:38,566 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-18 22:57:38,567 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-18 22:57:38,570 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-18 22:57:38,571 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-18 22:57:38,572 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-18 22:57:38,573 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-18 22:57:38,573 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-18 22:57:38,576 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-18 22:57:38,576 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-18 22:57:38,576 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-18 22:57:38,577 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-18 22:57:38,578 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-18 22:57:38,578 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-18 22:57:38,605 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-18 22:57:38,607 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-18 22:57:38,608 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-18 22:57:38,608 INFO L133 SettingsManager]: * to procedures, called more than once=true [2018-11-18 22:57:38,609 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-18 22:57:38,609 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-18 22:57:38,609 INFO L133 SettingsManager]: * Use SBE=true [2018-11-18 22:57:38,609 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-18 22:57:38,610 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-18 22:57:38,611 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-18 22:57:38,611 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-18 22:57:38,611 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-18 22:57:38,611 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-18 22:57:38,611 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-18 22:57:38,612 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-18 22:57:38,612 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-18 22:57:38,612 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-18 22:57:38,612 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-18 22:57:38,612 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-18 22:57:38,614 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-18 22:57:38,614 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-18 22:57:38,614 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-18 22:57:38,614 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-18 22:57:38,614 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-18 22:57:38,615 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-18 22:57:38,615 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-18 22:57:38,615 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-18 22:57:38,616 INFO L133 SettingsManager]: * Trace refinement strategy=CAMEL [2018-11-18 22:57:38,616 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-18 22:57:38,616 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-11-18 22:57:38,616 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2018-11-18 22:57:38,677 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-18 22:57:38,695 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-18 22:57:38,699 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-18 22:57:38,700 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-18 22:57:38,701 INFO L276 PluginConnector]: CDTParser initialized [2018-11-18 22:57:38,702 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/array-examples/standard_strcmp_true-unreach-call_ground.i [2018-11-18 22:57:38,771 INFO L221 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/041075a9c/7335e264f8b44d4581dd0c7efbaa823d/FLAG2b1bddaf9 [2018-11-18 22:57:39,248 INFO L307 CDTParser]: Found 1 translation units. [2018-11-18 22:57:39,248 INFO L161 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/array-examples/standard_strcmp_true-unreach-call_ground.i [2018-11-18 22:57:39,256 INFO L355 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/041075a9c/7335e264f8b44d4581dd0c7efbaa823d/FLAG2b1bddaf9 [2018-11-18 22:57:39,597 INFO L363 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/041075a9c/7335e264f8b44d4581dd0c7efbaa823d [2018-11-18 22:57:39,611 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-18 22:57:39,613 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2018-11-18 22:57:39,614 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-18 22:57:39,614 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-18 22:57:39,618 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-18 22:57:39,619 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 18.11 10:57:39" (1/1) ... [2018-11-18 22:57:39,622 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@33144d98 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.11 10:57:39, skipping insertion in model container [2018-11-18 22:57:39,623 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 18.11 10:57:39" (1/1) ... [2018-11-18 22:57:39,632 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-18 22:57:39,656 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-18 22:57:39,906 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-18 22:57:39,920 INFO L191 MainTranslator]: Completed pre-run [2018-11-18 22:57:39,947 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-18 22:57:39,972 INFO L195 MainTranslator]: Completed translation [2018-11-18 22:57:39,972 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.11 10:57:39 WrapperNode [2018-11-18 22:57:39,972 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-18 22:57:39,973 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-18 22:57:39,973 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-18 22:57:39,973 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-18 22:57:39,986 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.11 10:57:39" (1/1) ... [2018-11-18 22:57:39,987 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.11 10:57:39" (1/1) ... [2018-11-18 22:57:39,996 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.11 10:57:39" (1/1) ... [2018-11-18 22:57:39,996 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.11 10:57:39" (1/1) ... [2018-11-18 22:57:40,007 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.11 10:57:39" (1/1) ... [2018-11-18 22:57:40,019 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.11 10:57:39" (1/1) ... [2018-11-18 22:57:40,021 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.11 10:57:39" (1/1) ... [2018-11-18 22:57:40,024 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-18 22:57:40,024 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-18 22:57:40,024 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-18 22:57:40,024 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-18 22:57:40,029 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.11 10:57:39" (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-18 22:57:40,158 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-18 22:57:40,158 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-18 22:57:40,158 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2018-11-18 22:57:40,158 INFO L138 BoogieDeclarations]: Found implementation of procedure _strcmp [2018-11-18 22:57:40,158 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-18 22:57:40,159 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_error [2018-11-18 22:57:40,159 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2018-11-18 22:57:40,159 INFO L130 BoogieDeclarations]: Found specification of procedure _strcmp [2018-11-18 22:57:40,159 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-18 22:57:40,159 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-18 22:57:40,159 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-18 22:57:40,160 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-18 22:57:40,160 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-18 22:57:40,160 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-18 22:57:40,161 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int [2018-11-18 22:57:40,161 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2018-11-18 22:57:40,706 INFO L280 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-18 22:57:40,707 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 18.11 10:57:40 BoogieIcfgContainer [2018-11-18 22:57:40,707 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-18 22:57:40,708 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-18 22:57:40,708 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-18 22:57:40,712 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-18 22:57:40,712 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 18.11 10:57:39" (1/3) ... [2018-11-18 22:57:40,713 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7b3dc32 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 18.11 10:57:40, skipping insertion in model container [2018-11-18 22:57:40,713 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.11 10:57:39" (2/3) ... [2018-11-18 22:57:40,714 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7b3dc32 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 18.11 10:57:40, skipping insertion in model container [2018-11-18 22:57:40,714 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 18.11 10:57:40" (3/3) ... [2018-11-18 22:57:40,716 INFO L112 eAbstractionObserver]: Analyzing ICFG standard_strcmp_true-unreach-call_ground.i [2018-11-18 22:57:40,726 INFO L136 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-18 22:57:40,734 INFO L148 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-18 22:57:40,748 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-18 22:57:40,778 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-18 22:57:40,779 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-18 22:57:40,779 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-18 22:57:40,779 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-18 22:57:40,780 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-18 22:57:40,780 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-18 22:57:40,780 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-18 22:57:40,780 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-18 22:57:40,780 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-18 22:57:40,800 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states. [2018-11-18 22:57:40,806 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2018-11-18 22:57:40,807 INFO L367 BasicCegarLoop]: Found error trace [2018-11-18 22:57:40,808 INFO L375 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-18 22:57:40,810 INFO L423 AbstractCegarLoop]: === Iteration 1 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-18 22:57:40,816 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 22:57:40,817 INFO L82 PathProgramCache]: Analyzing trace with hash 1837291778, now seen corresponding path program 1 times [2018-11-18 22:57:40,819 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 22:57:40,820 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 22:57:40,871 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:40,871 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 22:57:40,872 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:40,917 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:40,984 INFO L256 TraceCheckUtils]: 0: Hoare triple {35#true} call ULTIMATE.init(); {35#true} is VALID [2018-11-18 22:57:40,987 INFO L273 TraceCheckUtils]: 1: Hoare triple {35#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {35#true} is VALID [2018-11-18 22:57:40,988 INFO L273 TraceCheckUtils]: 2: Hoare triple {35#true} assume true; {35#true} is VALID [2018-11-18 22:57:40,989 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {35#true} {35#true} #64#return; {35#true} is VALID [2018-11-18 22:57:40,989 INFO L256 TraceCheckUtils]: 4: Hoare triple {35#true} call #t~ret6 := main(); {35#true} is VALID [2018-11-18 22:57:40,989 INFO L273 TraceCheckUtils]: 5: Hoare triple {35#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {35#true} is VALID [2018-11-18 22:57:40,990 INFO L256 TraceCheckUtils]: 6: Hoare triple {35#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {35#true} is VALID [2018-11-18 22:57:40,990 INFO L273 TraceCheckUtils]: 7: Hoare triple {35#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {35#true} is VALID [2018-11-18 22:57:40,992 INFO L273 TraceCheckUtils]: 8: Hoare triple {35#true} assume !true; {36#false} is VALID [2018-11-18 22:57:40,992 INFO L273 TraceCheckUtils]: 9: Hoare triple {36#false} #res := 0; {36#false} is VALID [2018-11-18 22:57:40,993 INFO L273 TraceCheckUtils]: 10: Hoare triple {36#false} assume true; {36#false} is VALID [2018-11-18 22:57:40,993 INFO L268 TraceCheckUtils]: 11: Hoare quadruple {36#false} {35#true} #68#return; {36#false} is VALID [2018-11-18 22:57:40,993 INFO L273 TraceCheckUtils]: 12: Hoare triple {36#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {36#false} is VALID [2018-11-18 22:57:40,994 INFO L273 TraceCheckUtils]: 13: Hoare triple {36#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {36#false} is VALID [2018-11-18 22:57:40,994 INFO L273 TraceCheckUtils]: 14: Hoare triple {36#false} assume true; {36#false} is VALID [2018-11-18 22:57:40,995 INFO L273 TraceCheckUtils]: 15: Hoare triple {36#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {36#false} is VALID [2018-11-18 22:57:40,995 INFO L256 TraceCheckUtils]: 16: Hoare triple {36#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {36#false} is VALID [2018-11-18 22:57:40,995 INFO L273 TraceCheckUtils]: 17: Hoare triple {36#false} ~cond := #in~cond; {36#false} is VALID [2018-11-18 22:57:40,995 INFO L273 TraceCheckUtils]: 18: Hoare triple {36#false} assume 0 == ~cond; {36#false} is VALID [2018-11-18 22:57:40,996 INFO L273 TraceCheckUtils]: 19: Hoare triple {36#false} assume !false; {36#false} is VALID [2018-11-18 22:57:40,999 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-18 22:57:41,002 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-18 22:57:41,003 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-18 22:57:41,008 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 20 [2018-11-18 22:57:41,012 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-18 22:57:41,016 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states. [2018-11-18 22:57:41,229 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-18 22:57:41,229 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-18 22:57:41,239 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-18 22:57:41,240 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-18 22:57:41,244 INFO L87 Difference]: Start difference. First operand 32 states. Second operand 2 states. [2018-11-18 22:57:41,526 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:41,526 INFO L93 Difference]: Finished difference Result 53 states and 63 transitions. [2018-11-18 22:57:41,526 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-18 22:57:41,527 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 20 [2018-11-18 22:57:41,527 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-18 22:57:41,528 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-18 22:57:41,540 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 63 transitions. [2018-11-18 22:57:41,540 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-18 22:57:41,545 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 63 transitions. [2018-11-18 22:57:41,545 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 63 transitions. [2018-11-18 22:57:41,758 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-18 22:57:41,771 INFO L225 Difference]: With dead ends: 53 [2018-11-18 22:57:41,771 INFO L226 Difference]: Without dead ends: 27 [2018-11-18 22:57:41,775 INFO L604 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-18 22:57:41,794 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2018-11-18 22:57:41,825 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2018-11-18 22:57:41,826 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-18 22:57:41,826 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand 27 states. [2018-11-18 22:57:41,827 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand 27 states. [2018-11-18 22:57:41,827 INFO L87 Difference]: Start difference. First operand 27 states. Second operand 27 states. [2018-11-18 22:57:41,831 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:41,832 INFO L93 Difference]: Finished difference Result 27 states and 29 transitions. [2018-11-18 22:57:41,832 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 29 transitions. [2018-11-18 22:57:41,833 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 22:57:41,833 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 22:57:41,833 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand 27 states. [2018-11-18 22:57:41,833 INFO L87 Difference]: Start difference. First operand 27 states. Second operand 27 states. [2018-11-18 22:57:41,837 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:41,837 INFO L93 Difference]: Finished difference Result 27 states and 29 transitions. [2018-11-18 22:57:41,838 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 29 transitions. [2018-11-18 22:57:41,838 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 22:57:41,838 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 22:57:41,839 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-18 22:57:41,839 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-18 22:57:41,839 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 27 states. [2018-11-18 22:57:41,842 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 29 transitions. [2018-11-18 22:57:41,843 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 29 transitions. Word has length 20 [2018-11-18 22:57:41,844 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-18 22:57:41,844 INFO L480 AbstractCegarLoop]: Abstraction has 27 states and 29 transitions. [2018-11-18 22:57:41,844 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-18 22:57:41,844 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 29 transitions. [2018-11-18 22:57:41,845 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2018-11-18 22:57:41,845 INFO L367 BasicCegarLoop]: Found error trace [2018-11-18 22:57:41,846 INFO L375 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-18 22:57:41,846 INFO L423 AbstractCegarLoop]: === Iteration 2 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-18 22:57:41,846 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 22:57:41,847 INFO L82 PathProgramCache]: Analyzing trace with hash 442642466, now seen corresponding path program 1 times [2018-11-18 22:57:41,847 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 22:57:41,847 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 22:57:41,848 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:41,848 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 22:57:41,848 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:41,878 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:41,964 INFO L256 TraceCheckUtils]: 0: Hoare triple {196#true} call ULTIMATE.init(); {196#true} is VALID [2018-11-18 22:57:41,964 INFO L273 TraceCheckUtils]: 1: Hoare triple {196#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {196#true} is VALID [2018-11-18 22:57:41,965 INFO L273 TraceCheckUtils]: 2: Hoare triple {196#true} assume true; {196#true} is VALID [2018-11-18 22:57:41,965 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {196#true} {196#true} #64#return; {196#true} is VALID [2018-11-18 22:57:41,965 INFO L256 TraceCheckUtils]: 4: Hoare triple {196#true} call #t~ret6 := main(); {196#true} is VALID [2018-11-18 22:57:41,966 INFO L273 TraceCheckUtils]: 5: Hoare triple {196#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {196#true} is VALID [2018-11-18 22:57:41,966 INFO L256 TraceCheckUtils]: 6: Hoare triple {196#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {196#true} is VALID [2018-11-18 22:57:41,971 INFO L273 TraceCheckUtils]: 7: Hoare triple {196#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {198#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:41,972 INFO L273 TraceCheckUtils]: 8: Hoare triple {198#(= _strcmp_~i~0 0)} assume true; {198#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:41,973 INFO L273 TraceCheckUtils]: 9: Hoare triple {198#(= _strcmp_~i~0 0)} assume !(~i~0 < 100000); {197#false} is VALID [2018-11-18 22:57:41,973 INFO L273 TraceCheckUtils]: 10: Hoare triple {197#false} #res := 0; {197#false} is VALID [2018-11-18 22:57:41,973 INFO L273 TraceCheckUtils]: 11: Hoare triple {197#false} assume true; {197#false} is VALID [2018-11-18 22:57:41,974 INFO L268 TraceCheckUtils]: 12: Hoare quadruple {197#false} {196#true} #68#return; {197#false} is VALID [2018-11-18 22:57:41,974 INFO L273 TraceCheckUtils]: 13: Hoare triple {197#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {197#false} is VALID [2018-11-18 22:57:41,974 INFO L273 TraceCheckUtils]: 14: Hoare triple {197#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {197#false} is VALID [2018-11-18 22:57:41,974 INFO L273 TraceCheckUtils]: 15: Hoare triple {197#false} assume true; {197#false} is VALID [2018-11-18 22:57:41,975 INFO L273 TraceCheckUtils]: 16: Hoare triple {197#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {197#false} is VALID [2018-11-18 22:57:41,975 INFO L256 TraceCheckUtils]: 17: Hoare triple {197#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {197#false} is VALID [2018-11-18 22:57:41,975 INFO L273 TraceCheckUtils]: 18: Hoare triple {197#false} ~cond := #in~cond; {197#false} is VALID [2018-11-18 22:57:41,976 INFO L273 TraceCheckUtils]: 19: Hoare triple {197#false} assume 0 == ~cond; {197#false} is VALID [2018-11-18 22:57:41,976 INFO L273 TraceCheckUtils]: 20: Hoare triple {197#false} assume !false; {197#false} is VALID [2018-11-18 22:57:41,978 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-18 22:57:41,978 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-18 22:57:41,978 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2018-11-18 22:57:41,979 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 21 [2018-11-18 22:57:41,980 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-18 22:57:41,980 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2018-11-18 22:57:42,030 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 21 edges. 21 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-18 22:57:42,030 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2018-11-18 22:57:42,031 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2018-11-18 22:57:42,031 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-18 22:57:42,032 INFO L87 Difference]: Start difference. First operand 27 states and 29 transitions. Second operand 3 states. [2018-11-18 22:57:42,237 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:42,237 INFO L93 Difference]: Finished difference Result 48 states and 52 transitions. [2018-11-18 22:57:42,237 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-18 22:57:42,238 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 21 [2018-11-18 22:57:42,238 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-18 22:57:42,238 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-18 22:57:42,247 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 52 transitions. [2018-11-18 22:57:42,247 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2018-11-18 22:57:42,253 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 52 transitions. [2018-11-18 22:57:42,253 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 52 transitions. [2018-11-18 22:57:42,595 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-18 22:57:42,597 INFO L225 Difference]: With dead ends: 48 [2018-11-18 22:57:42,598 INFO L226 Difference]: Without dead ends: 32 [2018-11-18 22:57:42,599 INFO L604 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-18 22:57:42,599 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2018-11-18 22:57:42,632 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 29. [2018-11-18 22:57:42,632 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-18 22:57:42,633 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand 29 states. [2018-11-18 22:57:42,633 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand 29 states. [2018-11-18 22:57:42,633 INFO L87 Difference]: Start difference. First operand 32 states. Second operand 29 states. [2018-11-18 22:57:42,636 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:42,636 INFO L93 Difference]: Finished difference Result 32 states and 35 transitions. [2018-11-18 22:57:42,636 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 35 transitions. [2018-11-18 22:57:42,637 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 22:57:42,637 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 22:57:42,637 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand 32 states. [2018-11-18 22:57:42,638 INFO L87 Difference]: Start difference. First operand 29 states. Second operand 32 states. [2018-11-18 22:57:42,640 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:42,641 INFO L93 Difference]: Finished difference Result 32 states and 35 transitions. [2018-11-18 22:57:42,641 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 35 transitions. [2018-11-18 22:57:42,641 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 22:57:42,642 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 22:57:42,642 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-18 22:57:42,642 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-18 22:57:42,642 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 29 states. [2018-11-18 22:57:42,644 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 31 transitions. [2018-11-18 22:57:42,645 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 31 transitions. Word has length 21 [2018-11-18 22:57:42,645 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-18 22:57:42,645 INFO L480 AbstractCegarLoop]: Abstraction has 29 states and 31 transitions. [2018-11-18 22:57:42,645 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2018-11-18 22:57:42,645 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 31 transitions. [2018-11-18 22:57:42,646 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2018-11-18 22:57:42,647 INFO L367 BasicCegarLoop]: Found error trace [2018-11-18 22:57:42,647 INFO L375 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-18 22:57:42,647 INFO L423 AbstractCegarLoop]: === Iteration 3 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-18 22:57:42,648 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 22:57:42,648 INFO L82 PathProgramCache]: Analyzing trace with hash 1095630107, now seen corresponding path program 1 times [2018-11-18 22:57:42,648 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 22:57:42,648 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 22:57:42,649 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:42,649 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 22:57:42,649 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:42,669 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:42,782 INFO L256 TraceCheckUtils]: 0: Hoare triple {367#true} call ULTIMATE.init(); {367#true} is VALID [2018-11-18 22:57:42,782 INFO L273 TraceCheckUtils]: 1: Hoare triple {367#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {367#true} is VALID [2018-11-18 22:57:42,783 INFO L273 TraceCheckUtils]: 2: Hoare triple {367#true} assume true; {367#true} is VALID [2018-11-18 22:57:42,783 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {367#true} {367#true} #64#return; {367#true} is VALID [2018-11-18 22:57:42,784 INFO L256 TraceCheckUtils]: 4: Hoare triple {367#true} call #t~ret6 := main(); {367#true} is VALID [2018-11-18 22:57:42,784 INFO L273 TraceCheckUtils]: 5: Hoare triple {367#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {367#true} is VALID [2018-11-18 22:57:42,784 INFO L256 TraceCheckUtils]: 6: Hoare triple {367#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {367#true} is VALID [2018-11-18 22:57:42,785 INFO L273 TraceCheckUtils]: 7: Hoare triple {367#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {367#true} is VALID [2018-11-18 22:57:42,785 INFO L273 TraceCheckUtils]: 8: Hoare triple {367#true} assume true; {367#true} is VALID [2018-11-18 22:57:42,785 INFO L273 TraceCheckUtils]: 9: Hoare triple {367#true} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {367#true} is VALID [2018-11-18 22:57:42,790 INFO L273 TraceCheckUtils]: 10: Hoare triple {367#true} assume #t~mem0 != #t~mem1;havoc #t~mem0;havoc #t~mem1;#res := 1; {369#(= |_strcmp_#res| 1)} is VALID [2018-11-18 22:57:42,791 INFO L273 TraceCheckUtils]: 11: Hoare triple {369#(= |_strcmp_#res| 1)} assume true; {369#(= |_strcmp_#res| 1)} is VALID [2018-11-18 22:57:42,792 INFO L268 TraceCheckUtils]: 12: Hoare quadruple {369#(= |_strcmp_#res| 1)} {367#true} #68#return; {370#(= |main_#t~ret2| 1)} is VALID [2018-11-18 22:57:42,793 INFO L273 TraceCheckUtils]: 13: Hoare triple {370#(= |main_#t~ret2| 1)} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {371#(= main_~c~0 1)} is VALID [2018-11-18 22:57:42,794 INFO L273 TraceCheckUtils]: 14: Hoare triple {371#(= main_~c~0 1)} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {368#false} is VALID [2018-11-18 22:57:42,795 INFO L273 TraceCheckUtils]: 15: Hoare triple {368#false} assume true; {368#false} is VALID [2018-11-18 22:57:42,795 INFO L273 TraceCheckUtils]: 16: Hoare triple {368#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {368#false} is VALID [2018-11-18 22:57:42,795 INFO L256 TraceCheckUtils]: 17: Hoare triple {368#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {368#false} is VALID [2018-11-18 22:57:42,795 INFO L273 TraceCheckUtils]: 18: Hoare triple {368#false} ~cond := #in~cond; {368#false} is VALID [2018-11-18 22:57:42,796 INFO L273 TraceCheckUtils]: 19: Hoare triple {368#false} assume 0 == ~cond; {368#false} is VALID [2018-11-18 22:57:42,796 INFO L273 TraceCheckUtils]: 20: Hoare triple {368#false} assume !false; {368#false} is VALID [2018-11-18 22:57:42,797 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-18 22:57:42,797 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-18 22:57:42,798 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2018-11-18 22:57:42,798 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 21 [2018-11-18 22:57:42,798 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-18 22:57:42,799 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2018-11-18 22:57:42,837 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 21 edges. 21 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-18 22:57:42,837 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2018-11-18 22:57:42,837 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-18 22:57:42,837 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2018-11-18 22:57:42,838 INFO L87 Difference]: Start difference. First operand 29 states and 31 transitions. Second operand 5 states. [2018-11-18 22:57:43,195 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:43,195 INFO L93 Difference]: Finished difference Result 44 states and 46 transitions. [2018-11-18 22:57:43,195 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-18 22:57:43,196 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 21 [2018-11-18 22:57:43,196 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-18 22:57:43,196 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-18 22:57:43,199 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 44 transitions. [2018-11-18 22:57:43,199 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-18 22:57:43,202 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 44 transitions. [2018-11-18 22:57:43,202 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 44 transitions. [2018-11-18 22:57:43,289 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-18 22:57:43,291 INFO L225 Difference]: With dead ends: 44 [2018-11-18 22:57:43,291 INFO L226 Difference]: Without dead ends: 29 [2018-11-18 22:57:43,292 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 5 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2018-11-18 22:57:43,292 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2018-11-18 22:57:43,315 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 29. [2018-11-18 22:57:43,315 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-18 22:57:43,316 INFO L82 GeneralOperation]: Start isEquivalent. First operand 29 states. Second operand 29 states. [2018-11-18 22:57:43,316 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand 29 states. [2018-11-18 22:57:43,316 INFO L87 Difference]: Start difference. First operand 29 states. Second operand 29 states. [2018-11-18 22:57:43,318 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:43,319 INFO L93 Difference]: Finished difference Result 29 states and 30 transitions. [2018-11-18 22:57:43,319 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 30 transitions. [2018-11-18 22:57:43,319 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 22:57:43,320 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 22:57:43,320 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand 29 states. [2018-11-18 22:57:43,320 INFO L87 Difference]: Start difference. First operand 29 states. Second operand 29 states. [2018-11-18 22:57:43,322 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:43,322 INFO L93 Difference]: Finished difference Result 29 states and 30 transitions. [2018-11-18 22:57:43,323 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 30 transitions. [2018-11-18 22:57:43,323 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 22:57:43,323 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 22:57:43,323 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-18 22:57:43,324 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-18 22:57:43,324 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 29 states. [2018-11-18 22:57:43,327 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 30 transitions. [2018-11-18 22:57:43,327 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 30 transitions. Word has length 21 [2018-11-18 22:57:43,327 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-18 22:57:43,327 INFO L480 AbstractCegarLoop]: Abstraction has 29 states and 30 transitions. [2018-11-18 22:57:43,328 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2018-11-18 22:57:43,328 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 30 transitions. [2018-11-18 22:57:43,329 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2018-11-18 22:57:43,329 INFO L367 BasicCegarLoop]: Found error trace [2018-11-18 22:57:43,329 INFO L375 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-18 22:57:43,329 INFO L423 AbstractCegarLoop]: === Iteration 4 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-18 22:57:43,330 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 22:57:43,330 INFO L82 PathProgramCache]: Analyzing trace with hash -1780493882, now seen corresponding path program 1 times [2018-11-18 22:57:43,330 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 22:57:43,330 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 22:57:43,331 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:43,332 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 22:57:43,332 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:43,348 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:43,447 INFO L256 TraceCheckUtils]: 0: Hoare triple {530#true} call ULTIMATE.init(); {530#true} is VALID [2018-11-18 22:57:43,447 INFO L273 TraceCheckUtils]: 1: Hoare triple {530#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {530#true} is VALID [2018-11-18 22:57:43,448 INFO L273 TraceCheckUtils]: 2: Hoare triple {530#true} assume true; {530#true} is VALID [2018-11-18 22:57:43,448 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {530#true} {530#true} #64#return; {530#true} is VALID [2018-11-18 22:57:43,448 INFO L256 TraceCheckUtils]: 4: Hoare triple {530#true} call #t~ret6 := main(); {530#true} is VALID [2018-11-18 22:57:43,448 INFO L273 TraceCheckUtils]: 5: Hoare triple {530#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {530#true} is VALID [2018-11-18 22:57:43,449 INFO L256 TraceCheckUtils]: 6: Hoare triple {530#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {530#true} is VALID [2018-11-18 22:57:43,449 INFO L273 TraceCheckUtils]: 7: Hoare triple {530#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {532#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:43,451 INFO L273 TraceCheckUtils]: 8: Hoare triple {532#(= _strcmp_~i~0 0)} assume true; {532#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:43,469 INFO L273 TraceCheckUtils]: 9: Hoare triple {532#(= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {532#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:43,476 INFO L273 TraceCheckUtils]: 10: Hoare triple {532#(= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {533#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:43,477 INFO L273 TraceCheckUtils]: 11: Hoare triple {533#(<= _strcmp_~i~0 1)} assume true; {533#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:43,478 INFO L273 TraceCheckUtils]: 12: Hoare triple {533#(<= _strcmp_~i~0 1)} assume !(~i~0 < 100000); {531#false} is VALID [2018-11-18 22:57:43,478 INFO L273 TraceCheckUtils]: 13: Hoare triple {531#false} #res := 0; {531#false} is VALID [2018-11-18 22:57:43,478 INFO L273 TraceCheckUtils]: 14: Hoare triple {531#false} assume true; {531#false} is VALID [2018-11-18 22:57:43,479 INFO L268 TraceCheckUtils]: 15: Hoare quadruple {531#false} {530#true} #68#return; {531#false} is VALID [2018-11-18 22:57:43,479 INFO L273 TraceCheckUtils]: 16: Hoare triple {531#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {531#false} is VALID [2018-11-18 22:57:43,479 INFO L273 TraceCheckUtils]: 17: Hoare triple {531#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {531#false} is VALID [2018-11-18 22:57:43,480 INFO L273 TraceCheckUtils]: 18: Hoare triple {531#false} assume true; {531#false} is VALID [2018-11-18 22:57:43,480 INFO L273 TraceCheckUtils]: 19: Hoare triple {531#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {531#false} is VALID [2018-11-18 22:57:43,480 INFO L256 TraceCheckUtils]: 20: Hoare triple {531#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {531#false} is VALID [2018-11-18 22:57:43,480 INFO L273 TraceCheckUtils]: 21: Hoare triple {531#false} ~cond := #in~cond; {531#false} is VALID [2018-11-18 22:57:43,481 INFO L273 TraceCheckUtils]: 22: Hoare triple {531#false} assume 0 == ~cond; {531#false} is VALID [2018-11-18 22:57:43,481 INFO L273 TraceCheckUtils]: 23: Hoare triple {531#false} assume !false; {531#false} is VALID [2018-11-18 22:57:43,482 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 22:57:43,483 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-18 22:57:43,483 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-18 22:57:43,493 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 22:57:43,517 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:43,548 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:43,554 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 22:57:43,845 INFO L256 TraceCheckUtils]: 0: Hoare triple {530#true} call ULTIMATE.init(); {530#true} is VALID [2018-11-18 22:57:43,846 INFO L273 TraceCheckUtils]: 1: Hoare triple {530#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {530#true} is VALID [2018-11-18 22:57:43,846 INFO L273 TraceCheckUtils]: 2: Hoare triple {530#true} assume true; {530#true} is VALID [2018-11-18 22:57:43,847 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {530#true} {530#true} #64#return; {530#true} is VALID [2018-11-18 22:57:43,847 INFO L256 TraceCheckUtils]: 4: Hoare triple {530#true} call #t~ret6 := main(); {530#true} is VALID [2018-11-18 22:57:43,848 INFO L273 TraceCheckUtils]: 5: Hoare triple {530#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {530#true} is VALID [2018-11-18 22:57:43,848 INFO L256 TraceCheckUtils]: 6: Hoare triple {530#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {530#true} is VALID [2018-11-18 22:57:43,854 INFO L273 TraceCheckUtils]: 7: Hoare triple {530#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {558#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:43,855 INFO L273 TraceCheckUtils]: 8: Hoare triple {558#(<= _strcmp_~i~0 0)} assume true; {558#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:43,859 INFO L273 TraceCheckUtils]: 9: Hoare triple {558#(<= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {558#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:43,859 INFO L273 TraceCheckUtils]: 10: Hoare triple {558#(<= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {533#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:43,861 INFO L273 TraceCheckUtils]: 11: Hoare triple {533#(<= _strcmp_~i~0 1)} assume true; {533#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:43,862 INFO L273 TraceCheckUtils]: 12: Hoare triple {533#(<= _strcmp_~i~0 1)} assume !(~i~0 < 100000); {531#false} is VALID [2018-11-18 22:57:43,862 INFO L273 TraceCheckUtils]: 13: Hoare triple {531#false} #res := 0; {531#false} is VALID [2018-11-18 22:57:43,863 INFO L273 TraceCheckUtils]: 14: Hoare triple {531#false} assume true; {531#false} is VALID [2018-11-18 22:57:43,863 INFO L268 TraceCheckUtils]: 15: Hoare quadruple {531#false} {530#true} #68#return; {531#false} is VALID [2018-11-18 22:57:43,863 INFO L273 TraceCheckUtils]: 16: Hoare triple {531#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {531#false} is VALID [2018-11-18 22:57:43,864 INFO L273 TraceCheckUtils]: 17: Hoare triple {531#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {531#false} is VALID [2018-11-18 22:57:43,864 INFO L273 TraceCheckUtils]: 18: Hoare triple {531#false} assume true; {531#false} is VALID [2018-11-18 22:57:43,865 INFO L273 TraceCheckUtils]: 19: Hoare triple {531#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {531#false} is VALID [2018-11-18 22:57:43,865 INFO L256 TraceCheckUtils]: 20: Hoare triple {531#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {531#false} is VALID [2018-11-18 22:57:43,865 INFO L273 TraceCheckUtils]: 21: Hoare triple {531#false} ~cond := #in~cond; {531#false} is VALID [2018-11-18 22:57:43,866 INFO L273 TraceCheckUtils]: 22: Hoare triple {531#false} assume 0 == ~cond; {531#false} is VALID [2018-11-18 22:57:43,866 INFO L273 TraceCheckUtils]: 23: Hoare triple {531#false} assume !false; {531#false} is VALID [2018-11-18 22:57:43,867 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 22:57:43,888 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-18 22:57:43,888 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4] total 5 [2018-11-18 22:57:43,888 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 24 [2018-11-18 22:57:43,889 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-18 22:57:43,889 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2018-11-18 22:57:43,942 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-18 22:57:43,942 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2018-11-18 22:57:43,942 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-18 22:57:43,942 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=10, Unknown=0, NotChecked=0, Total=20 [2018-11-18 22:57:43,943 INFO L87 Difference]: Start difference. First operand 29 states and 30 transitions. Second operand 5 states. [2018-11-18 22:57:44,175 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:44,176 INFO L93 Difference]: Finished difference Result 49 states and 51 transitions. [2018-11-18 22:57:44,176 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-11-18 22:57:44,176 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 24 [2018-11-18 22:57:44,176 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-18 22:57:44,177 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-18 22:57:44,180 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 51 transitions. [2018-11-18 22:57:44,180 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-18 22:57:44,182 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 51 transitions. [2018-11-18 22:57:44,182 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 51 transitions. [2018-11-18 22:57:44,258 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-18 22:57:44,260 INFO L225 Difference]: With dead ends: 49 [2018-11-18 22:57:44,260 INFO L226 Difference]: Without dead ends: 33 [2018-11-18 22:57:44,261 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 27 GetRequests, 24 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-18 22:57:44,261 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 33 states. [2018-11-18 22:57:44,277 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 33 to 32. [2018-11-18 22:57:44,277 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-18 22:57:44,277 INFO L82 GeneralOperation]: Start isEquivalent. First operand 33 states. Second operand 32 states. [2018-11-18 22:57:44,278 INFO L74 IsIncluded]: Start isIncluded. First operand 33 states. Second operand 32 states. [2018-11-18 22:57:44,278 INFO L87 Difference]: Start difference. First operand 33 states. Second operand 32 states. [2018-11-18 22:57:44,281 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:44,281 INFO L93 Difference]: Finished difference Result 33 states and 34 transitions. [2018-11-18 22:57:44,282 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 34 transitions. [2018-11-18 22:57:44,282 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 22:57:44,282 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 22:57:44,283 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand 33 states. [2018-11-18 22:57:44,283 INFO L87 Difference]: Start difference. First operand 32 states. Second operand 33 states. [2018-11-18 22:57:44,285 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:44,285 INFO L93 Difference]: Finished difference Result 33 states and 34 transitions. [2018-11-18 22:57:44,286 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 34 transitions. [2018-11-18 22:57:44,286 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 22:57:44,286 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 22:57:44,287 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-18 22:57:44,287 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-18 22:57:44,287 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 32 states. [2018-11-18 22:57:44,289 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 33 transitions. [2018-11-18 22:57:44,289 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 33 transitions. Word has length 24 [2018-11-18 22:57:44,289 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-18 22:57:44,290 INFO L480 AbstractCegarLoop]: Abstraction has 32 states and 33 transitions. [2018-11-18 22:57:44,290 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2018-11-18 22:57:44,290 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 33 transitions. [2018-11-18 22:57:44,291 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2018-11-18 22:57:44,291 INFO L367 BasicCegarLoop]: Found error trace [2018-11-18 22:57:44,291 INFO L375 BasicCegarLoop]: trace histogram [3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-18 22:57:44,291 INFO L423 AbstractCegarLoop]: === Iteration 5 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-18 22:57:44,292 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 22:57:44,292 INFO L82 PathProgramCache]: Analyzing trace with hash 1455234466, now seen corresponding path program 2 times [2018-11-18 22:57:44,292 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 22:57:44,292 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 22:57:44,293 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:44,293 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 22:57:44,293 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:44,310 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:44,398 INFO L256 TraceCheckUtils]: 0: Hoare triple {780#true} call ULTIMATE.init(); {780#true} is VALID [2018-11-18 22:57:44,398 INFO L273 TraceCheckUtils]: 1: Hoare triple {780#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {780#true} is VALID [2018-11-18 22:57:44,399 INFO L273 TraceCheckUtils]: 2: Hoare triple {780#true} assume true; {780#true} is VALID [2018-11-18 22:57:44,399 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {780#true} {780#true} #64#return; {780#true} is VALID [2018-11-18 22:57:44,400 INFO L256 TraceCheckUtils]: 4: Hoare triple {780#true} call #t~ret6 := main(); {780#true} is VALID [2018-11-18 22:57:44,400 INFO L273 TraceCheckUtils]: 5: Hoare triple {780#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {780#true} is VALID [2018-11-18 22:57:44,400 INFO L256 TraceCheckUtils]: 6: Hoare triple {780#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {780#true} is VALID [2018-11-18 22:57:44,401 INFO L273 TraceCheckUtils]: 7: Hoare triple {780#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {782#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:44,405 INFO L273 TraceCheckUtils]: 8: Hoare triple {782#(= _strcmp_~i~0 0)} assume true; {782#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:44,405 INFO L273 TraceCheckUtils]: 9: Hoare triple {782#(= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {782#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:44,407 INFO L273 TraceCheckUtils]: 10: Hoare triple {782#(= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {783#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:44,420 INFO L273 TraceCheckUtils]: 11: Hoare triple {783#(<= _strcmp_~i~0 1)} assume true; {783#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:44,422 INFO L273 TraceCheckUtils]: 12: Hoare triple {783#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {783#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:44,424 INFO L273 TraceCheckUtils]: 13: Hoare triple {783#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {784#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:44,426 INFO L273 TraceCheckUtils]: 14: Hoare triple {784#(<= _strcmp_~i~0 2)} assume true; {784#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:44,428 INFO L273 TraceCheckUtils]: 15: Hoare triple {784#(<= _strcmp_~i~0 2)} assume !(~i~0 < 100000); {781#false} is VALID [2018-11-18 22:57:44,429 INFO L273 TraceCheckUtils]: 16: Hoare triple {781#false} #res := 0; {781#false} is VALID [2018-11-18 22:57:44,429 INFO L273 TraceCheckUtils]: 17: Hoare triple {781#false} assume true; {781#false} is VALID [2018-11-18 22:57:44,429 INFO L268 TraceCheckUtils]: 18: Hoare quadruple {781#false} {780#true} #68#return; {781#false} is VALID [2018-11-18 22:57:44,430 INFO L273 TraceCheckUtils]: 19: Hoare triple {781#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {781#false} is VALID [2018-11-18 22:57:44,430 INFO L273 TraceCheckUtils]: 20: Hoare triple {781#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {781#false} is VALID [2018-11-18 22:57:44,430 INFO L273 TraceCheckUtils]: 21: Hoare triple {781#false} assume true; {781#false} is VALID [2018-11-18 22:57:44,430 INFO L273 TraceCheckUtils]: 22: Hoare triple {781#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {781#false} is VALID [2018-11-18 22:57:44,431 INFO L256 TraceCheckUtils]: 23: Hoare triple {781#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {781#false} is VALID [2018-11-18 22:57:44,431 INFO L273 TraceCheckUtils]: 24: Hoare triple {781#false} ~cond := #in~cond; {781#false} is VALID [2018-11-18 22:57:44,431 INFO L273 TraceCheckUtils]: 25: Hoare triple {781#false} assume 0 == ~cond; {781#false} is VALID [2018-11-18 22:57:44,432 INFO L273 TraceCheckUtils]: 26: Hoare triple {781#false} assume !false; {781#false} is VALID [2018-11-18 22:57:44,433 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 22:57:44,434 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-18 22:57:44,434 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-18 22:57:44,452 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-18 22:57:44,486 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-18 22:57:44,486 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-18 22:57:44,501 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:44,502 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 22:57:44,598 INFO L256 TraceCheckUtils]: 0: Hoare triple {780#true} call ULTIMATE.init(); {780#true} is VALID [2018-11-18 22:57:44,599 INFO L273 TraceCheckUtils]: 1: Hoare triple {780#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {780#true} is VALID [2018-11-18 22:57:44,599 INFO L273 TraceCheckUtils]: 2: Hoare triple {780#true} assume true; {780#true} is VALID [2018-11-18 22:57:44,599 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {780#true} {780#true} #64#return; {780#true} is VALID [2018-11-18 22:57:44,599 INFO L256 TraceCheckUtils]: 4: Hoare triple {780#true} call #t~ret6 := main(); {780#true} is VALID [2018-11-18 22:57:44,599 INFO L273 TraceCheckUtils]: 5: Hoare triple {780#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {780#true} is VALID [2018-11-18 22:57:44,600 INFO L256 TraceCheckUtils]: 6: Hoare triple {780#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {780#true} is VALID [2018-11-18 22:57:44,600 INFO L273 TraceCheckUtils]: 7: Hoare triple {780#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {809#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:44,601 INFO L273 TraceCheckUtils]: 8: Hoare triple {809#(<= _strcmp_~i~0 0)} assume true; {809#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:44,601 INFO L273 TraceCheckUtils]: 9: Hoare triple {809#(<= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {809#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:44,622 INFO L273 TraceCheckUtils]: 10: Hoare triple {809#(<= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {783#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:44,636 INFO L273 TraceCheckUtils]: 11: Hoare triple {783#(<= _strcmp_~i~0 1)} assume true; {783#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:44,651 INFO L273 TraceCheckUtils]: 12: Hoare triple {783#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {783#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:44,657 INFO L273 TraceCheckUtils]: 13: Hoare triple {783#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {784#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:44,658 INFO L273 TraceCheckUtils]: 14: Hoare triple {784#(<= _strcmp_~i~0 2)} assume true; {784#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:44,658 INFO L273 TraceCheckUtils]: 15: Hoare triple {784#(<= _strcmp_~i~0 2)} assume !(~i~0 < 100000); {781#false} is VALID [2018-11-18 22:57:44,658 INFO L273 TraceCheckUtils]: 16: Hoare triple {781#false} #res := 0; {781#false} is VALID [2018-11-18 22:57:44,659 INFO L273 TraceCheckUtils]: 17: Hoare triple {781#false} assume true; {781#false} is VALID [2018-11-18 22:57:44,659 INFO L268 TraceCheckUtils]: 18: Hoare quadruple {781#false} {780#true} #68#return; {781#false} is VALID [2018-11-18 22:57:44,659 INFO L273 TraceCheckUtils]: 19: Hoare triple {781#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {781#false} is VALID [2018-11-18 22:57:44,659 INFO L273 TraceCheckUtils]: 20: Hoare triple {781#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {781#false} is VALID [2018-11-18 22:57:44,660 INFO L273 TraceCheckUtils]: 21: Hoare triple {781#false} assume true; {781#false} is VALID [2018-11-18 22:57:44,660 INFO L273 TraceCheckUtils]: 22: Hoare triple {781#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {781#false} is VALID [2018-11-18 22:57:44,660 INFO L256 TraceCheckUtils]: 23: Hoare triple {781#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {781#false} is VALID [2018-11-18 22:57:44,660 INFO L273 TraceCheckUtils]: 24: Hoare triple {781#false} ~cond := #in~cond; {781#false} is VALID [2018-11-18 22:57:44,660 INFO L273 TraceCheckUtils]: 25: Hoare triple {781#false} assume 0 == ~cond; {781#false} is VALID [2018-11-18 22:57:44,661 INFO L273 TraceCheckUtils]: 26: Hoare triple {781#false} assume !false; {781#false} is VALID [2018-11-18 22:57:44,662 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 22:57:44,680 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-18 22:57:44,681 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 6 [2018-11-18 22:57:44,681 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 27 [2018-11-18 22:57:44,681 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-18 22:57:44,682 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2018-11-18 22:57:44,720 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-18 22:57:44,720 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2018-11-18 22:57:44,720 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2018-11-18 22:57:44,721 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2018-11-18 22:57:44,721 INFO L87 Difference]: Start difference. First operand 32 states and 33 transitions. Second operand 6 states. [2018-11-18 22:57:44,857 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:44,857 INFO L93 Difference]: Finished difference Result 52 states and 54 transitions. [2018-11-18 22:57:44,857 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-18 22:57:44,857 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 27 [2018-11-18 22:57:44,858 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-18 22:57:44,858 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-18 22:57:44,860 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 54 transitions. [2018-11-18 22:57:44,861 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-18 22:57:44,863 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 54 transitions. [2018-11-18 22:57:44,863 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 54 transitions. [2018-11-18 22:57:45,007 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-18 22:57:45,009 INFO L225 Difference]: With dead ends: 52 [2018-11-18 22:57:45,010 INFO L226 Difference]: Without dead ends: 36 [2018-11-18 22:57:45,010 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 31 GetRequests, 27 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-18 22:57:45,011 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2018-11-18 22:57:45,031 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 35. [2018-11-18 22:57:45,031 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-18 22:57:45,031 INFO L82 GeneralOperation]: Start isEquivalent. First operand 36 states. Second operand 35 states. [2018-11-18 22:57:45,031 INFO L74 IsIncluded]: Start isIncluded. First operand 36 states. Second operand 35 states. [2018-11-18 22:57:45,032 INFO L87 Difference]: Start difference. First operand 36 states. Second operand 35 states. [2018-11-18 22:57:45,033 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:45,034 INFO L93 Difference]: Finished difference Result 36 states and 37 transitions. [2018-11-18 22:57:45,034 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 37 transitions. [2018-11-18 22:57:45,035 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 22:57:45,035 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 22:57:45,035 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand 36 states. [2018-11-18 22:57:45,035 INFO L87 Difference]: Start difference. First operand 35 states. Second operand 36 states. [2018-11-18 22:57:45,037 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:45,038 INFO L93 Difference]: Finished difference Result 36 states and 37 transitions. [2018-11-18 22:57:45,038 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 37 transitions. [2018-11-18 22:57:45,038 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 22:57:45,039 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 22:57:45,039 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-18 22:57:45,039 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-18 22:57:45,039 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 35 states. [2018-11-18 22:57:45,041 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 36 transitions. [2018-11-18 22:57:45,041 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 36 transitions. Word has length 27 [2018-11-18 22:57:45,042 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-18 22:57:45,042 INFO L480 AbstractCegarLoop]: Abstraction has 35 states and 36 transitions. [2018-11-18 22:57:45,042 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2018-11-18 22:57:45,042 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 36 transitions. [2018-11-18 22:57:45,043 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2018-11-18 22:57:45,043 INFO L367 BasicCegarLoop]: Found error trace [2018-11-18 22:57:45,043 INFO L375 BasicCegarLoop]: trace histogram [4, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-18 22:57:45,044 INFO L423 AbstractCegarLoop]: === Iteration 6 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-18 22:57:45,044 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 22:57:45,044 INFO L82 PathProgramCache]: Analyzing trace with hash 792458310, now seen corresponding path program 3 times [2018-11-18 22:57:45,044 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 22:57:45,045 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 22:57:45,045 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:45,046 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-18 22:57:45,046 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:45,063 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:45,160 INFO L256 TraceCheckUtils]: 0: Hoare triple {1054#true} call ULTIMATE.init(); {1054#true} is VALID [2018-11-18 22:57:45,161 INFO L273 TraceCheckUtils]: 1: Hoare triple {1054#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {1054#true} is VALID [2018-11-18 22:57:45,161 INFO L273 TraceCheckUtils]: 2: Hoare triple {1054#true} assume true; {1054#true} is VALID [2018-11-18 22:57:45,162 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1054#true} {1054#true} #64#return; {1054#true} is VALID [2018-11-18 22:57:45,162 INFO L256 TraceCheckUtils]: 4: Hoare triple {1054#true} call #t~ret6 := main(); {1054#true} is VALID [2018-11-18 22:57:45,162 INFO L273 TraceCheckUtils]: 5: Hoare triple {1054#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {1054#true} is VALID [2018-11-18 22:57:45,163 INFO L256 TraceCheckUtils]: 6: Hoare triple {1054#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {1054#true} is VALID [2018-11-18 22:57:45,163 INFO L273 TraceCheckUtils]: 7: Hoare triple {1054#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {1056#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:45,164 INFO L273 TraceCheckUtils]: 8: Hoare triple {1056#(= _strcmp_~i~0 0)} assume true; {1056#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:45,164 INFO L273 TraceCheckUtils]: 9: Hoare triple {1056#(= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {1056#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:45,165 INFO L273 TraceCheckUtils]: 10: Hoare triple {1056#(= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {1057#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:45,165 INFO L273 TraceCheckUtils]: 11: Hoare triple {1057#(<= _strcmp_~i~0 1)} assume true; {1057#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:45,165 INFO L273 TraceCheckUtils]: 12: Hoare triple {1057#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {1057#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:45,172 INFO L273 TraceCheckUtils]: 13: Hoare triple {1057#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {1058#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:45,173 INFO L273 TraceCheckUtils]: 14: Hoare triple {1058#(<= _strcmp_~i~0 2)} assume true; {1058#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:45,173 INFO L273 TraceCheckUtils]: 15: Hoare triple {1058#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {1058#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:45,174 INFO L273 TraceCheckUtils]: 16: Hoare triple {1058#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {1059#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:45,174 INFO L273 TraceCheckUtils]: 17: Hoare triple {1059#(<= _strcmp_~i~0 3)} assume true; {1059#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:45,175 INFO L273 TraceCheckUtils]: 18: Hoare triple {1059#(<= _strcmp_~i~0 3)} assume !(~i~0 < 100000); {1055#false} is VALID [2018-11-18 22:57:45,175 INFO L273 TraceCheckUtils]: 19: Hoare triple {1055#false} #res := 0; {1055#false} is VALID [2018-11-18 22:57:45,175 INFO L273 TraceCheckUtils]: 20: Hoare triple {1055#false} assume true; {1055#false} is VALID [2018-11-18 22:57:45,176 INFO L268 TraceCheckUtils]: 21: Hoare quadruple {1055#false} {1054#true} #68#return; {1055#false} is VALID [2018-11-18 22:57:45,176 INFO L273 TraceCheckUtils]: 22: Hoare triple {1055#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {1055#false} is VALID [2018-11-18 22:57:45,176 INFO L273 TraceCheckUtils]: 23: Hoare triple {1055#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {1055#false} is VALID [2018-11-18 22:57:45,176 INFO L273 TraceCheckUtils]: 24: Hoare triple {1055#false} assume true; {1055#false} is VALID [2018-11-18 22:57:45,176 INFO L273 TraceCheckUtils]: 25: Hoare triple {1055#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {1055#false} is VALID [2018-11-18 22:57:45,177 INFO L256 TraceCheckUtils]: 26: Hoare triple {1055#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {1055#false} is VALID [2018-11-18 22:57:45,177 INFO L273 TraceCheckUtils]: 27: Hoare triple {1055#false} ~cond := #in~cond; {1055#false} is VALID [2018-11-18 22:57:45,177 INFO L273 TraceCheckUtils]: 28: Hoare triple {1055#false} assume 0 == ~cond; {1055#false} is VALID [2018-11-18 22:57:45,178 INFO L273 TraceCheckUtils]: 29: Hoare triple {1055#false} assume !false; {1055#false} is VALID [2018-11-18 22:57:45,180 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 0 proven. 15 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 22:57:45,181 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-18 22:57:45,181 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-18 22:57:45,197 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-18 22:57:45,226 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2018-11-18 22:57:45,226 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-18 22:57:45,243 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:45,244 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 22:57:45,397 INFO L256 TraceCheckUtils]: 0: Hoare triple {1054#true} call ULTIMATE.init(); {1054#true} is VALID [2018-11-18 22:57:45,398 INFO L273 TraceCheckUtils]: 1: Hoare triple {1054#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {1054#true} is VALID [2018-11-18 22:57:45,398 INFO L273 TraceCheckUtils]: 2: Hoare triple {1054#true} assume true; {1054#true} is VALID [2018-11-18 22:57:45,399 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1054#true} {1054#true} #64#return; {1054#true} is VALID [2018-11-18 22:57:45,399 INFO L256 TraceCheckUtils]: 4: Hoare triple {1054#true} call #t~ret6 := main(); {1054#true} is VALID [2018-11-18 22:57:45,399 INFO L273 TraceCheckUtils]: 5: Hoare triple {1054#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {1054#true} is VALID [2018-11-18 22:57:45,400 INFO L256 TraceCheckUtils]: 6: Hoare triple {1054#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {1054#true} is VALID [2018-11-18 22:57:45,400 INFO L273 TraceCheckUtils]: 7: Hoare triple {1054#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {1084#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:45,416 INFO L273 TraceCheckUtils]: 8: Hoare triple {1084#(<= _strcmp_~i~0 0)} assume true; {1084#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:45,431 INFO L273 TraceCheckUtils]: 9: Hoare triple {1084#(<= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {1084#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:45,443 INFO L273 TraceCheckUtils]: 10: Hoare triple {1084#(<= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {1057#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:45,444 INFO L273 TraceCheckUtils]: 11: Hoare triple {1057#(<= _strcmp_~i~0 1)} assume true; {1057#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:45,446 INFO L273 TraceCheckUtils]: 12: Hoare triple {1057#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {1057#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:45,446 INFO L273 TraceCheckUtils]: 13: Hoare triple {1057#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {1058#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:45,447 INFO L273 TraceCheckUtils]: 14: Hoare triple {1058#(<= _strcmp_~i~0 2)} assume true; {1058#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:45,447 INFO L273 TraceCheckUtils]: 15: Hoare triple {1058#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {1058#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:45,448 INFO L273 TraceCheckUtils]: 16: Hoare triple {1058#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {1059#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:45,448 INFO L273 TraceCheckUtils]: 17: Hoare triple {1059#(<= _strcmp_~i~0 3)} assume true; {1059#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:45,449 INFO L273 TraceCheckUtils]: 18: Hoare triple {1059#(<= _strcmp_~i~0 3)} assume !(~i~0 < 100000); {1055#false} is VALID [2018-11-18 22:57:45,449 INFO L273 TraceCheckUtils]: 19: Hoare triple {1055#false} #res := 0; {1055#false} is VALID [2018-11-18 22:57:45,450 INFO L273 TraceCheckUtils]: 20: Hoare triple {1055#false} assume true; {1055#false} is VALID [2018-11-18 22:57:45,450 INFO L268 TraceCheckUtils]: 21: Hoare quadruple {1055#false} {1054#true} #68#return; {1055#false} is VALID [2018-11-18 22:57:45,451 INFO L273 TraceCheckUtils]: 22: Hoare triple {1055#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {1055#false} is VALID [2018-11-18 22:57:45,451 INFO L273 TraceCheckUtils]: 23: Hoare triple {1055#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {1055#false} is VALID [2018-11-18 22:57:45,451 INFO L273 TraceCheckUtils]: 24: Hoare triple {1055#false} assume true; {1055#false} is VALID [2018-11-18 22:57:45,452 INFO L273 TraceCheckUtils]: 25: Hoare triple {1055#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {1055#false} is VALID [2018-11-18 22:57:45,452 INFO L256 TraceCheckUtils]: 26: Hoare triple {1055#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {1055#false} is VALID [2018-11-18 22:57:45,452 INFO L273 TraceCheckUtils]: 27: Hoare triple {1055#false} ~cond := #in~cond; {1055#false} is VALID [2018-11-18 22:57:45,452 INFO L273 TraceCheckUtils]: 28: Hoare triple {1055#false} assume 0 == ~cond; {1055#false} is VALID [2018-11-18 22:57:45,453 INFO L273 TraceCheckUtils]: 29: Hoare triple {1055#false} assume !false; {1055#false} is VALID [2018-11-18 22:57:45,454 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 0 proven. 15 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 22:57:45,474 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-18 22:57:45,474 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 7 [2018-11-18 22:57:45,474 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 30 [2018-11-18 22:57:45,475 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-18 22:57:45,475 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states. [2018-11-18 22:57:45,516 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-18 22:57:45,516 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2018-11-18 22:57:45,517 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2018-11-18 22:57:45,517 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=21, Unknown=0, NotChecked=0, Total=42 [2018-11-18 22:57:45,517 INFO L87 Difference]: Start difference. First operand 35 states and 36 transitions. Second operand 7 states. [2018-11-18 22:57:45,692 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:45,692 INFO L93 Difference]: Finished difference Result 55 states and 57 transitions. [2018-11-18 22:57:45,692 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2018-11-18 22:57:45,693 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 30 [2018-11-18 22:57:45,693 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-18 22:57:45,693 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2018-11-18 22:57:45,695 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 57 transitions. [2018-11-18 22:57:45,695 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2018-11-18 22:57:45,697 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 57 transitions. [2018-11-18 22:57:45,697 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 57 transitions. [2018-11-18 22:57:45,825 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-18 22:57:45,827 INFO L225 Difference]: With dead ends: 55 [2018-11-18 22:57:45,827 INFO L226 Difference]: Without dead ends: 39 [2018-11-18 22:57:45,828 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 35 GetRequests, 30 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=21, Invalid=21, Unknown=0, NotChecked=0, Total=42 [2018-11-18 22:57:45,828 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39 states. [2018-11-18 22:57:45,878 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39 to 38. [2018-11-18 22:57:45,878 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-18 22:57:45,879 INFO L82 GeneralOperation]: Start isEquivalent. First operand 39 states. Second operand 38 states. [2018-11-18 22:57:45,879 INFO L74 IsIncluded]: Start isIncluded. First operand 39 states. Second operand 38 states. [2018-11-18 22:57:45,879 INFO L87 Difference]: Start difference. First operand 39 states. Second operand 38 states. [2018-11-18 22:57:45,881 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:45,882 INFO L93 Difference]: Finished difference Result 39 states and 40 transitions. [2018-11-18 22:57:45,882 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 40 transitions. [2018-11-18 22:57:45,883 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 22:57:45,883 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 22:57:45,883 INFO L74 IsIncluded]: Start isIncluded. First operand 38 states. Second operand 39 states. [2018-11-18 22:57:45,883 INFO L87 Difference]: Start difference. First operand 38 states. Second operand 39 states. [2018-11-18 22:57:45,885 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:45,885 INFO L93 Difference]: Finished difference Result 39 states and 40 transitions. [2018-11-18 22:57:45,885 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 40 transitions. [2018-11-18 22:57:45,886 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 22:57:45,886 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 22:57:45,887 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-18 22:57:45,887 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-18 22:57:45,887 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 38 states. [2018-11-18 22:57:45,891 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 39 transitions. [2018-11-18 22:57:45,891 INFO L78 Accepts]: Start accepts. Automaton has 38 states and 39 transitions. Word has length 30 [2018-11-18 22:57:45,891 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-18 22:57:45,891 INFO L480 AbstractCegarLoop]: Abstraction has 38 states and 39 transitions. [2018-11-18 22:57:45,892 INFO L481 AbstractCegarLoop]: Interpolant automaton has 7 states. [2018-11-18 22:57:45,892 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 39 transitions. [2018-11-18 22:57:45,893 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2018-11-18 22:57:45,893 INFO L367 BasicCegarLoop]: Found error trace [2018-11-18 22:57:45,893 INFO L375 BasicCegarLoop]: trace histogram [5, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-18 22:57:45,893 INFO L423 AbstractCegarLoop]: === Iteration 7 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-18 22:57:45,893 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 22:57:45,896 INFO L82 PathProgramCache]: Analyzing trace with hash -7345374, now seen corresponding path program 4 times [2018-11-18 22:57:45,896 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 22:57:45,896 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 22:57:45,897 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:45,897 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-18 22:57:45,898 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:45,929 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:46,036 INFO L256 TraceCheckUtils]: 0: Hoare triple {1352#true} call ULTIMATE.init(); {1352#true} is VALID [2018-11-18 22:57:46,037 INFO L273 TraceCheckUtils]: 1: Hoare triple {1352#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {1352#true} is VALID [2018-11-18 22:57:46,037 INFO L273 TraceCheckUtils]: 2: Hoare triple {1352#true} assume true; {1352#true} is VALID [2018-11-18 22:57:46,037 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1352#true} {1352#true} #64#return; {1352#true} is VALID [2018-11-18 22:57:46,037 INFO L256 TraceCheckUtils]: 4: Hoare triple {1352#true} call #t~ret6 := main(); {1352#true} is VALID [2018-11-18 22:57:46,038 INFO L273 TraceCheckUtils]: 5: Hoare triple {1352#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {1352#true} is VALID [2018-11-18 22:57:46,038 INFO L256 TraceCheckUtils]: 6: Hoare triple {1352#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {1352#true} is VALID [2018-11-18 22:57:46,039 INFO L273 TraceCheckUtils]: 7: Hoare triple {1352#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {1354#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:46,039 INFO L273 TraceCheckUtils]: 8: Hoare triple {1354#(= _strcmp_~i~0 0)} assume true; {1354#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:46,040 INFO L273 TraceCheckUtils]: 9: Hoare triple {1354#(= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {1354#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:46,040 INFO L273 TraceCheckUtils]: 10: Hoare triple {1354#(= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {1355#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:46,041 INFO L273 TraceCheckUtils]: 11: Hoare triple {1355#(<= _strcmp_~i~0 1)} assume true; {1355#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:46,042 INFO L273 TraceCheckUtils]: 12: Hoare triple {1355#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {1355#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:46,043 INFO L273 TraceCheckUtils]: 13: Hoare triple {1355#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {1356#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:46,043 INFO L273 TraceCheckUtils]: 14: Hoare triple {1356#(<= _strcmp_~i~0 2)} assume true; {1356#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:46,044 INFO L273 TraceCheckUtils]: 15: Hoare triple {1356#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {1356#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:46,045 INFO L273 TraceCheckUtils]: 16: Hoare triple {1356#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {1357#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:46,046 INFO L273 TraceCheckUtils]: 17: Hoare triple {1357#(<= _strcmp_~i~0 3)} assume true; {1357#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:46,046 INFO L273 TraceCheckUtils]: 18: Hoare triple {1357#(<= _strcmp_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {1357#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:46,047 INFO L273 TraceCheckUtils]: 19: Hoare triple {1357#(<= _strcmp_~i~0 3)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {1358#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:46,048 INFO L273 TraceCheckUtils]: 20: Hoare triple {1358#(<= _strcmp_~i~0 4)} assume true; {1358#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:46,049 INFO L273 TraceCheckUtils]: 21: Hoare triple {1358#(<= _strcmp_~i~0 4)} assume !(~i~0 < 100000); {1353#false} is VALID [2018-11-18 22:57:46,049 INFO L273 TraceCheckUtils]: 22: Hoare triple {1353#false} #res := 0; {1353#false} is VALID [2018-11-18 22:57:46,050 INFO L273 TraceCheckUtils]: 23: Hoare triple {1353#false} assume true; {1353#false} is VALID [2018-11-18 22:57:46,050 INFO L268 TraceCheckUtils]: 24: Hoare quadruple {1353#false} {1352#true} #68#return; {1353#false} is VALID [2018-11-18 22:57:46,050 INFO L273 TraceCheckUtils]: 25: Hoare triple {1353#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {1353#false} is VALID [2018-11-18 22:57:46,051 INFO L273 TraceCheckUtils]: 26: Hoare triple {1353#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {1353#false} is VALID [2018-11-18 22:57:46,051 INFO L273 TraceCheckUtils]: 27: Hoare triple {1353#false} assume true; {1353#false} is VALID [2018-11-18 22:57:46,052 INFO L273 TraceCheckUtils]: 28: Hoare triple {1353#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {1353#false} is VALID [2018-11-18 22:57:46,052 INFO L256 TraceCheckUtils]: 29: Hoare triple {1353#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {1353#false} is VALID [2018-11-18 22:57:46,053 INFO L273 TraceCheckUtils]: 30: Hoare triple {1353#false} ~cond := #in~cond; {1353#false} is VALID [2018-11-18 22:57:46,053 INFO L273 TraceCheckUtils]: 31: Hoare triple {1353#false} assume 0 == ~cond; {1353#false} is VALID [2018-11-18 22:57:46,053 INFO L273 TraceCheckUtils]: 32: Hoare triple {1353#false} assume !false; {1353#false} is VALID [2018-11-18 22:57:46,055 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 0 proven. 26 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 22:57:46,055 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-18 22:57:46,055 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 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-18 22:57:46,076 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-18 22:57:46,129 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-18 22:57:46,129 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-18 22:57:46,159 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:46,160 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 22:57:46,352 INFO L256 TraceCheckUtils]: 0: Hoare triple {1352#true} call ULTIMATE.init(); {1352#true} is VALID [2018-11-18 22:57:46,352 INFO L273 TraceCheckUtils]: 1: Hoare triple {1352#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {1352#true} is VALID [2018-11-18 22:57:46,352 INFO L273 TraceCheckUtils]: 2: Hoare triple {1352#true} assume true; {1352#true} is VALID [2018-11-18 22:57:46,353 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1352#true} {1352#true} #64#return; {1352#true} is VALID [2018-11-18 22:57:46,353 INFO L256 TraceCheckUtils]: 4: Hoare triple {1352#true} call #t~ret6 := main(); {1352#true} is VALID [2018-11-18 22:57:46,353 INFO L273 TraceCheckUtils]: 5: Hoare triple {1352#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {1352#true} is VALID [2018-11-18 22:57:46,354 INFO L256 TraceCheckUtils]: 6: Hoare triple {1352#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {1352#true} is VALID [2018-11-18 22:57:46,355 INFO L273 TraceCheckUtils]: 7: Hoare triple {1352#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {1383#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:46,355 INFO L273 TraceCheckUtils]: 8: Hoare triple {1383#(<= _strcmp_~i~0 0)} assume true; {1383#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:46,356 INFO L273 TraceCheckUtils]: 9: Hoare triple {1383#(<= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {1383#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:46,357 INFO L273 TraceCheckUtils]: 10: Hoare triple {1383#(<= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {1355#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:46,358 INFO L273 TraceCheckUtils]: 11: Hoare triple {1355#(<= _strcmp_~i~0 1)} assume true; {1355#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:46,359 INFO L273 TraceCheckUtils]: 12: Hoare triple {1355#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {1355#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:46,360 INFO L273 TraceCheckUtils]: 13: Hoare triple {1355#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {1356#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:46,360 INFO L273 TraceCheckUtils]: 14: Hoare triple {1356#(<= _strcmp_~i~0 2)} assume true; {1356#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:46,361 INFO L273 TraceCheckUtils]: 15: Hoare triple {1356#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {1356#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:46,366 INFO L273 TraceCheckUtils]: 16: Hoare triple {1356#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {1357#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:46,367 INFO L273 TraceCheckUtils]: 17: Hoare triple {1357#(<= _strcmp_~i~0 3)} assume true; {1357#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:46,367 INFO L273 TraceCheckUtils]: 18: Hoare triple {1357#(<= _strcmp_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {1357#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:46,368 INFO L273 TraceCheckUtils]: 19: Hoare triple {1357#(<= _strcmp_~i~0 3)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {1358#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:46,369 INFO L273 TraceCheckUtils]: 20: Hoare triple {1358#(<= _strcmp_~i~0 4)} assume true; {1358#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:46,369 INFO L273 TraceCheckUtils]: 21: Hoare triple {1358#(<= _strcmp_~i~0 4)} assume !(~i~0 < 100000); {1353#false} is VALID [2018-11-18 22:57:46,369 INFO L273 TraceCheckUtils]: 22: Hoare triple {1353#false} #res := 0; {1353#false} is VALID [2018-11-18 22:57:46,370 INFO L273 TraceCheckUtils]: 23: Hoare triple {1353#false} assume true; {1353#false} is VALID [2018-11-18 22:57:46,370 INFO L268 TraceCheckUtils]: 24: Hoare quadruple {1353#false} {1352#true} #68#return; {1353#false} is VALID [2018-11-18 22:57:46,370 INFO L273 TraceCheckUtils]: 25: Hoare triple {1353#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {1353#false} is VALID [2018-11-18 22:57:46,370 INFO L273 TraceCheckUtils]: 26: Hoare triple {1353#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {1353#false} is VALID [2018-11-18 22:57:46,371 INFO L273 TraceCheckUtils]: 27: Hoare triple {1353#false} assume true; {1353#false} is VALID [2018-11-18 22:57:46,371 INFO L273 TraceCheckUtils]: 28: Hoare triple {1353#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {1353#false} is VALID [2018-11-18 22:57:46,371 INFO L256 TraceCheckUtils]: 29: Hoare triple {1353#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {1353#false} is VALID [2018-11-18 22:57:46,372 INFO L273 TraceCheckUtils]: 30: Hoare triple {1353#false} ~cond := #in~cond; {1353#false} is VALID [2018-11-18 22:57:46,372 INFO L273 TraceCheckUtils]: 31: Hoare triple {1353#false} assume 0 == ~cond; {1353#false} is VALID [2018-11-18 22:57:46,372 INFO L273 TraceCheckUtils]: 32: Hoare triple {1353#false} assume !false; {1353#false} is VALID [2018-11-18 22:57:46,374 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 0 proven. 26 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 22:57:46,394 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-18 22:57:46,394 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 8 [2018-11-18 22:57:46,395 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 33 [2018-11-18 22:57:46,395 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-18 22:57:46,395 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2018-11-18 22:57:46,456 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-18 22:57:46,456 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2018-11-18 22:57:46,457 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2018-11-18 22:57:46,457 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=28, Unknown=0, NotChecked=0, Total=56 [2018-11-18 22:57:46,457 INFO L87 Difference]: Start difference. First operand 38 states and 39 transitions. Second operand 8 states. [2018-11-18 22:57:46,737 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:46,737 INFO L93 Difference]: Finished difference Result 58 states and 60 transitions. [2018-11-18 22:57:46,737 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2018-11-18 22:57:46,737 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 33 [2018-11-18 22:57:46,738 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-18 22:57:46,738 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-18 22:57:46,740 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 60 transitions. [2018-11-18 22:57:46,740 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2018-11-18 22:57:46,742 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 60 transitions. [2018-11-18 22:57:46,742 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 60 transitions. [2018-11-18 22:57:46,834 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-18 22:57:46,835 INFO L225 Difference]: With dead ends: 58 [2018-11-18 22:57:46,836 INFO L226 Difference]: Without dead ends: 42 [2018-11-18 22:57:46,837 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 39 GetRequests, 33 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-18 22:57:46,837 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42 states. [2018-11-18 22:57:46,860 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42 to 41. [2018-11-18 22:57:46,860 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-18 22:57:46,860 INFO L82 GeneralOperation]: Start isEquivalent. First operand 42 states. Second operand 41 states. [2018-11-18 22:57:46,860 INFO L74 IsIncluded]: Start isIncluded. First operand 42 states. Second operand 41 states. [2018-11-18 22:57:46,860 INFO L87 Difference]: Start difference. First operand 42 states. Second operand 41 states. [2018-11-18 22:57:46,862 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:46,862 INFO L93 Difference]: Finished difference Result 42 states and 43 transitions. [2018-11-18 22:57:46,863 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 43 transitions. [2018-11-18 22:57:46,863 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 22:57:46,863 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 22:57:46,863 INFO L74 IsIncluded]: Start isIncluded. First operand 41 states. Second operand 42 states. [2018-11-18 22:57:46,864 INFO L87 Difference]: Start difference. First operand 41 states. Second operand 42 states. [2018-11-18 22:57:46,865 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:46,866 INFO L93 Difference]: Finished difference Result 42 states and 43 transitions. [2018-11-18 22:57:46,866 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 43 transitions. [2018-11-18 22:57:46,866 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 22:57:46,867 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 22:57:46,867 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-18 22:57:46,867 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-18 22:57:46,867 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 41 states. [2018-11-18 22:57:46,869 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 42 transitions. [2018-11-18 22:57:46,869 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 42 transitions. Word has length 33 [2018-11-18 22:57:46,869 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-18 22:57:46,869 INFO L480 AbstractCegarLoop]: Abstraction has 41 states and 42 transitions. [2018-11-18 22:57:46,870 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2018-11-18 22:57:46,870 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 42 transitions. [2018-11-18 22:57:46,871 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2018-11-18 22:57:46,871 INFO L367 BasicCegarLoop]: Found error trace [2018-11-18 22:57:46,871 INFO L375 BasicCegarLoop]: trace histogram [6, 5, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-18 22:57:46,871 INFO L423 AbstractCegarLoop]: === Iteration 8 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-18 22:57:46,871 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 22:57:46,872 INFO L82 PathProgramCache]: Analyzing trace with hash 1519662790, now seen corresponding path program 5 times [2018-11-18 22:57:46,872 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 22:57:46,872 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 22:57:46,873 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:46,873 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-18 22:57:46,873 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:46,890 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:47,012 INFO L256 TraceCheckUtils]: 0: Hoare triple {1674#true} call ULTIMATE.init(); {1674#true} is VALID [2018-11-18 22:57:47,012 INFO L273 TraceCheckUtils]: 1: Hoare triple {1674#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {1674#true} is VALID [2018-11-18 22:57:47,013 INFO L273 TraceCheckUtils]: 2: Hoare triple {1674#true} assume true; {1674#true} is VALID [2018-11-18 22:57:47,013 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1674#true} {1674#true} #64#return; {1674#true} is VALID [2018-11-18 22:57:47,013 INFO L256 TraceCheckUtils]: 4: Hoare triple {1674#true} call #t~ret6 := main(); {1674#true} is VALID [2018-11-18 22:57:47,014 INFO L273 TraceCheckUtils]: 5: Hoare triple {1674#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {1674#true} is VALID [2018-11-18 22:57:47,014 INFO L256 TraceCheckUtils]: 6: Hoare triple {1674#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {1674#true} is VALID [2018-11-18 22:57:47,015 INFO L273 TraceCheckUtils]: 7: Hoare triple {1674#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {1676#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:47,015 INFO L273 TraceCheckUtils]: 8: Hoare triple {1676#(= _strcmp_~i~0 0)} assume true; {1676#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:47,015 INFO L273 TraceCheckUtils]: 9: Hoare triple {1676#(= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {1676#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:47,016 INFO L273 TraceCheckUtils]: 10: Hoare triple {1676#(= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {1677#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:47,016 INFO L273 TraceCheckUtils]: 11: Hoare triple {1677#(<= _strcmp_~i~0 1)} assume true; {1677#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:47,017 INFO L273 TraceCheckUtils]: 12: Hoare triple {1677#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {1677#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:47,018 INFO L273 TraceCheckUtils]: 13: Hoare triple {1677#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {1678#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:47,018 INFO L273 TraceCheckUtils]: 14: Hoare triple {1678#(<= _strcmp_~i~0 2)} assume true; {1678#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:47,019 INFO L273 TraceCheckUtils]: 15: Hoare triple {1678#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {1678#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:47,020 INFO L273 TraceCheckUtils]: 16: Hoare triple {1678#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {1679#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:47,020 INFO L273 TraceCheckUtils]: 17: Hoare triple {1679#(<= _strcmp_~i~0 3)} assume true; {1679#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:47,021 INFO L273 TraceCheckUtils]: 18: Hoare triple {1679#(<= _strcmp_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {1679#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:47,022 INFO L273 TraceCheckUtils]: 19: Hoare triple {1679#(<= _strcmp_~i~0 3)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {1680#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:47,023 INFO L273 TraceCheckUtils]: 20: Hoare triple {1680#(<= _strcmp_~i~0 4)} assume true; {1680#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:47,023 INFO L273 TraceCheckUtils]: 21: Hoare triple {1680#(<= _strcmp_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {1680#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:47,024 INFO L273 TraceCheckUtils]: 22: Hoare triple {1680#(<= _strcmp_~i~0 4)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {1681#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:47,025 INFO L273 TraceCheckUtils]: 23: Hoare triple {1681#(<= _strcmp_~i~0 5)} assume true; {1681#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:47,026 INFO L273 TraceCheckUtils]: 24: Hoare triple {1681#(<= _strcmp_~i~0 5)} assume !(~i~0 < 100000); {1675#false} is VALID [2018-11-18 22:57:47,026 INFO L273 TraceCheckUtils]: 25: Hoare triple {1675#false} #res := 0; {1675#false} is VALID [2018-11-18 22:57:47,026 INFO L273 TraceCheckUtils]: 26: Hoare triple {1675#false} assume true; {1675#false} is VALID [2018-11-18 22:57:47,026 INFO L268 TraceCheckUtils]: 27: Hoare quadruple {1675#false} {1674#true} #68#return; {1675#false} is VALID [2018-11-18 22:57:47,027 INFO L273 TraceCheckUtils]: 28: Hoare triple {1675#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {1675#false} is VALID [2018-11-18 22:57:47,027 INFO L273 TraceCheckUtils]: 29: Hoare triple {1675#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {1675#false} is VALID [2018-11-18 22:57:47,027 INFO L273 TraceCheckUtils]: 30: Hoare triple {1675#false} assume true; {1675#false} is VALID [2018-11-18 22:57:47,027 INFO L273 TraceCheckUtils]: 31: Hoare triple {1675#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {1675#false} is VALID [2018-11-18 22:57:47,028 INFO L256 TraceCheckUtils]: 32: Hoare triple {1675#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {1675#false} is VALID [2018-11-18 22:57:47,028 INFO L273 TraceCheckUtils]: 33: Hoare triple {1675#false} ~cond := #in~cond; {1675#false} is VALID [2018-11-18 22:57:47,028 INFO L273 TraceCheckUtils]: 34: Hoare triple {1675#false} assume 0 == ~cond; {1675#false} is VALID [2018-11-18 22:57:47,029 INFO L273 TraceCheckUtils]: 35: Hoare triple {1675#false} assume !false; {1675#false} is VALID [2018-11-18 22:57:47,030 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 0 proven. 40 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 22:57:47,030 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-18 22:57:47,030 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-18 22:57:47,041 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-18 22:57:47,081 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 6 check-sat command(s) [2018-11-18 22:57:47,081 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-18 22:57:47,095 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:47,096 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 22:57:47,206 INFO L256 TraceCheckUtils]: 0: Hoare triple {1674#true} call ULTIMATE.init(); {1674#true} is VALID [2018-11-18 22:57:47,207 INFO L273 TraceCheckUtils]: 1: Hoare triple {1674#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {1674#true} is VALID [2018-11-18 22:57:47,207 INFO L273 TraceCheckUtils]: 2: Hoare triple {1674#true} assume true; {1674#true} is VALID [2018-11-18 22:57:47,207 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {1674#true} {1674#true} #64#return; {1674#true} is VALID [2018-11-18 22:57:47,208 INFO L256 TraceCheckUtils]: 4: Hoare triple {1674#true} call #t~ret6 := main(); {1674#true} is VALID [2018-11-18 22:57:47,208 INFO L273 TraceCheckUtils]: 5: Hoare triple {1674#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {1674#true} is VALID [2018-11-18 22:57:47,209 INFO L256 TraceCheckUtils]: 6: Hoare triple {1674#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {1674#true} is VALID [2018-11-18 22:57:47,210 INFO L273 TraceCheckUtils]: 7: Hoare triple {1674#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {1706#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:47,210 INFO L273 TraceCheckUtils]: 8: Hoare triple {1706#(<= _strcmp_~i~0 0)} assume true; {1706#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:47,211 INFO L273 TraceCheckUtils]: 9: Hoare triple {1706#(<= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {1706#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:47,212 INFO L273 TraceCheckUtils]: 10: Hoare triple {1706#(<= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {1677#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:47,212 INFO L273 TraceCheckUtils]: 11: Hoare triple {1677#(<= _strcmp_~i~0 1)} assume true; {1677#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:47,212 INFO L273 TraceCheckUtils]: 12: Hoare triple {1677#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {1677#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:47,213 INFO L273 TraceCheckUtils]: 13: Hoare triple {1677#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {1678#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:47,214 INFO L273 TraceCheckUtils]: 14: Hoare triple {1678#(<= _strcmp_~i~0 2)} assume true; {1678#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:47,214 INFO L273 TraceCheckUtils]: 15: Hoare triple {1678#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {1678#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:47,215 INFO L273 TraceCheckUtils]: 16: Hoare triple {1678#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {1679#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:47,216 INFO L273 TraceCheckUtils]: 17: Hoare triple {1679#(<= _strcmp_~i~0 3)} assume true; {1679#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:47,217 INFO L273 TraceCheckUtils]: 18: Hoare triple {1679#(<= _strcmp_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {1679#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:47,218 INFO L273 TraceCheckUtils]: 19: Hoare triple {1679#(<= _strcmp_~i~0 3)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {1680#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:47,219 INFO L273 TraceCheckUtils]: 20: Hoare triple {1680#(<= _strcmp_~i~0 4)} assume true; {1680#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:47,219 INFO L273 TraceCheckUtils]: 21: Hoare triple {1680#(<= _strcmp_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {1680#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:47,220 INFO L273 TraceCheckUtils]: 22: Hoare triple {1680#(<= _strcmp_~i~0 4)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {1681#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:47,221 INFO L273 TraceCheckUtils]: 23: Hoare triple {1681#(<= _strcmp_~i~0 5)} assume true; {1681#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:47,222 INFO L273 TraceCheckUtils]: 24: Hoare triple {1681#(<= _strcmp_~i~0 5)} assume !(~i~0 < 100000); {1675#false} is VALID [2018-11-18 22:57:47,222 INFO L273 TraceCheckUtils]: 25: Hoare triple {1675#false} #res := 0; {1675#false} is VALID [2018-11-18 22:57:47,223 INFO L273 TraceCheckUtils]: 26: Hoare triple {1675#false} assume true; {1675#false} is VALID [2018-11-18 22:57:47,223 INFO L268 TraceCheckUtils]: 27: Hoare quadruple {1675#false} {1674#true} #68#return; {1675#false} is VALID [2018-11-18 22:57:47,224 INFO L273 TraceCheckUtils]: 28: Hoare triple {1675#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {1675#false} is VALID [2018-11-18 22:57:47,224 INFO L273 TraceCheckUtils]: 29: Hoare triple {1675#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {1675#false} is VALID [2018-11-18 22:57:47,225 INFO L273 TraceCheckUtils]: 30: Hoare triple {1675#false} assume true; {1675#false} is VALID [2018-11-18 22:57:47,225 INFO L273 TraceCheckUtils]: 31: Hoare triple {1675#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {1675#false} is VALID [2018-11-18 22:57:47,226 INFO L256 TraceCheckUtils]: 32: Hoare triple {1675#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {1675#false} is VALID [2018-11-18 22:57:47,226 INFO L273 TraceCheckUtils]: 33: Hoare triple {1675#false} ~cond := #in~cond; {1675#false} is VALID [2018-11-18 22:57:47,226 INFO L273 TraceCheckUtils]: 34: Hoare triple {1675#false} assume 0 == ~cond; {1675#false} is VALID [2018-11-18 22:57:47,226 INFO L273 TraceCheckUtils]: 35: Hoare triple {1675#false} assume !false; {1675#false} is VALID [2018-11-18 22:57:47,229 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 0 proven. 40 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 22:57:47,248 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-18 22:57:47,248 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2018-11-18 22:57:47,249 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 36 [2018-11-18 22:57:47,249 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-18 22:57:47,249 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states. [2018-11-18 22:57:47,329 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-18 22:57:47,329 INFO L459 AbstractCegarLoop]: Interpolant automaton has 9 states [2018-11-18 22:57:47,330 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2018-11-18 22:57:47,330 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=36, Invalid=36, Unknown=0, NotChecked=0, Total=72 [2018-11-18 22:57:47,330 INFO L87 Difference]: Start difference. First operand 41 states and 42 transitions. Second operand 9 states. [2018-11-18 22:57:47,470 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:47,471 INFO L93 Difference]: Finished difference Result 61 states and 63 transitions. [2018-11-18 22:57:47,471 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2018-11-18 22:57:47,471 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 36 [2018-11-18 22:57:47,471 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-18 22:57:47,471 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2018-11-18 22:57:47,473 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 63 transitions. [2018-11-18 22:57:47,474 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2018-11-18 22:57:47,475 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 63 transitions. [2018-11-18 22:57:47,476 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 63 transitions. [2018-11-18 22:57:47,576 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-18 22:57:47,578 INFO L225 Difference]: With dead ends: 61 [2018-11-18 22:57:47,578 INFO L226 Difference]: Without dead ends: 45 [2018-11-18 22:57:47,579 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 43 GetRequests, 36 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-18 22:57:47,579 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 45 states. [2018-11-18 22:57:47,617 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 45 to 44. [2018-11-18 22:57:47,617 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-18 22:57:47,617 INFO L82 GeneralOperation]: Start isEquivalent. First operand 45 states. Second operand 44 states. [2018-11-18 22:57:47,617 INFO L74 IsIncluded]: Start isIncluded. First operand 45 states. Second operand 44 states. [2018-11-18 22:57:47,617 INFO L87 Difference]: Start difference. First operand 45 states. Second operand 44 states. [2018-11-18 22:57:47,621 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:47,621 INFO L93 Difference]: Finished difference Result 45 states and 46 transitions. [2018-11-18 22:57:47,621 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 46 transitions. [2018-11-18 22:57:47,622 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 22:57:47,622 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 22:57:47,623 INFO L74 IsIncluded]: Start isIncluded. First operand 44 states. Second operand 45 states. [2018-11-18 22:57:47,623 INFO L87 Difference]: Start difference. First operand 44 states. Second operand 45 states. [2018-11-18 22:57:47,625 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:47,625 INFO L93 Difference]: Finished difference Result 45 states and 46 transitions. [2018-11-18 22:57:47,625 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 46 transitions. [2018-11-18 22:57:47,625 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 22:57:47,625 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 22:57:47,626 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-18 22:57:47,626 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-18 22:57:47,626 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 44 states. [2018-11-18 22:57:47,627 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 45 transitions. [2018-11-18 22:57:47,628 INFO L78 Accepts]: Start accepts. Automaton has 44 states and 45 transitions. Word has length 36 [2018-11-18 22:57:47,628 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-18 22:57:47,628 INFO L480 AbstractCegarLoop]: Abstraction has 44 states and 45 transitions. [2018-11-18 22:57:47,628 INFO L481 AbstractCegarLoop]: Interpolant automaton has 9 states. [2018-11-18 22:57:47,628 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 45 transitions. [2018-11-18 22:57:47,629 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2018-11-18 22:57:47,629 INFO L367 BasicCegarLoop]: Found error trace [2018-11-18 22:57:47,629 INFO L375 BasicCegarLoop]: trace histogram [7, 6, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-18 22:57:47,630 INFO L423 AbstractCegarLoop]: === Iteration 9 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-18 22:57:47,630 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 22:57:47,630 INFO L82 PathProgramCache]: Analyzing trace with hash 326277282, now seen corresponding path program 6 times [2018-11-18 22:57:47,630 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 22:57:47,630 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 22:57:47,631 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:47,631 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-18 22:57:47,631 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:47,649 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:47,918 INFO L256 TraceCheckUtils]: 0: Hoare triple {2020#true} call ULTIMATE.init(); {2020#true} is VALID [2018-11-18 22:57:47,918 INFO L273 TraceCheckUtils]: 1: Hoare triple {2020#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {2020#true} is VALID [2018-11-18 22:57:47,919 INFO L273 TraceCheckUtils]: 2: Hoare triple {2020#true} assume true; {2020#true} is VALID [2018-11-18 22:57:47,919 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2020#true} {2020#true} #64#return; {2020#true} is VALID [2018-11-18 22:57:47,919 INFO L256 TraceCheckUtils]: 4: Hoare triple {2020#true} call #t~ret6 := main(); {2020#true} is VALID [2018-11-18 22:57:47,920 INFO L273 TraceCheckUtils]: 5: Hoare triple {2020#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {2020#true} is VALID [2018-11-18 22:57:47,920 INFO L256 TraceCheckUtils]: 6: Hoare triple {2020#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {2020#true} is VALID [2018-11-18 22:57:47,921 INFO L273 TraceCheckUtils]: 7: Hoare triple {2020#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {2022#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:47,921 INFO L273 TraceCheckUtils]: 8: Hoare triple {2022#(= _strcmp_~i~0 0)} assume true; {2022#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:47,922 INFO L273 TraceCheckUtils]: 9: Hoare triple {2022#(= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2022#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:47,923 INFO L273 TraceCheckUtils]: 10: Hoare triple {2022#(= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2023#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:47,923 INFO L273 TraceCheckUtils]: 11: Hoare triple {2023#(<= _strcmp_~i~0 1)} assume true; {2023#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:47,923 INFO L273 TraceCheckUtils]: 12: Hoare triple {2023#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2023#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:47,924 INFO L273 TraceCheckUtils]: 13: Hoare triple {2023#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2024#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:47,925 INFO L273 TraceCheckUtils]: 14: Hoare triple {2024#(<= _strcmp_~i~0 2)} assume true; {2024#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:47,928 INFO L273 TraceCheckUtils]: 15: Hoare triple {2024#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2024#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:47,928 INFO L273 TraceCheckUtils]: 16: Hoare triple {2024#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2025#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:47,929 INFO L273 TraceCheckUtils]: 17: Hoare triple {2025#(<= _strcmp_~i~0 3)} assume true; {2025#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:47,929 INFO L273 TraceCheckUtils]: 18: Hoare triple {2025#(<= _strcmp_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2025#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:47,930 INFO L273 TraceCheckUtils]: 19: Hoare triple {2025#(<= _strcmp_~i~0 3)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2026#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:47,931 INFO L273 TraceCheckUtils]: 20: Hoare triple {2026#(<= _strcmp_~i~0 4)} assume true; {2026#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:47,931 INFO L273 TraceCheckUtils]: 21: Hoare triple {2026#(<= _strcmp_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2026#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:47,936 INFO L273 TraceCheckUtils]: 22: Hoare triple {2026#(<= _strcmp_~i~0 4)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2027#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:47,937 INFO L273 TraceCheckUtils]: 23: Hoare triple {2027#(<= _strcmp_~i~0 5)} assume true; {2027#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:47,937 INFO L273 TraceCheckUtils]: 24: Hoare triple {2027#(<= _strcmp_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2027#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:47,938 INFO L273 TraceCheckUtils]: 25: Hoare triple {2027#(<= _strcmp_~i~0 5)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2028#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:47,938 INFO L273 TraceCheckUtils]: 26: Hoare triple {2028#(<= _strcmp_~i~0 6)} assume true; {2028#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:47,939 INFO L273 TraceCheckUtils]: 27: Hoare triple {2028#(<= _strcmp_~i~0 6)} assume !(~i~0 < 100000); {2021#false} is VALID [2018-11-18 22:57:47,939 INFO L273 TraceCheckUtils]: 28: Hoare triple {2021#false} #res := 0; {2021#false} is VALID [2018-11-18 22:57:47,939 INFO L273 TraceCheckUtils]: 29: Hoare triple {2021#false} assume true; {2021#false} is VALID [2018-11-18 22:57:47,939 INFO L268 TraceCheckUtils]: 30: Hoare quadruple {2021#false} {2020#true} #68#return; {2021#false} is VALID [2018-11-18 22:57:47,940 INFO L273 TraceCheckUtils]: 31: Hoare triple {2021#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {2021#false} is VALID [2018-11-18 22:57:47,940 INFO L273 TraceCheckUtils]: 32: Hoare triple {2021#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {2021#false} is VALID [2018-11-18 22:57:47,940 INFO L273 TraceCheckUtils]: 33: Hoare triple {2021#false} assume true; {2021#false} is VALID [2018-11-18 22:57:47,940 INFO L273 TraceCheckUtils]: 34: Hoare triple {2021#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {2021#false} is VALID [2018-11-18 22:57:47,940 INFO L256 TraceCheckUtils]: 35: Hoare triple {2021#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {2021#false} is VALID [2018-11-18 22:57:47,940 INFO L273 TraceCheckUtils]: 36: Hoare triple {2021#false} ~cond := #in~cond; {2021#false} is VALID [2018-11-18 22:57:47,941 INFO L273 TraceCheckUtils]: 37: Hoare triple {2021#false} assume 0 == ~cond; {2021#false} is VALID [2018-11-18 22:57:47,941 INFO L273 TraceCheckUtils]: 38: Hoare triple {2021#false} assume !false; {2021#false} is VALID [2018-11-18 22:57:47,943 INFO L134 CoverageAnalysis]: Checked inductivity of 57 backedges. 0 proven. 57 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 22:57:47,943 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-18 22:57:47,944 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-18 22:57:47,979 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-18 22:57:48,095 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2018-11-18 22:57:48,096 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-18 22:57:48,122 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:48,124 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 22:57:48,786 INFO L256 TraceCheckUtils]: 0: Hoare triple {2020#true} call ULTIMATE.init(); {2020#true} is VALID [2018-11-18 22:57:48,786 INFO L273 TraceCheckUtils]: 1: Hoare triple {2020#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {2020#true} is VALID [2018-11-18 22:57:48,786 INFO L273 TraceCheckUtils]: 2: Hoare triple {2020#true} assume true; {2020#true} is VALID [2018-11-18 22:57:48,787 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2020#true} {2020#true} #64#return; {2020#true} is VALID [2018-11-18 22:57:48,787 INFO L256 TraceCheckUtils]: 4: Hoare triple {2020#true} call #t~ret6 := main(); {2020#true} is VALID [2018-11-18 22:57:48,787 INFO L273 TraceCheckUtils]: 5: Hoare triple {2020#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {2020#true} is VALID [2018-11-18 22:57:48,787 INFO L256 TraceCheckUtils]: 6: Hoare triple {2020#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {2020#true} is VALID [2018-11-18 22:57:48,787 INFO L273 TraceCheckUtils]: 7: Hoare triple {2020#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {2053#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:48,788 INFO L273 TraceCheckUtils]: 8: Hoare triple {2053#(<= _strcmp_~i~0 0)} assume true; {2053#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:48,791 INFO L273 TraceCheckUtils]: 9: Hoare triple {2053#(<= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2053#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:48,791 INFO L273 TraceCheckUtils]: 10: Hoare triple {2053#(<= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2023#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:48,792 INFO L273 TraceCheckUtils]: 11: Hoare triple {2023#(<= _strcmp_~i~0 1)} assume true; {2023#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:48,792 INFO L273 TraceCheckUtils]: 12: Hoare triple {2023#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2023#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:48,792 INFO L273 TraceCheckUtils]: 13: Hoare triple {2023#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2024#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:48,793 INFO L273 TraceCheckUtils]: 14: Hoare triple {2024#(<= _strcmp_~i~0 2)} assume true; {2024#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:48,793 INFO L273 TraceCheckUtils]: 15: Hoare triple {2024#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2024#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:48,794 INFO L273 TraceCheckUtils]: 16: Hoare triple {2024#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2025#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:48,794 INFO L273 TraceCheckUtils]: 17: Hoare triple {2025#(<= _strcmp_~i~0 3)} assume true; {2025#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:48,794 INFO L273 TraceCheckUtils]: 18: Hoare triple {2025#(<= _strcmp_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2025#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:48,795 INFO L273 TraceCheckUtils]: 19: Hoare triple {2025#(<= _strcmp_~i~0 3)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2026#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:48,796 INFO L273 TraceCheckUtils]: 20: Hoare triple {2026#(<= _strcmp_~i~0 4)} assume true; {2026#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:48,796 INFO L273 TraceCheckUtils]: 21: Hoare triple {2026#(<= _strcmp_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2026#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:48,797 INFO L273 TraceCheckUtils]: 22: Hoare triple {2026#(<= _strcmp_~i~0 4)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2027#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:48,798 INFO L273 TraceCheckUtils]: 23: Hoare triple {2027#(<= _strcmp_~i~0 5)} assume true; {2027#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:48,798 INFO L273 TraceCheckUtils]: 24: Hoare triple {2027#(<= _strcmp_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2027#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:48,799 INFO L273 TraceCheckUtils]: 25: Hoare triple {2027#(<= _strcmp_~i~0 5)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2028#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:48,799 INFO L273 TraceCheckUtils]: 26: Hoare triple {2028#(<= _strcmp_~i~0 6)} assume true; {2028#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:48,800 INFO L273 TraceCheckUtils]: 27: Hoare triple {2028#(<= _strcmp_~i~0 6)} assume !(~i~0 < 100000); {2021#false} is VALID [2018-11-18 22:57:48,800 INFO L273 TraceCheckUtils]: 28: Hoare triple {2021#false} #res := 0; {2021#false} is VALID [2018-11-18 22:57:48,801 INFO L273 TraceCheckUtils]: 29: Hoare triple {2021#false} assume true; {2021#false} is VALID [2018-11-18 22:57:48,801 INFO L268 TraceCheckUtils]: 30: Hoare quadruple {2021#false} {2020#true} #68#return; {2021#false} is VALID [2018-11-18 22:57:48,801 INFO L273 TraceCheckUtils]: 31: Hoare triple {2021#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {2021#false} is VALID [2018-11-18 22:57:48,801 INFO L273 TraceCheckUtils]: 32: Hoare triple {2021#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {2021#false} is VALID [2018-11-18 22:57:48,802 INFO L273 TraceCheckUtils]: 33: Hoare triple {2021#false} assume true; {2021#false} is VALID [2018-11-18 22:57:48,802 INFO L273 TraceCheckUtils]: 34: Hoare triple {2021#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {2021#false} is VALID [2018-11-18 22:57:48,802 INFO L256 TraceCheckUtils]: 35: Hoare triple {2021#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {2021#false} is VALID [2018-11-18 22:57:48,802 INFO L273 TraceCheckUtils]: 36: Hoare triple {2021#false} ~cond := #in~cond; {2021#false} is VALID [2018-11-18 22:57:48,803 INFO L273 TraceCheckUtils]: 37: Hoare triple {2021#false} assume 0 == ~cond; {2021#false} is VALID [2018-11-18 22:57:48,803 INFO L273 TraceCheckUtils]: 38: Hoare triple {2021#false} assume !false; {2021#false} is VALID [2018-11-18 22:57:48,804 INFO L134 CoverageAnalysis]: Checked inductivity of 57 backedges. 0 proven. 57 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 22:57:48,823 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-18 22:57:48,823 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 10 [2018-11-18 22:57:48,823 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 39 [2018-11-18 22:57:48,823 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-18 22:57:48,823 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states. [2018-11-18 22:57:48,877 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-18 22:57:48,878 INFO L459 AbstractCegarLoop]: Interpolant automaton has 10 states [2018-11-18 22:57:48,878 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2018-11-18 22:57:48,878 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=45, Unknown=0, NotChecked=0, Total=90 [2018-11-18 22:57:48,878 INFO L87 Difference]: Start difference. First operand 44 states and 45 transitions. Second operand 10 states. [2018-11-18 22:57:49,262 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:49,263 INFO L93 Difference]: Finished difference Result 64 states and 66 transitions. [2018-11-18 22:57:49,263 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2018-11-18 22:57:49,263 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 39 [2018-11-18 22:57:49,263 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-18 22:57:49,263 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2018-11-18 22:57:49,265 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 66 transitions. [2018-11-18 22:57:49,265 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2018-11-18 22:57:49,267 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 66 transitions. [2018-11-18 22:57:49,267 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 66 transitions. [2018-11-18 22:57:49,385 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-18 22:57:49,386 INFO L225 Difference]: With dead ends: 64 [2018-11-18 22:57:49,386 INFO L226 Difference]: Without dead ends: 48 [2018-11-18 22:57:49,387 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 47 GetRequests, 39 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=45, Invalid=45, Unknown=0, NotChecked=0, Total=90 [2018-11-18 22:57:49,387 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2018-11-18 22:57:49,427 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 47. [2018-11-18 22:57:49,427 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-18 22:57:49,427 INFO L82 GeneralOperation]: Start isEquivalent. First operand 48 states. Second operand 47 states. [2018-11-18 22:57:49,428 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand 47 states. [2018-11-18 22:57:49,428 INFO L87 Difference]: Start difference. First operand 48 states. Second operand 47 states. [2018-11-18 22:57:49,429 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:49,430 INFO L93 Difference]: Finished difference Result 48 states and 49 transitions. [2018-11-18 22:57:49,430 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 49 transitions. [2018-11-18 22:57:49,430 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 22:57:49,430 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 22:57:49,430 INFO L74 IsIncluded]: Start isIncluded. First operand 47 states. Second operand 48 states. [2018-11-18 22:57:49,431 INFO L87 Difference]: Start difference. First operand 47 states. Second operand 48 states. [2018-11-18 22:57:49,432 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:49,433 INFO L93 Difference]: Finished difference Result 48 states and 49 transitions. [2018-11-18 22:57:49,433 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 49 transitions. [2018-11-18 22:57:49,433 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 22:57:49,433 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 22:57:49,433 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-18 22:57:49,433 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-18 22:57:49,434 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 47 states. [2018-11-18 22:57:49,435 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 48 transitions. [2018-11-18 22:57:49,435 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 48 transitions. Word has length 39 [2018-11-18 22:57:49,435 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-18 22:57:49,436 INFO L480 AbstractCegarLoop]: Abstraction has 47 states and 48 transitions. [2018-11-18 22:57:49,436 INFO L481 AbstractCegarLoop]: Interpolant automaton has 10 states. [2018-11-18 22:57:49,436 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 48 transitions. [2018-11-18 22:57:49,436 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2018-11-18 22:57:49,436 INFO L367 BasicCegarLoop]: Found error trace [2018-11-18 22:57:49,437 INFO L375 BasicCegarLoop]: trace histogram [8, 7, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-18 22:57:49,437 INFO L423 AbstractCegarLoop]: === Iteration 10 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-18 22:57:49,437 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 22:57:49,437 INFO L82 PathProgramCache]: Analyzing trace with hash 1917884742, now seen corresponding path program 7 times [2018-11-18 22:57:49,437 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 22:57:49,437 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 22:57:49,438 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:49,438 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-18 22:57:49,439 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:49,454 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:49,644 INFO L256 TraceCheckUtils]: 0: Hoare triple {2390#true} call ULTIMATE.init(); {2390#true} is VALID [2018-11-18 22:57:49,644 INFO L273 TraceCheckUtils]: 1: Hoare triple {2390#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {2390#true} is VALID [2018-11-18 22:57:49,644 INFO L273 TraceCheckUtils]: 2: Hoare triple {2390#true} assume true; {2390#true} is VALID [2018-11-18 22:57:49,644 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2390#true} {2390#true} #64#return; {2390#true} is VALID [2018-11-18 22:57:49,644 INFO L256 TraceCheckUtils]: 4: Hoare triple {2390#true} call #t~ret6 := main(); {2390#true} is VALID [2018-11-18 22:57:49,644 INFO L273 TraceCheckUtils]: 5: Hoare triple {2390#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {2390#true} is VALID [2018-11-18 22:57:49,645 INFO L256 TraceCheckUtils]: 6: Hoare triple {2390#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {2390#true} is VALID [2018-11-18 22:57:49,645 INFO L273 TraceCheckUtils]: 7: Hoare triple {2390#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {2392#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:49,645 INFO L273 TraceCheckUtils]: 8: Hoare triple {2392#(= _strcmp_~i~0 0)} assume true; {2392#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:49,646 INFO L273 TraceCheckUtils]: 9: Hoare triple {2392#(= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2392#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:49,646 INFO L273 TraceCheckUtils]: 10: Hoare triple {2392#(= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2393#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:49,647 INFO L273 TraceCheckUtils]: 11: Hoare triple {2393#(<= _strcmp_~i~0 1)} assume true; {2393#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:49,647 INFO L273 TraceCheckUtils]: 12: Hoare triple {2393#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2393#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:49,648 INFO L273 TraceCheckUtils]: 13: Hoare triple {2393#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2394#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:49,649 INFO L273 TraceCheckUtils]: 14: Hoare triple {2394#(<= _strcmp_~i~0 2)} assume true; {2394#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:49,649 INFO L273 TraceCheckUtils]: 15: Hoare triple {2394#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2394#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:49,650 INFO L273 TraceCheckUtils]: 16: Hoare triple {2394#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2395#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:49,651 INFO L273 TraceCheckUtils]: 17: Hoare triple {2395#(<= _strcmp_~i~0 3)} assume true; {2395#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:49,651 INFO L273 TraceCheckUtils]: 18: Hoare triple {2395#(<= _strcmp_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2395#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:49,652 INFO L273 TraceCheckUtils]: 19: Hoare triple {2395#(<= _strcmp_~i~0 3)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2396#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:49,658 INFO L273 TraceCheckUtils]: 20: Hoare triple {2396#(<= _strcmp_~i~0 4)} assume true; {2396#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:49,659 INFO L273 TraceCheckUtils]: 21: Hoare triple {2396#(<= _strcmp_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2396#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:49,659 INFO L273 TraceCheckUtils]: 22: Hoare triple {2396#(<= _strcmp_~i~0 4)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2397#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:49,660 INFO L273 TraceCheckUtils]: 23: Hoare triple {2397#(<= _strcmp_~i~0 5)} assume true; {2397#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:49,660 INFO L273 TraceCheckUtils]: 24: Hoare triple {2397#(<= _strcmp_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2397#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:49,660 INFO L273 TraceCheckUtils]: 25: Hoare triple {2397#(<= _strcmp_~i~0 5)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2398#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:49,661 INFO L273 TraceCheckUtils]: 26: Hoare triple {2398#(<= _strcmp_~i~0 6)} assume true; {2398#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:49,661 INFO L273 TraceCheckUtils]: 27: Hoare triple {2398#(<= _strcmp_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2398#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:49,662 INFO L273 TraceCheckUtils]: 28: Hoare triple {2398#(<= _strcmp_~i~0 6)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2399#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 22:57:49,662 INFO L273 TraceCheckUtils]: 29: Hoare triple {2399#(<= _strcmp_~i~0 7)} assume true; {2399#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 22:57:49,663 INFO L273 TraceCheckUtils]: 30: Hoare triple {2399#(<= _strcmp_~i~0 7)} assume !(~i~0 < 100000); {2391#false} is VALID [2018-11-18 22:57:49,663 INFO L273 TraceCheckUtils]: 31: Hoare triple {2391#false} #res := 0; {2391#false} is VALID [2018-11-18 22:57:49,663 INFO L273 TraceCheckUtils]: 32: Hoare triple {2391#false} assume true; {2391#false} is VALID [2018-11-18 22:57:49,663 INFO L268 TraceCheckUtils]: 33: Hoare quadruple {2391#false} {2390#true} #68#return; {2391#false} is VALID [2018-11-18 22:57:49,664 INFO L273 TraceCheckUtils]: 34: Hoare triple {2391#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {2391#false} is VALID [2018-11-18 22:57:49,664 INFO L273 TraceCheckUtils]: 35: Hoare triple {2391#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {2391#false} is VALID [2018-11-18 22:57:49,664 INFO L273 TraceCheckUtils]: 36: Hoare triple {2391#false} assume true; {2391#false} is VALID [2018-11-18 22:57:49,664 INFO L273 TraceCheckUtils]: 37: Hoare triple {2391#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {2391#false} is VALID [2018-11-18 22:57:49,664 INFO L256 TraceCheckUtils]: 38: Hoare triple {2391#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {2391#false} is VALID [2018-11-18 22:57:49,664 INFO L273 TraceCheckUtils]: 39: Hoare triple {2391#false} ~cond := #in~cond; {2391#false} is VALID [2018-11-18 22:57:49,665 INFO L273 TraceCheckUtils]: 40: Hoare triple {2391#false} assume 0 == ~cond; {2391#false} is VALID [2018-11-18 22:57:49,665 INFO L273 TraceCheckUtils]: 41: Hoare triple {2391#false} assume !false; {2391#false} is VALID [2018-11-18 22:57:49,666 INFO L134 CoverageAnalysis]: Checked inductivity of 77 backedges. 0 proven. 77 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 22:57:49,666 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-18 22:57:49,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 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-18 22:57:49,677 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 22:57:49,701 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:49,717 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:49,719 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 22:57:49,839 INFO L256 TraceCheckUtils]: 0: Hoare triple {2390#true} call ULTIMATE.init(); {2390#true} is VALID [2018-11-18 22:57:49,840 INFO L273 TraceCheckUtils]: 1: Hoare triple {2390#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {2390#true} is VALID [2018-11-18 22:57:49,840 INFO L273 TraceCheckUtils]: 2: Hoare triple {2390#true} assume true; {2390#true} is VALID [2018-11-18 22:57:49,840 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2390#true} {2390#true} #64#return; {2390#true} is VALID [2018-11-18 22:57:49,840 INFO L256 TraceCheckUtils]: 4: Hoare triple {2390#true} call #t~ret6 := main(); {2390#true} is VALID [2018-11-18 22:57:49,841 INFO L273 TraceCheckUtils]: 5: Hoare triple {2390#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {2390#true} is VALID [2018-11-18 22:57:49,841 INFO L256 TraceCheckUtils]: 6: Hoare triple {2390#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {2390#true} is VALID [2018-11-18 22:57:49,842 INFO L273 TraceCheckUtils]: 7: Hoare triple {2390#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {2424#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:49,842 INFO L273 TraceCheckUtils]: 8: Hoare triple {2424#(<= _strcmp_~i~0 0)} assume true; {2424#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:49,843 INFO L273 TraceCheckUtils]: 9: Hoare triple {2424#(<= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2424#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:49,844 INFO L273 TraceCheckUtils]: 10: Hoare triple {2424#(<= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2393#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:49,844 INFO L273 TraceCheckUtils]: 11: Hoare triple {2393#(<= _strcmp_~i~0 1)} assume true; {2393#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:49,844 INFO L273 TraceCheckUtils]: 12: Hoare triple {2393#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2393#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:49,845 INFO L273 TraceCheckUtils]: 13: Hoare triple {2393#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2394#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:49,845 INFO L273 TraceCheckUtils]: 14: Hoare triple {2394#(<= _strcmp_~i~0 2)} assume true; {2394#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:49,846 INFO L273 TraceCheckUtils]: 15: Hoare triple {2394#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2394#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:49,846 INFO L273 TraceCheckUtils]: 16: Hoare triple {2394#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2395#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:49,847 INFO L273 TraceCheckUtils]: 17: Hoare triple {2395#(<= _strcmp_~i~0 3)} assume true; {2395#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:49,847 INFO L273 TraceCheckUtils]: 18: Hoare triple {2395#(<= _strcmp_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2395#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:49,848 INFO L273 TraceCheckUtils]: 19: Hoare triple {2395#(<= _strcmp_~i~0 3)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2396#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:49,849 INFO L273 TraceCheckUtils]: 20: Hoare triple {2396#(<= _strcmp_~i~0 4)} assume true; {2396#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:49,850 INFO L273 TraceCheckUtils]: 21: Hoare triple {2396#(<= _strcmp_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2396#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:49,850 INFO L273 TraceCheckUtils]: 22: Hoare triple {2396#(<= _strcmp_~i~0 4)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2397#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:49,851 INFO L273 TraceCheckUtils]: 23: Hoare triple {2397#(<= _strcmp_~i~0 5)} assume true; {2397#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:49,851 INFO L273 TraceCheckUtils]: 24: Hoare triple {2397#(<= _strcmp_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2397#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:49,852 INFO L273 TraceCheckUtils]: 25: Hoare triple {2397#(<= _strcmp_~i~0 5)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2398#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:49,853 INFO L273 TraceCheckUtils]: 26: Hoare triple {2398#(<= _strcmp_~i~0 6)} assume true; {2398#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:49,853 INFO L273 TraceCheckUtils]: 27: Hoare triple {2398#(<= _strcmp_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2398#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:49,854 INFO L273 TraceCheckUtils]: 28: Hoare triple {2398#(<= _strcmp_~i~0 6)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2399#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 22:57:49,855 INFO L273 TraceCheckUtils]: 29: Hoare triple {2399#(<= _strcmp_~i~0 7)} assume true; {2399#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 22:57:49,871 INFO L273 TraceCheckUtils]: 30: Hoare triple {2399#(<= _strcmp_~i~0 7)} assume !(~i~0 < 100000); {2391#false} is VALID [2018-11-18 22:57:49,871 INFO L273 TraceCheckUtils]: 31: Hoare triple {2391#false} #res := 0; {2391#false} is VALID [2018-11-18 22:57:49,871 INFO L273 TraceCheckUtils]: 32: Hoare triple {2391#false} assume true; {2391#false} is VALID [2018-11-18 22:57:49,871 INFO L268 TraceCheckUtils]: 33: Hoare quadruple {2391#false} {2390#true} #68#return; {2391#false} is VALID [2018-11-18 22:57:49,871 INFO L273 TraceCheckUtils]: 34: Hoare triple {2391#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {2391#false} is VALID [2018-11-18 22:57:49,872 INFO L273 TraceCheckUtils]: 35: Hoare triple {2391#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {2391#false} is VALID [2018-11-18 22:57:49,872 INFO L273 TraceCheckUtils]: 36: Hoare triple {2391#false} assume true; {2391#false} is VALID [2018-11-18 22:57:49,872 INFO L273 TraceCheckUtils]: 37: Hoare triple {2391#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {2391#false} is VALID [2018-11-18 22:57:49,872 INFO L256 TraceCheckUtils]: 38: Hoare triple {2391#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {2391#false} is VALID [2018-11-18 22:57:49,872 INFO L273 TraceCheckUtils]: 39: Hoare triple {2391#false} ~cond := #in~cond; {2391#false} is VALID [2018-11-18 22:57:49,872 INFO L273 TraceCheckUtils]: 40: Hoare triple {2391#false} assume 0 == ~cond; {2391#false} is VALID [2018-11-18 22:57:49,873 INFO L273 TraceCheckUtils]: 41: Hoare triple {2391#false} assume !false; {2391#false} is VALID [2018-11-18 22:57:49,874 INFO L134 CoverageAnalysis]: Checked inductivity of 77 backedges. 0 proven. 77 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 22:57:49,893 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-18 22:57:49,894 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 11 [2018-11-18 22:57:49,894 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 42 [2018-11-18 22:57:49,894 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-18 22:57:49,894 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states. [2018-11-18 22:57:49,939 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-18 22:57:49,940 INFO L459 AbstractCegarLoop]: Interpolant automaton has 11 states [2018-11-18 22:57:49,940 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2018-11-18 22:57:49,940 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=55, Invalid=55, Unknown=0, NotChecked=0, Total=110 [2018-11-18 22:57:49,940 INFO L87 Difference]: Start difference. First operand 47 states and 48 transitions. Second operand 11 states. [2018-11-18 22:57:50,452 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:50,453 INFO L93 Difference]: Finished difference Result 67 states and 69 transitions. [2018-11-18 22:57:50,453 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2018-11-18 22:57:50,453 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 42 [2018-11-18 22:57:50,453 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-18 22:57:50,453 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-18 22:57:50,455 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 69 transitions. [2018-11-18 22:57:50,455 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-18 22:57:50,457 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 69 transitions. [2018-11-18 22:57:50,457 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 69 transitions. [2018-11-18 22:57:50,559 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-18 22:57:50,561 INFO L225 Difference]: With dead ends: 67 [2018-11-18 22:57:50,561 INFO L226 Difference]: Without dead ends: 51 [2018-11-18 22:57:50,562 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 51 GetRequests, 42 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=55, Invalid=55, Unknown=0, NotChecked=0, Total=110 [2018-11-18 22:57:50,562 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2018-11-18 22:57:50,579 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 50. [2018-11-18 22:57:50,579 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-18 22:57:50,579 INFO L82 GeneralOperation]: Start isEquivalent. First operand 51 states. Second operand 50 states. [2018-11-18 22:57:50,579 INFO L74 IsIncluded]: Start isIncluded. First operand 51 states. Second operand 50 states. [2018-11-18 22:57:50,580 INFO L87 Difference]: Start difference. First operand 51 states. Second operand 50 states. [2018-11-18 22:57:50,581 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:50,581 INFO L93 Difference]: Finished difference Result 51 states and 52 transitions. [2018-11-18 22:57:50,581 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 52 transitions. [2018-11-18 22:57:50,582 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 22:57:50,582 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 22:57:50,582 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand 51 states. [2018-11-18 22:57:50,582 INFO L87 Difference]: Start difference. First operand 50 states. Second operand 51 states. [2018-11-18 22:57:50,583 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:50,583 INFO L93 Difference]: Finished difference Result 51 states and 52 transitions. [2018-11-18 22:57:50,584 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 52 transitions. [2018-11-18 22:57:50,584 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 22:57:50,584 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 22:57:50,584 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-18 22:57:50,584 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-18 22:57:50,584 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 50 states. [2018-11-18 22:57:50,585 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 51 transitions. [2018-11-18 22:57:50,585 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 51 transitions. Word has length 42 [2018-11-18 22:57:50,585 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-18 22:57:50,585 INFO L480 AbstractCegarLoop]: Abstraction has 50 states and 51 transitions. [2018-11-18 22:57:50,585 INFO L481 AbstractCegarLoop]: Interpolant automaton has 11 states. [2018-11-18 22:57:50,586 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 51 transitions. [2018-11-18 22:57:50,586 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2018-11-18 22:57:50,586 INFO L367 BasicCegarLoop]: Found error trace [2018-11-18 22:57:50,586 INFO L375 BasicCegarLoop]: trace histogram [9, 8, 8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-18 22:57:50,586 INFO L423 AbstractCegarLoop]: === Iteration 11 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-18 22:57:50,586 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 22:57:50,587 INFO L82 PathProgramCache]: Analyzing trace with hash 1056777762, now seen corresponding path program 8 times [2018-11-18 22:57:50,587 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 22:57:50,587 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 22:57:50,587 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:50,588 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 22:57:50,588 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:50,603 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:50,785 INFO L256 TraceCheckUtils]: 0: Hoare triple {2784#true} call ULTIMATE.init(); {2784#true} is VALID [2018-11-18 22:57:50,785 INFO L273 TraceCheckUtils]: 1: Hoare triple {2784#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {2784#true} is VALID [2018-11-18 22:57:50,786 INFO L273 TraceCheckUtils]: 2: Hoare triple {2784#true} assume true; {2784#true} is VALID [2018-11-18 22:57:50,786 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2784#true} {2784#true} #64#return; {2784#true} is VALID [2018-11-18 22:57:50,786 INFO L256 TraceCheckUtils]: 4: Hoare triple {2784#true} call #t~ret6 := main(); {2784#true} is VALID [2018-11-18 22:57:50,786 INFO L273 TraceCheckUtils]: 5: Hoare triple {2784#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {2784#true} is VALID [2018-11-18 22:57:50,787 INFO L256 TraceCheckUtils]: 6: Hoare triple {2784#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {2784#true} is VALID [2018-11-18 22:57:50,787 INFO L273 TraceCheckUtils]: 7: Hoare triple {2784#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {2786#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:50,788 INFO L273 TraceCheckUtils]: 8: Hoare triple {2786#(= _strcmp_~i~0 0)} assume true; {2786#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:50,788 INFO L273 TraceCheckUtils]: 9: Hoare triple {2786#(= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2786#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:50,789 INFO L273 TraceCheckUtils]: 10: Hoare triple {2786#(= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2787#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:50,790 INFO L273 TraceCheckUtils]: 11: Hoare triple {2787#(<= _strcmp_~i~0 1)} assume true; {2787#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:50,790 INFO L273 TraceCheckUtils]: 12: Hoare triple {2787#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2787#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:50,790 INFO L273 TraceCheckUtils]: 13: Hoare triple {2787#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2788#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:50,791 INFO L273 TraceCheckUtils]: 14: Hoare triple {2788#(<= _strcmp_~i~0 2)} assume true; {2788#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:50,791 INFO L273 TraceCheckUtils]: 15: Hoare triple {2788#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2788#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:50,792 INFO L273 TraceCheckUtils]: 16: Hoare triple {2788#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2789#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:50,792 INFO L273 TraceCheckUtils]: 17: Hoare triple {2789#(<= _strcmp_~i~0 3)} assume true; {2789#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:50,793 INFO L273 TraceCheckUtils]: 18: Hoare triple {2789#(<= _strcmp_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2789#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:50,793 INFO L273 TraceCheckUtils]: 19: Hoare triple {2789#(<= _strcmp_~i~0 3)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2790#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:50,794 INFO L273 TraceCheckUtils]: 20: Hoare triple {2790#(<= _strcmp_~i~0 4)} assume true; {2790#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:50,795 INFO L273 TraceCheckUtils]: 21: Hoare triple {2790#(<= _strcmp_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2790#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:50,795 INFO L273 TraceCheckUtils]: 22: Hoare triple {2790#(<= _strcmp_~i~0 4)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2791#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:50,796 INFO L273 TraceCheckUtils]: 23: Hoare triple {2791#(<= _strcmp_~i~0 5)} assume true; {2791#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:50,797 INFO L273 TraceCheckUtils]: 24: Hoare triple {2791#(<= _strcmp_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2791#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:50,797 INFO L273 TraceCheckUtils]: 25: Hoare triple {2791#(<= _strcmp_~i~0 5)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2792#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:50,798 INFO L273 TraceCheckUtils]: 26: Hoare triple {2792#(<= _strcmp_~i~0 6)} assume true; {2792#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:50,798 INFO L273 TraceCheckUtils]: 27: Hoare triple {2792#(<= _strcmp_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2792#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:50,799 INFO L273 TraceCheckUtils]: 28: Hoare triple {2792#(<= _strcmp_~i~0 6)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2793#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 22:57:50,800 INFO L273 TraceCheckUtils]: 29: Hoare triple {2793#(<= _strcmp_~i~0 7)} assume true; {2793#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 22:57:50,800 INFO L273 TraceCheckUtils]: 30: Hoare triple {2793#(<= _strcmp_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2793#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 22:57:50,801 INFO L273 TraceCheckUtils]: 31: Hoare triple {2793#(<= _strcmp_~i~0 7)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2794#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 22:57:50,802 INFO L273 TraceCheckUtils]: 32: Hoare triple {2794#(<= _strcmp_~i~0 8)} assume true; {2794#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 22:57:50,802 INFO L273 TraceCheckUtils]: 33: Hoare triple {2794#(<= _strcmp_~i~0 8)} assume !(~i~0 < 100000); {2785#false} is VALID [2018-11-18 22:57:50,803 INFO L273 TraceCheckUtils]: 34: Hoare triple {2785#false} #res := 0; {2785#false} is VALID [2018-11-18 22:57:50,803 INFO L273 TraceCheckUtils]: 35: Hoare triple {2785#false} assume true; {2785#false} is VALID [2018-11-18 22:57:50,803 INFO L268 TraceCheckUtils]: 36: Hoare quadruple {2785#false} {2784#true} #68#return; {2785#false} is VALID [2018-11-18 22:57:50,803 INFO L273 TraceCheckUtils]: 37: Hoare triple {2785#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {2785#false} is VALID [2018-11-18 22:57:50,804 INFO L273 TraceCheckUtils]: 38: Hoare triple {2785#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {2785#false} is VALID [2018-11-18 22:57:50,804 INFO L273 TraceCheckUtils]: 39: Hoare triple {2785#false} assume true; {2785#false} is VALID [2018-11-18 22:57:50,804 INFO L273 TraceCheckUtils]: 40: Hoare triple {2785#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {2785#false} is VALID [2018-11-18 22:57:50,804 INFO L256 TraceCheckUtils]: 41: Hoare triple {2785#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {2785#false} is VALID [2018-11-18 22:57:50,805 INFO L273 TraceCheckUtils]: 42: Hoare triple {2785#false} ~cond := #in~cond; {2785#false} is VALID [2018-11-18 22:57:50,805 INFO L273 TraceCheckUtils]: 43: Hoare triple {2785#false} assume 0 == ~cond; {2785#false} is VALID [2018-11-18 22:57:50,805 INFO L273 TraceCheckUtils]: 44: Hoare triple {2785#false} assume !false; {2785#false} is VALID [2018-11-18 22:57:50,808 INFO L134 CoverageAnalysis]: Checked inductivity of 100 backedges. 0 proven. 100 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 22:57:50,808 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-18 22:57:50,808 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-18 22:57:50,817 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-18 22:57:50,846 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-18 22:57:50,847 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-18 22:57:50,859 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:50,861 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 22:57:50,980 INFO L256 TraceCheckUtils]: 0: Hoare triple {2784#true} call ULTIMATE.init(); {2784#true} is VALID [2018-11-18 22:57:50,981 INFO L273 TraceCheckUtils]: 1: Hoare triple {2784#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {2784#true} is VALID [2018-11-18 22:57:50,981 INFO L273 TraceCheckUtils]: 2: Hoare triple {2784#true} assume true; {2784#true} is VALID [2018-11-18 22:57:50,981 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {2784#true} {2784#true} #64#return; {2784#true} is VALID [2018-11-18 22:57:50,981 INFO L256 TraceCheckUtils]: 4: Hoare triple {2784#true} call #t~ret6 := main(); {2784#true} is VALID [2018-11-18 22:57:50,982 INFO L273 TraceCheckUtils]: 5: Hoare triple {2784#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {2784#true} is VALID [2018-11-18 22:57:50,982 INFO L256 TraceCheckUtils]: 6: Hoare triple {2784#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {2784#true} is VALID [2018-11-18 22:57:50,983 INFO L273 TraceCheckUtils]: 7: Hoare triple {2784#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {2819#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:50,983 INFO L273 TraceCheckUtils]: 8: Hoare triple {2819#(<= _strcmp_~i~0 0)} assume true; {2819#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:50,983 INFO L273 TraceCheckUtils]: 9: Hoare triple {2819#(<= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2819#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:50,984 INFO L273 TraceCheckUtils]: 10: Hoare triple {2819#(<= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2787#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:50,984 INFO L273 TraceCheckUtils]: 11: Hoare triple {2787#(<= _strcmp_~i~0 1)} assume true; {2787#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:50,984 INFO L273 TraceCheckUtils]: 12: Hoare triple {2787#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2787#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:50,985 INFO L273 TraceCheckUtils]: 13: Hoare triple {2787#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2788#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:50,986 INFO L273 TraceCheckUtils]: 14: Hoare triple {2788#(<= _strcmp_~i~0 2)} assume true; {2788#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:50,986 INFO L273 TraceCheckUtils]: 15: Hoare triple {2788#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2788#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:50,987 INFO L273 TraceCheckUtils]: 16: Hoare triple {2788#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2789#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:50,987 INFO L273 TraceCheckUtils]: 17: Hoare triple {2789#(<= _strcmp_~i~0 3)} assume true; {2789#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:50,988 INFO L273 TraceCheckUtils]: 18: Hoare triple {2789#(<= _strcmp_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2789#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:50,989 INFO L273 TraceCheckUtils]: 19: Hoare triple {2789#(<= _strcmp_~i~0 3)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2790#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:50,989 INFO L273 TraceCheckUtils]: 20: Hoare triple {2790#(<= _strcmp_~i~0 4)} assume true; {2790#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:50,990 INFO L273 TraceCheckUtils]: 21: Hoare triple {2790#(<= _strcmp_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2790#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:50,991 INFO L273 TraceCheckUtils]: 22: Hoare triple {2790#(<= _strcmp_~i~0 4)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2791#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:50,991 INFO L273 TraceCheckUtils]: 23: Hoare triple {2791#(<= _strcmp_~i~0 5)} assume true; {2791#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:50,992 INFO L273 TraceCheckUtils]: 24: Hoare triple {2791#(<= _strcmp_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2791#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:50,993 INFO L273 TraceCheckUtils]: 25: Hoare triple {2791#(<= _strcmp_~i~0 5)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2792#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:50,993 INFO L273 TraceCheckUtils]: 26: Hoare triple {2792#(<= _strcmp_~i~0 6)} assume true; {2792#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:50,994 INFO L273 TraceCheckUtils]: 27: Hoare triple {2792#(<= _strcmp_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2792#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:50,994 INFO L273 TraceCheckUtils]: 28: Hoare triple {2792#(<= _strcmp_~i~0 6)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2793#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 22:57:50,995 INFO L273 TraceCheckUtils]: 29: Hoare triple {2793#(<= _strcmp_~i~0 7)} assume true; {2793#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 22:57:50,995 INFO L273 TraceCheckUtils]: 30: Hoare triple {2793#(<= _strcmp_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {2793#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 22:57:50,996 INFO L273 TraceCheckUtils]: 31: Hoare triple {2793#(<= _strcmp_~i~0 7)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {2794#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 22:57:50,997 INFO L273 TraceCheckUtils]: 32: Hoare triple {2794#(<= _strcmp_~i~0 8)} assume true; {2794#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 22:57:50,998 INFO L273 TraceCheckUtils]: 33: Hoare triple {2794#(<= _strcmp_~i~0 8)} assume !(~i~0 < 100000); {2785#false} is VALID [2018-11-18 22:57:50,998 INFO L273 TraceCheckUtils]: 34: Hoare triple {2785#false} #res := 0; {2785#false} is VALID [2018-11-18 22:57:50,998 INFO L273 TraceCheckUtils]: 35: Hoare triple {2785#false} assume true; {2785#false} is VALID [2018-11-18 22:57:50,998 INFO L268 TraceCheckUtils]: 36: Hoare quadruple {2785#false} {2784#true} #68#return; {2785#false} is VALID [2018-11-18 22:57:50,998 INFO L273 TraceCheckUtils]: 37: Hoare triple {2785#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {2785#false} is VALID [2018-11-18 22:57:50,999 INFO L273 TraceCheckUtils]: 38: Hoare triple {2785#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {2785#false} is VALID [2018-11-18 22:57:50,999 INFO L273 TraceCheckUtils]: 39: Hoare triple {2785#false} assume true; {2785#false} is VALID [2018-11-18 22:57:50,999 INFO L273 TraceCheckUtils]: 40: Hoare triple {2785#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {2785#false} is VALID [2018-11-18 22:57:50,999 INFO L256 TraceCheckUtils]: 41: Hoare triple {2785#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {2785#false} is VALID [2018-11-18 22:57:51,000 INFO L273 TraceCheckUtils]: 42: Hoare triple {2785#false} ~cond := #in~cond; {2785#false} is VALID [2018-11-18 22:57:51,000 INFO L273 TraceCheckUtils]: 43: Hoare triple {2785#false} assume 0 == ~cond; {2785#false} is VALID [2018-11-18 22:57:51,000 INFO L273 TraceCheckUtils]: 44: Hoare triple {2785#false} assume !false; {2785#false} is VALID [2018-11-18 22:57:51,002 INFO L134 CoverageAnalysis]: Checked inductivity of 100 backedges. 0 proven. 100 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 22:57:51,021 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-18 22:57:51,021 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 12 [2018-11-18 22:57:51,022 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 45 [2018-11-18 22:57:51,022 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-18 22:57:51,022 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states. [2018-11-18 22:57:51,065 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-18 22:57:51,066 INFO L459 AbstractCegarLoop]: Interpolant automaton has 12 states [2018-11-18 22:57:51,066 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2018-11-18 22:57:51,066 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=66, Invalid=66, Unknown=0, NotChecked=0, Total=132 [2018-11-18 22:57:51,066 INFO L87 Difference]: Start difference. First operand 50 states and 51 transitions. Second operand 12 states. [2018-11-18 22:57:51,409 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:51,409 INFO L93 Difference]: Finished difference Result 70 states and 72 transitions. [2018-11-18 22:57:51,409 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-18 22:57:51,409 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 45 [2018-11-18 22:57:51,410 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-18 22:57:51,410 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2018-11-18 22:57:51,412 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 72 transitions. [2018-11-18 22:57:51,412 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2018-11-18 22:57:51,413 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 72 transitions. [2018-11-18 22:57:51,413 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 72 transitions. [2018-11-18 22:57:51,477 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-18 22:57:51,479 INFO L225 Difference]: With dead ends: 70 [2018-11-18 22:57:51,479 INFO L226 Difference]: Without dead ends: 54 [2018-11-18 22:57:51,480 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 55 GetRequests, 45 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-18 22:57:51,480 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 54 states. [2018-11-18 22:57:51,498 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 54 to 53. [2018-11-18 22:57:51,498 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-18 22:57:51,498 INFO L82 GeneralOperation]: Start isEquivalent. First operand 54 states. Second operand 53 states. [2018-11-18 22:57:51,498 INFO L74 IsIncluded]: Start isIncluded. First operand 54 states. Second operand 53 states. [2018-11-18 22:57:51,499 INFO L87 Difference]: Start difference. First operand 54 states. Second operand 53 states. [2018-11-18 22:57:51,500 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:51,500 INFO L93 Difference]: Finished difference Result 54 states and 55 transitions. [2018-11-18 22:57:51,500 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 55 transitions. [2018-11-18 22:57:51,500 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 22:57:51,500 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 22:57:51,501 INFO L74 IsIncluded]: Start isIncluded. First operand 53 states. Second operand 54 states. [2018-11-18 22:57:51,501 INFO L87 Difference]: Start difference. First operand 53 states. Second operand 54 states. [2018-11-18 22:57:51,502 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:51,502 INFO L93 Difference]: Finished difference Result 54 states and 55 transitions. [2018-11-18 22:57:51,502 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 55 transitions. [2018-11-18 22:57:51,503 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 22:57:51,503 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 22:57:51,503 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-18 22:57:51,503 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-18 22:57:51,503 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 53 states. [2018-11-18 22:57:51,504 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 54 transitions. [2018-11-18 22:57:51,504 INFO L78 Accepts]: Start accepts. Automaton has 53 states and 54 transitions. Word has length 45 [2018-11-18 22:57:51,504 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-18 22:57:51,504 INFO L480 AbstractCegarLoop]: Abstraction has 53 states and 54 transitions. [2018-11-18 22:57:51,504 INFO L481 AbstractCegarLoop]: Interpolant automaton has 12 states. [2018-11-18 22:57:51,505 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 54 transitions. [2018-11-18 22:57:51,505 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2018-11-18 22:57:51,505 INFO L367 BasicCegarLoop]: Found error trace [2018-11-18 22:57:51,505 INFO L375 BasicCegarLoop]: trace histogram [10, 9, 9, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-18 22:57:51,505 INFO L423 AbstractCegarLoop]: === Iteration 12 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-18 22:57:51,506 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 22:57:51,506 INFO L82 PathProgramCache]: Analyzing trace with hash 1658395590, now seen corresponding path program 9 times [2018-11-18 22:57:51,506 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 22:57:51,506 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 22:57:51,507 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:51,507 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-18 22:57:51,507 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:51,523 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:51,906 INFO L256 TraceCheckUtils]: 0: Hoare triple {3202#true} call ULTIMATE.init(); {3202#true} is VALID [2018-11-18 22:57:51,906 INFO L273 TraceCheckUtils]: 1: Hoare triple {3202#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {3202#true} is VALID [2018-11-18 22:57:51,907 INFO L273 TraceCheckUtils]: 2: Hoare triple {3202#true} assume true; {3202#true} is VALID [2018-11-18 22:57:51,907 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3202#true} {3202#true} #64#return; {3202#true} is VALID [2018-11-18 22:57:51,907 INFO L256 TraceCheckUtils]: 4: Hoare triple {3202#true} call #t~ret6 := main(); {3202#true} is VALID [2018-11-18 22:57:51,907 INFO L273 TraceCheckUtils]: 5: Hoare triple {3202#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {3202#true} is VALID [2018-11-18 22:57:51,907 INFO L256 TraceCheckUtils]: 6: Hoare triple {3202#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {3202#true} is VALID [2018-11-18 22:57:51,908 INFO L273 TraceCheckUtils]: 7: Hoare triple {3202#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {3204#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:51,912 INFO L273 TraceCheckUtils]: 8: Hoare triple {3204#(= _strcmp_~i~0 0)} assume true; {3204#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:51,912 INFO L273 TraceCheckUtils]: 9: Hoare triple {3204#(= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3204#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:51,914 INFO L273 TraceCheckUtils]: 10: Hoare triple {3204#(= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3205#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:51,914 INFO L273 TraceCheckUtils]: 11: Hoare triple {3205#(<= _strcmp_~i~0 1)} assume true; {3205#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:51,917 INFO L273 TraceCheckUtils]: 12: Hoare triple {3205#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3205#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:51,917 INFO L273 TraceCheckUtils]: 13: Hoare triple {3205#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3206#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:51,919 INFO L273 TraceCheckUtils]: 14: Hoare triple {3206#(<= _strcmp_~i~0 2)} assume true; {3206#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:51,919 INFO L273 TraceCheckUtils]: 15: Hoare triple {3206#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3206#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:51,922 INFO L273 TraceCheckUtils]: 16: Hoare triple {3206#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3207#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:51,922 INFO L273 TraceCheckUtils]: 17: Hoare triple {3207#(<= _strcmp_~i~0 3)} assume true; {3207#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:51,924 INFO L273 TraceCheckUtils]: 18: Hoare triple {3207#(<= _strcmp_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3207#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:51,924 INFO L273 TraceCheckUtils]: 19: Hoare triple {3207#(<= _strcmp_~i~0 3)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3208#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:51,926 INFO L273 TraceCheckUtils]: 20: Hoare triple {3208#(<= _strcmp_~i~0 4)} assume true; {3208#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:51,926 INFO L273 TraceCheckUtils]: 21: Hoare triple {3208#(<= _strcmp_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3208#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:51,929 INFO L273 TraceCheckUtils]: 22: Hoare triple {3208#(<= _strcmp_~i~0 4)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3209#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:51,929 INFO L273 TraceCheckUtils]: 23: Hoare triple {3209#(<= _strcmp_~i~0 5)} assume true; {3209#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:51,932 INFO L273 TraceCheckUtils]: 24: Hoare triple {3209#(<= _strcmp_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3209#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:51,932 INFO L273 TraceCheckUtils]: 25: Hoare triple {3209#(<= _strcmp_~i~0 5)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3210#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:51,935 INFO L273 TraceCheckUtils]: 26: Hoare triple {3210#(<= _strcmp_~i~0 6)} assume true; {3210#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:51,935 INFO L273 TraceCheckUtils]: 27: Hoare triple {3210#(<= _strcmp_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3210#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:51,937 INFO L273 TraceCheckUtils]: 28: Hoare triple {3210#(<= _strcmp_~i~0 6)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3211#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 22:57:51,937 INFO L273 TraceCheckUtils]: 29: Hoare triple {3211#(<= _strcmp_~i~0 7)} assume true; {3211#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 22:57:51,939 INFO L273 TraceCheckUtils]: 30: Hoare triple {3211#(<= _strcmp_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3211#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 22:57:51,939 INFO L273 TraceCheckUtils]: 31: Hoare triple {3211#(<= _strcmp_~i~0 7)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3212#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 22:57:51,942 INFO L273 TraceCheckUtils]: 32: Hoare triple {3212#(<= _strcmp_~i~0 8)} assume true; {3212#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 22:57:51,942 INFO L273 TraceCheckUtils]: 33: Hoare triple {3212#(<= _strcmp_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3212#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 22:57:51,944 INFO L273 TraceCheckUtils]: 34: Hoare triple {3212#(<= _strcmp_~i~0 8)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3213#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 22:57:51,944 INFO L273 TraceCheckUtils]: 35: Hoare triple {3213#(<= _strcmp_~i~0 9)} assume true; {3213#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 22:57:51,947 INFO L273 TraceCheckUtils]: 36: Hoare triple {3213#(<= _strcmp_~i~0 9)} assume !(~i~0 < 100000); {3203#false} is VALID [2018-11-18 22:57:51,947 INFO L273 TraceCheckUtils]: 37: Hoare triple {3203#false} #res := 0; {3203#false} is VALID [2018-11-18 22:57:51,947 INFO L273 TraceCheckUtils]: 38: Hoare triple {3203#false} assume true; {3203#false} is VALID [2018-11-18 22:57:51,947 INFO L268 TraceCheckUtils]: 39: Hoare quadruple {3203#false} {3202#true} #68#return; {3203#false} is VALID [2018-11-18 22:57:51,947 INFO L273 TraceCheckUtils]: 40: Hoare triple {3203#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {3203#false} is VALID [2018-11-18 22:57:51,947 INFO L273 TraceCheckUtils]: 41: Hoare triple {3203#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {3203#false} is VALID [2018-11-18 22:57:51,948 INFO L273 TraceCheckUtils]: 42: Hoare triple {3203#false} assume true; {3203#false} is VALID [2018-11-18 22:57:51,948 INFO L273 TraceCheckUtils]: 43: Hoare triple {3203#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {3203#false} is VALID [2018-11-18 22:57:51,948 INFO L256 TraceCheckUtils]: 44: Hoare triple {3203#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {3203#false} is VALID [2018-11-18 22:57:51,948 INFO L273 TraceCheckUtils]: 45: Hoare triple {3203#false} ~cond := #in~cond; {3203#false} is VALID [2018-11-18 22:57:51,948 INFO L273 TraceCheckUtils]: 46: Hoare triple {3203#false} assume 0 == ~cond; {3203#false} is VALID [2018-11-18 22:57:51,948 INFO L273 TraceCheckUtils]: 47: Hoare triple {3203#false} assume !false; {3203#false} is VALID [2018-11-18 22:57:51,950 INFO L134 CoverageAnalysis]: Checked inductivity of 126 backedges. 0 proven. 126 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 22:57:51,950 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-18 22:57:51,950 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-18 22:57:51,958 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-18 22:57:52,020 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2018-11-18 22:57:52,021 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-18 22:57:52,050 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:52,052 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 22:57:52,506 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 26 treesize of output 26 [2018-11-18 22:57:52,602 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 15 [2018-11-18 22:57:52,626 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-18 22:57:52,865 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 8 [2018-11-18 22:57:52,867 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-18 22:57:52,887 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 3 [2018-11-18 22:57:52,888 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-18 22:57:52,892 INFO L267 ElimStorePlain]: Start of recursive call 2: 3 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-18 22:57:52,894 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-18 22:57:52,894 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 3 variables, input treesize:26, output treesize:3 [2018-11-18 22:57:52,897 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-18 22:57:52,941 INFO L256 TraceCheckUtils]: 0: Hoare triple {3202#true} call ULTIMATE.init(); {3202#true} is VALID [2018-11-18 22:57:52,941 INFO L273 TraceCheckUtils]: 1: Hoare triple {3202#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {3202#true} is VALID [2018-11-18 22:57:52,941 INFO L273 TraceCheckUtils]: 2: Hoare triple {3202#true} assume true; {3202#true} is VALID [2018-11-18 22:57:52,941 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3202#true} {3202#true} #64#return; {3202#true} is VALID [2018-11-18 22:57:52,942 INFO L256 TraceCheckUtils]: 4: Hoare triple {3202#true} call #t~ret6 := main(); {3202#true} is VALID [2018-11-18 22:57:52,943 INFO L273 TraceCheckUtils]: 5: Hoare triple {3202#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {3232#(and (= |main_~#b~0.offset| 0) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 22:57:52,943 INFO L256 TraceCheckUtils]: 6: Hoare triple {3232#(and (= |main_~#b~0.offset| 0) (= |main_~#a~0.offset| 0))} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {3202#true} is VALID [2018-11-18 22:57:52,943 INFO L273 TraceCheckUtils]: 7: Hoare triple {3202#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {3239#(and (= _strcmp_~i~0 0) (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} is VALID [2018-11-18 22:57:52,944 INFO L273 TraceCheckUtils]: 8: Hoare triple {3239#(and (= _strcmp_~i~0 0) (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} assume true; {3239#(and (= _strcmp_~i~0 0) (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} is VALID [2018-11-18 22:57:52,944 INFO L273 TraceCheckUtils]: 9: Hoare triple {3239#(and (= _strcmp_~i~0 0) (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3246#(and (= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) |_strcmp_#t~mem0|) (= (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|) |_strcmp_#t~mem1|))} is VALID [2018-11-18 22:57:52,945 INFO L273 TraceCheckUtils]: 10: Hoare triple {3246#(and (= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) |_strcmp_#t~mem0|) (= (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|) |_strcmp_#t~mem1|))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,945 INFO L273 TraceCheckUtils]: 11: Hoare triple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} assume true; {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,946 INFO L273 TraceCheckUtils]: 12: Hoare triple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,946 INFO L273 TraceCheckUtils]: 13: Hoare triple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,947 INFO L273 TraceCheckUtils]: 14: Hoare triple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} assume true; {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,947 INFO L273 TraceCheckUtils]: 15: Hoare triple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,948 INFO L273 TraceCheckUtils]: 16: Hoare triple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,948 INFO L273 TraceCheckUtils]: 17: Hoare triple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} assume true; {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,949 INFO L273 TraceCheckUtils]: 18: Hoare triple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,949 INFO L273 TraceCheckUtils]: 19: Hoare triple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,950 INFO L273 TraceCheckUtils]: 20: Hoare triple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} assume true; {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,951 INFO L273 TraceCheckUtils]: 21: Hoare triple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,969 INFO L273 TraceCheckUtils]: 22: Hoare triple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,974 INFO L273 TraceCheckUtils]: 23: Hoare triple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} assume true; {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,974 INFO L273 TraceCheckUtils]: 24: Hoare triple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,975 INFO L273 TraceCheckUtils]: 25: Hoare triple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,975 INFO L273 TraceCheckUtils]: 26: Hoare triple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} assume true; {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,975 INFO L273 TraceCheckUtils]: 27: Hoare triple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,976 INFO L273 TraceCheckUtils]: 28: Hoare triple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,976 INFO L273 TraceCheckUtils]: 29: Hoare triple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} assume true; {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,976 INFO L273 TraceCheckUtils]: 30: Hoare triple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,976 INFO L273 TraceCheckUtils]: 31: Hoare triple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,977 INFO L273 TraceCheckUtils]: 32: Hoare triple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} assume true; {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,978 INFO L273 TraceCheckUtils]: 33: Hoare triple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,978 INFO L273 TraceCheckUtils]: 34: Hoare triple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,979 INFO L273 TraceCheckUtils]: 35: Hoare triple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} assume true; {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,979 INFO L273 TraceCheckUtils]: 36: Hoare triple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} assume !(~i~0 < 100000); {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,980 INFO L273 TraceCheckUtils]: 37: Hoare triple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} #res := 0; {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,980 INFO L273 TraceCheckUtils]: 38: Hoare triple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} assume true; {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} is VALID [2018-11-18 22:57:52,986 INFO L268 TraceCheckUtils]: 39: Hoare quadruple {3250#(= (select (select |#memory_int| |_strcmp_#in~dst.base|) |_strcmp_#in~dst.offset|) (select (select |#memory_int| |_strcmp_#in~src.base|) |_strcmp_#in~src.offset|))} {3232#(and (= |main_~#b~0.offset| 0) (= |main_~#a~0.offset| 0))} #68#return; {3338#(and (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) |main_~#b~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 22:57:52,987 INFO L273 TraceCheckUtils]: 40: Hoare triple {3338#(and (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) |main_~#b~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (= |main_~#a~0.offset| 0))} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {3338#(and (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) |main_~#b~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 22:57:52,988 INFO L273 TraceCheckUtils]: 41: Hoare triple {3338#(and (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) |main_~#b~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (= |main_~#a~0.offset| 0))} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {3345#(and (= main_~x~0 0) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) |main_~#b~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 22:57:52,988 INFO L273 TraceCheckUtils]: 42: Hoare triple {3345#(and (= main_~x~0 0) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) |main_~#b~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (= |main_~#a~0.offset| 0))} assume true; {3345#(and (= main_~x~0 0) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) |main_~#b~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 22:57:52,989 INFO L273 TraceCheckUtils]: 43: Hoare triple {3345#(and (= main_~x~0 0) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) |main_~#b~0.offset|) (select (select |#memory_int| |main_~#a~0.base|) |main_~#a~0.offset|)) (= |main_~#a~0.offset| 0))} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {3352#(= |main_#t~mem5| |main_#t~mem4|)} is VALID [2018-11-18 22:57:52,989 INFO L256 TraceCheckUtils]: 44: Hoare triple {3352#(= |main_#t~mem5| |main_#t~mem4|)} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {3356#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-18 22:57:52,990 INFO L273 TraceCheckUtils]: 45: Hoare triple {3356#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {3360#(= 1 __VERIFIER_assert_~cond)} is VALID [2018-11-18 22:57:52,990 INFO L273 TraceCheckUtils]: 46: Hoare triple {3360#(= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3203#false} is VALID [2018-11-18 22:57:52,990 INFO L273 TraceCheckUtils]: 47: Hoare triple {3203#false} assume !false; {3203#false} is VALID [2018-11-18 22:57:52,998 INFO L134 CoverageAnalysis]: Checked inductivity of 126 backedges. 0 proven. 26 refuted. 0 times theorem prover too weak. 100 trivial. 0 not checked. [2018-11-18 22:57:53,020 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-18 22:57:53,021 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 11] total 21 [2018-11-18 22:57:53,021 INFO L78 Accepts]: Start accepts. Automaton has 21 states. Word has length 48 [2018-11-18 22:57:53,022 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-18 22:57:53,022 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 21 states. [2018-11-18 22:57:53,116 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-18 22:57:53,116 INFO L459 AbstractCegarLoop]: Interpolant automaton has 21 states [2018-11-18 22:57:53,116 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2018-11-18 22:57:53,117 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=97, Invalid=323, Unknown=0, NotChecked=0, Total=420 [2018-11-18 22:57:53,117 INFO L87 Difference]: Start difference. First operand 53 states and 54 transitions. Second operand 21 states. [2018-11-18 22:57:54,374 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:54,375 INFO L93 Difference]: Finished difference Result 82 states and 85 transitions. [2018-11-18 22:57:54,375 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2018-11-18 22:57:54,375 INFO L78 Accepts]: Start accepts. Automaton has 21 states. Word has length 48 [2018-11-18 22:57:54,375 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-18 22:57:54,376 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 21 states. [2018-11-18 22:57:54,378 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 85 transitions. [2018-11-18 22:57:54,378 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 21 states. [2018-11-18 22:57:54,380 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 85 transitions. [2018-11-18 22:57:54,380 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states and 85 transitions. [2018-11-18 22:57:54,511 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-18 22:57:54,513 INFO L225 Difference]: With dead ends: 82 [2018-11-18 22:57:54,513 INFO L226 Difference]: Without dead ends: 66 [2018-11-18 22:57:54,514 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 71 GetRequests, 40 SyntacticMatches, 0 SemanticMatches, 31 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 202 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=229, Invalid=827, Unknown=0, NotChecked=0, Total=1056 [2018-11-18 22:57:54,514 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 66 states. [2018-11-18 22:57:54,566 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 66 to 63. [2018-11-18 22:57:54,566 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-18 22:57:54,566 INFO L82 GeneralOperation]: Start isEquivalent. First operand 66 states. Second operand 63 states. [2018-11-18 22:57:54,567 INFO L74 IsIncluded]: Start isIncluded. First operand 66 states. Second operand 63 states. [2018-11-18 22:57:54,567 INFO L87 Difference]: Start difference. First operand 66 states. Second operand 63 states. [2018-11-18 22:57:54,569 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:54,569 INFO L93 Difference]: Finished difference Result 66 states and 67 transitions. [2018-11-18 22:57:54,570 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 67 transitions. [2018-11-18 22:57:54,570 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 22:57:54,570 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 22:57:54,570 INFO L74 IsIncluded]: Start isIncluded. First operand 63 states. Second operand 66 states. [2018-11-18 22:57:54,570 INFO L87 Difference]: Start difference. First operand 63 states. Second operand 66 states. [2018-11-18 22:57:54,571 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:54,572 INFO L93 Difference]: Finished difference Result 66 states and 67 transitions. [2018-11-18 22:57:54,572 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 67 transitions. [2018-11-18 22:57:54,572 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 22:57:54,572 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 22:57:54,572 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-18 22:57:54,572 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-18 22:57:54,572 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 63 states. [2018-11-18 22:57:54,574 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 63 states to 63 states and 64 transitions. [2018-11-18 22:57:54,574 INFO L78 Accepts]: Start accepts. Automaton has 63 states and 64 transitions. Word has length 48 [2018-11-18 22:57:54,574 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-18 22:57:54,574 INFO L480 AbstractCegarLoop]: Abstraction has 63 states and 64 transitions. [2018-11-18 22:57:54,574 INFO L481 AbstractCegarLoop]: Interpolant automaton has 21 states. [2018-11-18 22:57:54,574 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 64 transitions. [2018-11-18 22:57:54,575 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 61 [2018-11-18 22:57:54,575 INFO L367 BasicCegarLoop]: Found error trace [2018-11-18 22:57:54,575 INFO L375 BasicCegarLoop]: trace histogram [11, 10, 10, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-18 22:57:54,575 INFO L423 AbstractCegarLoop]: === Iteration 13 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-18 22:57:54,575 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 22:57:54,576 INFO L82 PathProgramCache]: Analyzing trace with hash -802482852, now seen corresponding path program 1 times [2018-11-18 22:57:54,576 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 22:57:54,576 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 22:57:54,577 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:54,577 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-18 22:57:54,577 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:54,594 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:54,789 INFO L256 TraceCheckUtils]: 0: Hoare triple {3716#true} call ULTIMATE.init(); {3716#true} is VALID [2018-11-18 22:57:54,789 INFO L273 TraceCheckUtils]: 1: Hoare triple {3716#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {3716#true} is VALID [2018-11-18 22:57:54,790 INFO L273 TraceCheckUtils]: 2: Hoare triple {3716#true} assume true; {3716#true} is VALID [2018-11-18 22:57:54,790 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3716#true} {3716#true} #64#return; {3716#true} is VALID [2018-11-18 22:57:54,790 INFO L256 TraceCheckUtils]: 4: Hoare triple {3716#true} call #t~ret6 := main(); {3716#true} is VALID [2018-11-18 22:57:54,791 INFO L273 TraceCheckUtils]: 5: Hoare triple {3716#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {3716#true} is VALID [2018-11-18 22:57:54,791 INFO L256 TraceCheckUtils]: 6: Hoare triple {3716#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {3716#true} is VALID [2018-11-18 22:57:54,792 INFO L273 TraceCheckUtils]: 7: Hoare triple {3716#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {3718#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:54,792 INFO L273 TraceCheckUtils]: 8: Hoare triple {3718#(= _strcmp_~i~0 0)} assume true; {3718#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:54,792 INFO L273 TraceCheckUtils]: 9: Hoare triple {3718#(= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3718#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:54,793 INFO L273 TraceCheckUtils]: 10: Hoare triple {3718#(= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3719#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:54,793 INFO L273 TraceCheckUtils]: 11: Hoare triple {3719#(<= _strcmp_~i~0 1)} assume true; {3719#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:54,794 INFO L273 TraceCheckUtils]: 12: Hoare triple {3719#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3719#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:54,794 INFO L273 TraceCheckUtils]: 13: Hoare triple {3719#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3720#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:54,795 INFO L273 TraceCheckUtils]: 14: Hoare triple {3720#(<= _strcmp_~i~0 2)} assume true; {3720#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:54,796 INFO L273 TraceCheckUtils]: 15: Hoare triple {3720#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3720#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:54,797 INFO L273 TraceCheckUtils]: 16: Hoare triple {3720#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3721#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:54,797 INFO L273 TraceCheckUtils]: 17: Hoare triple {3721#(<= _strcmp_~i~0 3)} assume true; {3721#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:54,798 INFO L273 TraceCheckUtils]: 18: Hoare triple {3721#(<= _strcmp_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3721#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:54,799 INFO L273 TraceCheckUtils]: 19: Hoare triple {3721#(<= _strcmp_~i~0 3)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3722#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:54,799 INFO L273 TraceCheckUtils]: 20: Hoare triple {3722#(<= _strcmp_~i~0 4)} assume true; {3722#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:54,800 INFO L273 TraceCheckUtils]: 21: Hoare triple {3722#(<= _strcmp_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3722#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:54,801 INFO L273 TraceCheckUtils]: 22: Hoare triple {3722#(<= _strcmp_~i~0 4)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3723#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:54,802 INFO L273 TraceCheckUtils]: 23: Hoare triple {3723#(<= _strcmp_~i~0 5)} assume true; {3723#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:54,802 INFO L273 TraceCheckUtils]: 24: Hoare triple {3723#(<= _strcmp_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3723#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:54,803 INFO L273 TraceCheckUtils]: 25: Hoare triple {3723#(<= _strcmp_~i~0 5)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3724#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:54,804 INFO L273 TraceCheckUtils]: 26: Hoare triple {3724#(<= _strcmp_~i~0 6)} assume true; {3724#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:54,805 INFO L273 TraceCheckUtils]: 27: Hoare triple {3724#(<= _strcmp_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3724#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:54,806 INFO L273 TraceCheckUtils]: 28: Hoare triple {3724#(<= _strcmp_~i~0 6)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3725#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 22:57:54,806 INFO L273 TraceCheckUtils]: 29: Hoare triple {3725#(<= _strcmp_~i~0 7)} assume true; {3725#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 22:57:54,807 INFO L273 TraceCheckUtils]: 30: Hoare triple {3725#(<= _strcmp_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3725#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 22:57:54,811 INFO L273 TraceCheckUtils]: 31: Hoare triple {3725#(<= _strcmp_~i~0 7)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3726#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 22:57:54,814 INFO L273 TraceCheckUtils]: 32: Hoare triple {3726#(<= _strcmp_~i~0 8)} assume true; {3726#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 22:57:54,814 INFO L273 TraceCheckUtils]: 33: Hoare triple {3726#(<= _strcmp_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3726#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 22:57:54,815 INFO L273 TraceCheckUtils]: 34: Hoare triple {3726#(<= _strcmp_~i~0 8)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3727#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 22:57:54,815 INFO L273 TraceCheckUtils]: 35: Hoare triple {3727#(<= _strcmp_~i~0 9)} assume true; {3727#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 22:57:54,815 INFO L273 TraceCheckUtils]: 36: Hoare triple {3727#(<= _strcmp_~i~0 9)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3727#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 22:57:54,816 INFO L273 TraceCheckUtils]: 37: Hoare triple {3727#(<= _strcmp_~i~0 9)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3728#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 22:57:54,816 INFO L273 TraceCheckUtils]: 38: Hoare triple {3728#(<= _strcmp_~i~0 10)} assume true; {3728#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 22:57:54,817 INFO L273 TraceCheckUtils]: 39: Hoare triple {3728#(<= _strcmp_~i~0 10)} assume !(~i~0 < 100000); {3717#false} is VALID [2018-11-18 22:57:54,817 INFO L273 TraceCheckUtils]: 40: Hoare triple {3717#false} #res := 0; {3717#false} is VALID [2018-11-18 22:57:54,817 INFO L273 TraceCheckUtils]: 41: Hoare triple {3717#false} assume true; {3717#false} is VALID [2018-11-18 22:57:54,818 INFO L268 TraceCheckUtils]: 42: Hoare quadruple {3717#false} {3716#true} #68#return; {3717#false} is VALID [2018-11-18 22:57:54,818 INFO L273 TraceCheckUtils]: 43: Hoare triple {3717#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {3717#false} is VALID [2018-11-18 22:57:54,818 INFO L273 TraceCheckUtils]: 44: Hoare triple {3717#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {3717#false} is VALID [2018-11-18 22:57:54,819 INFO L273 TraceCheckUtils]: 45: Hoare triple {3717#false} assume true; {3717#false} is VALID [2018-11-18 22:57:54,819 INFO L273 TraceCheckUtils]: 46: Hoare triple {3717#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {3717#false} is VALID [2018-11-18 22:57:54,819 INFO L256 TraceCheckUtils]: 47: Hoare triple {3717#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {3716#true} is VALID [2018-11-18 22:57:54,819 INFO L273 TraceCheckUtils]: 48: Hoare triple {3716#true} ~cond := #in~cond; {3716#true} is VALID [2018-11-18 22:57:54,820 INFO L273 TraceCheckUtils]: 49: Hoare triple {3716#true} assume !(0 == ~cond); {3716#true} is VALID [2018-11-18 22:57:54,820 INFO L273 TraceCheckUtils]: 50: Hoare triple {3716#true} assume true; {3716#true} is VALID [2018-11-18 22:57:54,820 INFO L268 TraceCheckUtils]: 51: Hoare quadruple {3716#true} {3717#false} #70#return; {3717#false} is VALID [2018-11-18 22:57:54,822 INFO L273 TraceCheckUtils]: 52: Hoare triple {3717#false} havoc #t~mem5;havoc #t~mem4; {3717#false} is VALID [2018-11-18 22:57:54,822 INFO L273 TraceCheckUtils]: 53: Hoare triple {3717#false} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {3717#false} is VALID [2018-11-18 22:57:54,822 INFO L273 TraceCheckUtils]: 54: Hoare triple {3717#false} assume true; {3717#false} is VALID [2018-11-18 22:57:54,822 INFO L273 TraceCheckUtils]: 55: Hoare triple {3717#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {3717#false} is VALID [2018-11-18 22:57:54,822 INFO L256 TraceCheckUtils]: 56: Hoare triple {3717#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {3717#false} is VALID [2018-11-18 22:57:54,823 INFO L273 TraceCheckUtils]: 57: Hoare triple {3717#false} ~cond := #in~cond; {3717#false} is VALID [2018-11-18 22:57:54,823 INFO L273 TraceCheckUtils]: 58: Hoare triple {3717#false} assume 0 == ~cond; {3717#false} is VALID [2018-11-18 22:57:54,823 INFO L273 TraceCheckUtils]: 59: Hoare triple {3717#false} assume !false; {3717#false} is VALID [2018-11-18 22:57:54,828 INFO L134 CoverageAnalysis]: Checked inductivity of 160 backedges. 2 proven. 155 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2018-11-18 22:57:54,829 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-18 22:57:54,829 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-18 22:57:54,842 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 22:57:54,877 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:54,905 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:54,907 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 22:57:55,087 INFO L256 TraceCheckUtils]: 0: Hoare triple {3716#true} call ULTIMATE.init(); {3716#true} is VALID [2018-11-18 22:57:55,087 INFO L273 TraceCheckUtils]: 1: Hoare triple {3716#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {3716#true} is VALID [2018-11-18 22:57:55,088 INFO L273 TraceCheckUtils]: 2: Hoare triple {3716#true} assume true; {3716#true} is VALID [2018-11-18 22:57:55,088 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {3716#true} {3716#true} #64#return; {3716#true} is VALID [2018-11-18 22:57:55,088 INFO L256 TraceCheckUtils]: 4: Hoare triple {3716#true} call #t~ret6 := main(); {3716#true} is VALID [2018-11-18 22:57:55,088 INFO L273 TraceCheckUtils]: 5: Hoare triple {3716#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {3716#true} is VALID [2018-11-18 22:57:55,089 INFO L256 TraceCheckUtils]: 6: Hoare triple {3716#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {3716#true} is VALID [2018-11-18 22:57:55,109 INFO L273 TraceCheckUtils]: 7: Hoare triple {3716#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {3753#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:55,122 INFO L273 TraceCheckUtils]: 8: Hoare triple {3753#(<= _strcmp_~i~0 0)} assume true; {3753#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:55,130 INFO L273 TraceCheckUtils]: 9: Hoare triple {3753#(<= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3753#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:55,144 INFO L273 TraceCheckUtils]: 10: Hoare triple {3753#(<= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3719#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:55,153 INFO L273 TraceCheckUtils]: 11: Hoare triple {3719#(<= _strcmp_~i~0 1)} assume true; {3719#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:55,165 INFO L273 TraceCheckUtils]: 12: Hoare triple {3719#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3719#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:55,179 INFO L273 TraceCheckUtils]: 13: Hoare triple {3719#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3720#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:55,188 INFO L273 TraceCheckUtils]: 14: Hoare triple {3720#(<= _strcmp_~i~0 2)} assume true; {3720#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:55,200 INFO L273 TraceCheckUtils]: 15: Hoare triple {3720#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3720#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:55,202 INFO L273 TraceCheckUtils]: 16: Hoare triple {3720#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3721#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:55,204 INFO L273 TraceCheckUtils]: 17: Hoare triple {3721#(<= _strcmp_~i~0 3)} assume true; {3721#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:55,204 INFO L273 TraceCheckUtils]: 18: Hoare triple {3721#(<= _strcmp_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3721#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:55,205 INFO L273 TraceCheckUtils]: 19: Hoare triple {3721#(<= _strcmp_~i~0 3)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3722#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:55,205 INFO L273 TraceCheckUtils]: 20: Hoare triple {3722#(<= _strcmp_~i~0 4)} assume true; {3722#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:55,205 INFO L273 TraceCheckUtils]: 21: Hoare triple {3722#(<= _strcmp_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3722#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:55,206 INFO L273 TraceCheckUtils]: 22: Hoare triple {3722#(<= _strcmp_~i~0 4)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3723#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:55,206 INFO L273 TraceCheckUtils]: 23: Hoare triple {3723#(<= _strcmp_~i~0 5)} assume true; {3723#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:55,206 INFO L273 TraceCheckUtils]: 24: Hoare triple {3723#(<= _strcmp_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3723#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:55,207 INFO L273 TraceCheckUtils]: 25: Hoare triple {3723#(<= _strcmp_~i~0 5)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3724#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:55,207 INFO L273 TraceCheckUtils]: 26: Hoare triple {3724#(<= _strcmp_~i~0 6)} assume true; {3724#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:55,208 INFO L273 TraceCheckUtils]: 27: Hoare triple {3724#(<= _strcmp_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3724#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:55,209 INFO L273 TraceCheckUtils]: 28: Hoare triple {3724#(<= _strcmp_~i~0 6)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3725#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 22:57:55,209 INFO L273 TraceCheckUtils]: 29: Hoare triple {3725#(<= _strcmp_~i~0 7)} assume true; {3725#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 22:57:55,210 INFO L273 TraceCheckUtils]: 30: Hoare triple {3725#(<= _strcmp_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3725#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 22:57:55,211 INFO L273 TraceCheckUtils]: 31: Hoare triple {3725#(<= _strcmp_~i~0 7)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3726#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 22:57:55,211 INFO L273 TraceCheckUtils]: 32: Hoare triple {3726#(<= _strcmp_~i~0 8)} assume true; {3726#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 22:57:55,212 INFO L273 TraceCheckUtils]: 33: Hoare triple {3726#(<= _strcmp_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3726#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 22:57:55,213 INFO L273 TraceCheckUtils]: 34: Hoare triple {3726#(<= _strcmp_~i~0 8)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3727#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 22:57:55,214 INFO L273 TraceCheckUtils]: 35: Hoare triple {3727#(<= _strcmp_~i~0 9)} assume true; {3727#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 22:57:55,214 INFO L273 TraceCheckUtils]: 36: Hoare triple {3727#(<= _strcmp_~i~0 9)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {3727#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 22:57:55,215 INFO L273 TraceCheckUtils]: 37: Hoare triple {3727#(<= _strcmp_~i~0 9)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {3728#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 22:57:55,216 INFO L273 TraceCheckUtils]: 38: Hoare triple {3728#(<= _strcmp_~i~0 10)} assume true; {3728#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 22:57:55,216 INFO L273 TraceCheckUtils]: 39: Hoare triple {3728#(<= _strcmp_~i~0 10)} assume !(~i~0 < 100000); {3717#false} is VALID [2018-11-18 22:57:55,217 INFO L273 TraceCheckUtils]: 40: Hoare triple {3717#false} #res := 0; {3717#false} is VALID [2018-11-18 22:57:55,217 INFO L273 TraceCheckUtils]: 41: Hoare triple {3717#false} assume true; {3717#false} is VALID [2018-11-18 22:57:55,217 INFO L268 TraceCheckUtils]: 42: Hoare quadruple {3717#false} {3716#true} #68#return; {3717#false} is VALID [2018-11-18 22:57:55,218 INFO L273 TraceCheckUtils]: 43: Hoare triple {3717#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {3717#false} is VALID [2018-11-18 22:57:55,218 INFO L273 TraceCheckUtils]: 44: Hoare triple {3717#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {3717#false} is VALID [2018-11-18 22:57:55,218 INFO L273 TraceCheckUtils]: 45: Hoare triple {3717#false} assume true; {3717#false} is VALID [2018-11-18 22:57:55,218 INFO L273 TraceCheckUtils]: 46: Hoare triple {3717#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {3717#false} is VALID [2018-11-18 22:57:55,218 INFO L256 TraceCheckUtils]: 47: Hoare triple {3717#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {3717#false} is VALID [2018-11-18 22:57:55,219 INFO L273 TraceCheckUtils]: 48: Hoare triple {3717#false} ~cond := #in~cond; {3717#false} is VALID [2018-11-18 22:57:55,219 INFO L273 TraceCheckUtils]: 49: Hoare triple {3717#false} assume !(0 == ~cond); {3717#false} is VALID [2018-11-18 22:57:55,219 INFO L273 TraceCheckUtils]: 50: Hoare triple {3717#false} assume true; {3717#false} is VALID [2018-11-18 22:57:55,219 INFO L268 TraceCheckUtils]: 51: Hoare quadruple {3717#false} {3717#false} #70#return; {3717#false} is VALID [2018-11-18 22:57:55,219 INFO L273 TraceCheckUtils]: 52: Hoare triple {3717#false} havoc #t~mem5;havoc #t~mem4; {3717#false} is VALID [2018-11-18 22:57:55,220 INFO L273 TraceCheckUtils]: 53: Hoare triple {3717#false} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {3717#false} is VALID [2018-11-18 22:57:55,220 INFO L273 TraceCheckUtils]: 54: Hoare triple {3717#false} assume true; {3717#false} is VALID [2018-11-18 22:57:55,220 INFO L273 TraceCheckUtils]: 55: Hoare triple {3717#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {3717#false} is VALID [2018-11-18 22:57:55,220 INFO L256 TraceCheckUtils]: 56: Hoare triple {3717#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {3717#false} is VALID [2018-11-18 22:57:55,220 INFO L273 TraceCheckUtils]: 57: Hoare triple {3717#false} ~cond := #in~cond; {3717#false} is VALID [2018-11-18 22:57:55,221 INFO L273 TraceCheckUtils]: 58: Hoare triple {3717#false} assume 0 == ~cond; {3717#false} is VALID [2018-11-18 22:57:55,221 INFO L273 TraceCheckUtils]: 59: Hoare triple {3717#false} assume !false; {3717#false} is VALID [2018-11-18 22:57:55,223 INFO L134 CoverageAnalysis]: Checked inductivity of 160 backedges. 0 proven. 155 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2018-11-18 22:57:55,243 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-18 22:57:55,243 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 14 [2018-11-18 22:57:55,243 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 60 [2018-11-18 22:57:55,244 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-18 22:57:55,244 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states. [2018-11-18 22:57:55,301 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-18 22:57:55,301 INFO L459 AbstractCegarLoop]: Interpolant automaton has 14 states [2018-11-18 22:57:55,302 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2018-11-18 22:57:55,302 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=91, Invalid=91, Unknown=0, NotChecked=0, Total=182 [2018-11-18 22:57:55,304 INFO L87 Difference]: Start difference. First operand 63 states and 64 transitions. Second operand 14 states. [2018-11-18 22:57:55,461 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:55,462 INFO L93 Difference]: Finished difference Result 90 states and 92 transitions. [2018-11-18 22:57:55,462 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2018-11-18 22:57:55,462 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 60 [2018-11-18 22:57:55,462 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-18 22:57:55,462 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-18 22:57:55,463 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 78 transitions. [2018-11-18 22:57:55,464 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-18 22:57:55,465 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 78 transitions. [2018-11-18 22:57:55,465 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 78 transitions. [2018-11-18 22:57:55,537 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-18 22:57:55,539 INFO L225 Difference]: With dead ends: 90 [2018-11-18 22:57:55,539 INFO L226 Difference]: Without dead ends: 67 [2018-11-18 22:57:55,540 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 72 GetRequests, 60 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 18 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=91, Invalid=91, Unknown=0, NotChecked=0, Total=182 [2018-11-18 22:57:55,540 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 67 states. [2018-11-18 22:57:55,605 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 67 to 66. [2018-11-18 22:57:55,605 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-18 22:57:55,606 INFO L82 GeneralOperation]: Start isEquivalent. First operand 67 states. Second operand 66 states. [2018-11-18 22:57:55,606 INFO L74 IsIncluded]: Start isIncluded. First operand 67 states. Second operand 66 states. [2018-11-18 22:57:55,606 INFO L87 Difference]: Start difference. First operand 67 states. Second operand 66 states. [2018-11-18 22:57:55,608 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:55,608 INFO L93 Difference]: Finished difference Result 67 states and 68 transitions. [2018-11-18 22:57:55,608 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 68 transitions. [2018-11-18 22:57:55,608 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 22:57:55,608 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 22:57:55,608 INFO L74 IsIncluded]: Start isIncluded. First operand 66 states. Second operand 67 states. [2018-11-18 22:57:55,609 INFO L87 Difference]: Start difference. First operand 66 states. Second operand 67 states. [2018-11-18 22:57:55,610 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:55,610 INFO L93 Difference]: Finished difference Result 67 states and 68 transitions. [2018-11-18 22:57:55,610 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 68 transitions. [2018-11-18 22:57:55,611 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 22:57:55,611 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 22:57:55,611 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-18 22:57:55,611 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-18 22:57:55,611 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 66 states. [2018-11-18 22:57:55,613 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 66 states to 66 states and 67 transitions. [2018-11-18 22:57:55,613 INFO L78 Accepts]: Start accepts. Automaton has 66 states and 67 transitions. Word has length 60 [2018-11-18 22:57:55,613 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-18 22:57:55,613 INFO L480 AbstractCegarLoop]: Abstraction has 66 states and 67 transitions. [2018-11-18 22:57:55,613 INFO L481 AbstractCegarLoop]: Interpolant automaton has 14 states. [2018-11-18 22:57:55,613 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 67 transitions. [2018-11-18 22:57:55,614 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2018-11-18 22:57:55,614 INFO L367 BasicCegarLoop]: Found error trace [2018-11-18 22:57:55,614 INFO L375 BasicCegarLoop]: trace histogram [12, 11, 11, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-18 22:57:55,615 INFO L423 AbstractCegarLoop]: === Iteration 14 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-18 22:57:55,615 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 22:57:55,615 INFO L82 PathProgramCache]: Analyzing trace with hash 901292856, now seen corresponding path program 2 times [2018-11-18 22:57:55,615 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 22:57:55,615 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 22:57:55,616 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:55,616 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 22:57:55,616 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:55,630 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:56,210 INFO L256 TraceCheckUtils]: 0: Hoare triple {4253#true} call ULTIMATE.init(); {4253#true} is VALID [2018-11-18 22:57:56,211 INFO L273 TraceCheckUtils]: 1: Hoare triple {4253#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {4253#true} is VALID [2018-11-18 22:57:56,211 INFO L273 TraceCheckUtils]: 2: Hoare triple {4253#true} assume true; {4253#true} is VALID [2018-11-18 22:57:56,211 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4253#true} {4253#true} #64#return; {4253#true} is VALID [2018-11-18 22:57:56,211 INFO L256 TraceCheckUtils]: 4: Hoare triple {4253#true} call #t~ret6 := main(); {4253#true} is VALID [2018-11-18 22:57:56,212 INFO L273 TraceCheckUtils]: 5: Hoare triple {4253#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {4253#true} is VALID [2018-11-18 22:57:56,212 INFO L256 TraceCheckUtils]: 6: Hoare triple {4253#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {4253#true} is VALID [2018-11-18 22:57:56,212 INFO L273 TraceCheckUtils]: 7: Hoare triple {4253#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {4255#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:56,213 INFO L273 TraceCheckUtils]: 8: Hoare triple {4255#(= _strcmp_~i~0 0)} assume true; {4255#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:56,213 INFO L273 TraceCheckUtils]: 9: Hoare triple {4255#(= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4255#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:56,213 INFO L273 TraceCheckUtils]: 10: Hoare triple {4255#(= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4256#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:56,214 INFO L273 TraceCheckUtils]: 11: Hoare triple {4256#(<= _strcmp_~i~0 1)} assume true; {4256#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:56,214 INFO L273 TraceCheckUtils]: 12: Hoare triple {4256#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4256#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:56,215 INFO L273 TraceCheckUtils]: 13: Hoare triple {4256#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4257#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:56,215 INFO L273 TraceCheckUtils]: 14: Hoare triple {4257#(<= _strcmp_~i~0 2)} assume true; {4257#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:56,216 INFO L273 TraceCheckUtils]: 15: Hoare triple {4257#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4257#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:56,217 INFO L273 TraceCheckUtils]: 16: Hoare triple {4257#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4258#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:56,217 INFO L273 TraceCheckUtils]: 17: Hoare triple {4258#(<= _strcmp_~i~0 3)} assume true; {4258#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:56,218 INFO L273 TraceCheckUtils]: 18: Hoare triple {4258#(<= _strcmp_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4258#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:56,218 INFO L273 TraceCheckUtils]: 19: Hoare triple {4258#(<= _strcmp_~i~0 3)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4259#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:56,219 INFO L273 TraceCheckUtils]: 20: Hoare triple {4259#(<= _strcmp_~i~0 4)} assume true; {4259#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:56,220 INFO L273 TraceCheckUtils]: 21: Hoare triple {4259#(<= _strcmp_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4259#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:56,220 INFO L273 TraceCheckUtils]: 22: Hoare triple {4259#(<= _strcmp_~i~0 4)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4260#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:56,221 INFO L273 TraceCheckUtils]: 23: Hoare triple {4260#(<= _strcmp_~i~0 5)} assume true; {4260#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:56,221 INFO L273 TraceCheckUtils]: 24: Hoare triple {4260#(<= _strcmp_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4260#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:56,222 INFO L273 TraceCheckUtils]: 25: Hoare triple {4260#(<= _strcmp_~i~0 5)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4261#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:56,223 INFO L273 TraceCheckUtils]: 26: Hoare triple {4261#(<= _strcmp_~i~0 6)} assume true; {4261#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:56,223 INFO L273 TraceCheckUtils]: 27: Hoare triple {4261#(<= _strcmp_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4261#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:56,224 INFO L273 TraceCheckUtils]: 28: Hoare triple {4261#(<= _strcmp_~i~0 6)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4262#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 22:57:56,225 INFO L273 TraceCheckUtils]: 29: Hoare triple {4262#(<= _strcmp_~i~0 7)} assume true; {4262#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 22:57:56,225 INFO L273 TraceCheckUtils]: 30: Hoare triple {4262#(<= _strcmp_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4262#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 22:57:56,226 INFO L273 TraceCheckUtils]: 31: Hoare triple {4262#(<= _strcmp_~i~0 7)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4263#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 22:57:56,226 INFO L273 TraceCheckUtils]: 32: Hoare triple {4263#(<= _strcmp_~i~0 8)} assume true; {4263#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 22:57:56,227 INFO L273 TraceCheckUtils]: 33: Hoare triple {4263#(<= _strcmp_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4263#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 22:57:56,228 INFO L273 TraceCheckUtils]: 34: Hoare triple {4263#(<= _strcmp_~i~0 8)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4264#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 22:57:56,228 INFO L273 TraceCheckUtils]: 35: Hoare triple {4264#(<= _strcmp_~i~0 9)} assume true; {4264#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 22:57:56,229 INFO L273 TraceCheckUtils]: 36: Hoare triple {4264#(<= _strcmp_~i~0 9)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4264#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 22:57:56,230 INFO L273 TraceCheckUtils]: 37: Hoare triple {4264#(<= _strcmp_~i~0 9)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4265#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 22:57:56,230 INFO L273 TraceCheckUtils]: 38: Hoare triple {4265#(<= _strcmp_~i~0 10)} assume true; {4265#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 22:57:56,231 INFO L273 TraceCheckUtils]: 39: Hoare triple {4265#(<= _strcmp_~i~0 10)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4265#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 22:57:56,231 INFO L273 TraceCheckUtils]: 40: Hoare triple {4265#(<= _strcmp_~i~0 10)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4266#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 22:57:56,232 INFO L273 TraceCheckUtils]: 41: Hoare triple {4266#(<= _strcmp_~i~0 11)} assume true; {4266#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 22:57:56,233 INFO L273 TraceCheckUtils]: 42: Hoare triple {4266#(<= _strcmp_~i~0 11)} assume !(~i~0 < 100000); {4254#false} is VALID [2018-11-18 22:57:56,233 INFO L273 TraceCheckUtils]: 43: Hoare triple {4254#false} #res := 0; {4254#false} is VALID [2018-11-18 22:57:56,233 INFO L273 TraceCheckUtils]: 44: Hoare triple {4254#false} assume true; {4254#false} is VALID [2018-11-18 22:57:56,233 INFO L268 TraceCheckUtils]: 45: Hoare quadruple {4254#false} {4253#true} #68#return; {4254#false} is VALID [2018-11-18 22:57:56,234 INFO L273 TraceCheckUtils]: 46: Hoare triple {4254#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {4254#false} is VALID [2018-11-18 22:57:56,234 INFO L273 TraceCheckUtils]: 47: Hoare triple {4254#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {4254#false} is VALID [2018-11-18 22:57:56,234 INFO L273 TraceCheckUtils]: 48: Hoare triple {4254#false} assume true; {4254#false} is VALID [2018-11-18 22:57:56,234 INFO L273 TraceCheckUtils]: 49: Hoare triple {4254#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {4254#false} is VALID [2018-11-18 22:57:56,234 INFO L256 TraceCheckUtils]: 50: Hoare triple {4254#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {4253#true} is VALID [2018-11-18 22:57:56,235 INFO L273 TraceCheckUtils]: 51: Hoare triple {4253#true} ~cond := #in~cond; {4253#true} is VALID [2018-11-18 22:57:56,235 INFO L273 TraceCheckUtils]: 52: Hoare triple {4253#true} assume !(0 == ~cond); {4253#true} is VALID [2018-11-18 22:57:56,235 INFO L273 TraceCheckUtils]: 53: Hoare triple {4253#true} assume true; {4253#true} is VALID [2018-11-18 22:57:56,235 INFO L268 TraceCheckUtils]: 54: Hoare quadruple {4253#true} {4254#false} #70#return; {4254#false} is VALID [2018-11-18 22:57:56,235 INFO L273 TraceCheckUtils]: 55: Hoare triple {4254#false} havoc #t~mem5;havoc #t~mem4; {4254#false} is VALID [2018-11-18 22:57:56,236 INFO L273 TraceCheckUtils]: 56: Hoare triple {4254#false} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {4254#false} is VALID [2018-11-18 22:57:56,236 INFO L273 TraceCheckUtils]: 57: Hoare triple {4254#false} assume true; {4254#false} is VALID [2018-11-18 22:57:56,236 INFO L273 TraceCheckUtils]: 58: Hoare triple {4254#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {4254#false} is VALID [2018-11-18 22:57:56,236 INFO L256 TraceCheckUtils]: 59: Hoare triple {4254#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {4254#false} is VALID [2018-11-18 22:57:56,236 INFO L273 TraceCheckUtils]: 60: Hoare triple {4254#false} ~cond := #in~cond; {4254#false} is VALID [2018-11-18 22:57:56,237 INFO L273 TraceCheckUtils]: 61: Hoare triple {4254#false} assume 0 == ~cond; {4254#false} is VALID [2018-11-18 22:57:56,237 INFO L273 TraceCheckUtils]: 62: Hoare triple {4254#false} assume !false; {4254#false} is VALID [2018-11-18 22:57:56,239 INFO L134 CoverageAnalysis]: Checked inductivity of 192 backedges. 2 proven. 187 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2018-11-18 22:57:56,239 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-18 22:57:56,239 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-18 22:57:56,248 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-18 22:57:56,281 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-18 22:57:56,281 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-18 22:57:56,294 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:56,296 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 22:57:56,470 INFO L256 TraceCheckUtils]: 0: Hoare triple {4253#true} call ULTIMATE.init(); {4253#true} is VALID [2018-11-18 22:57:56,470 INFO L273 TraceCheckUtils]: 1: Hoare triple {4253#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {4253#true} is VALID [2018-11-18 22:57:56,470 INFO L273 TraceCheckUtils]: 2: Hoare triple {4253#true} assume true; {4253#true} is VALID [2018-11-18 22:57:56,470 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4253#true} {4253#true} #64#return; {4253#true} is VALID [2018-11-18 22:57:56,471 INFO L256 TraceCheckUtils]: 4: Hoare triple {4253#true} call #t~ret6 := main(); {4253#true} is VALID [2018-11-18 22:57:56,471 INFO L273 TraceCheckUtils]: 5: Hoare triple {4253#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {4253#true} is VALID [2018-11-18 22:57:56,471 INFO L256 TraceCheckUtils]: 6: Hoare triple {4253#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {4253#true} is VALID [2018-11-18 22:57:56,471 INFO L273 TraceCheckUtils]: 7: Hoare triple {4253#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {4291#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:56,472 INFO L273 TraceCheckUtils]: 8: Hoare triple {4291#(<= _strcmp_~i~0 0)} assume true; {4291#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:56,472 INFO L273 TraceCheckUtils]: 9: Hoare triple {4291#(<= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4291#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:56,473 INFO L273 TraceCheckUtils]: 10: Hoare triple {4291#(<= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4256#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:56,473 INFO L273 TraceCheckUtils]: 11: Hoare triple {4256#(<= _strcmp_~i~0 1)} assume true; {4256#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:56,473 INFO L273 TraceCheckUtils]: 12: Hoare triple {4256#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4256#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:56,474 INFO L273 TraceCheckUtils]: 13: Hoare triple {4256#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4257#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:56,474 INFO L273 TraceCheckUtils]: 14: Hoare triple {4257#(<= _strcmp_~i~0 2)} assume true; {4257#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:56,475 INFO L273 TraceCheckUtils]: 15: Hoare triple {4257#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4257#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:56,476 INFO L273 TraceCheckUtils]: 16: Hoare triple {4257#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4258#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:56,476 INFO L273 TraceCheckUtils]: 17: Hoare triple {4258#(<= _strcmp_~i~0 3)} assume true; {4258#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:56,477 INFO L273 TraceCheckUtils]: 18: Hoare triple {4258#(<= _strcmp_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4258#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:56,477 INFO L273 TraceCheckUtils]: 19: Hoare triple {4258#(<= _strcmp_~i~0 3)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4259#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:56,478 INFO L273 TraceCheckUtils]: 20: Hoare triple {4259#(<= _strcmp_~i~0 4)} assume true; {4259#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:56,479 INFO L273 TraceCheckUtils]: 21: Hoare triple {4259#(<= _strcmp_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4259#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:56,479 INFO L273 TraceCheckUtils]: 22: Hoare triple {4259#(<= _strcmp_~i~0 4)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4260#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:56,480 INFO L273 TraceCheckUtils]: 23: Hoare triple {4260#(<= _strcmp_~i~0 5)} assume true; {4260#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:56,480 INFO L273 TraceCheckUtils]: 24: Hoare triple {4260#(<= _strcmp_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4260#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:56,481 INFO L273 TraceCheckUtils]: 25: Hoare triple {4260#(<= _strcmp_~i~0 5)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4261#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:56,482 INFO L273 TraceCheckUtils]: 26: Hoare triple {4261#(<= _strcmp_~i~0 6)} assume true; {4261#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:56,482 INFO L273 TraceCheckUtils]: 27: Hoare triple {4261#(<= _strcmp_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4261#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:56,483 INFO L273 TraceCheckUtils]: 28: Hoare triple {4261#(<= _strcmp_~i~0 6)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4262#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 22:57:56,484 INFO L273 TraceCheckUtils]: 29: Hoare triple {4262#(<= _strcmp_~i~0 7)} assume true; {4262#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 22:57:56,484 INFO L273 TraceCheckUtils]: 30: Hoare triple {4262#(<= _strcmp_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4262#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 22:57:56,485 INFO L273 TraceCheckUtils]: 31: Hoare triple {4262#(<= _strcmp_~i~0 7)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4263#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 22:57:56,486 INFO L273 TraceCheckUtils]: 32: Hoare triple {4263#(<= _strcmp_~i~0 8)} assume true; {4263#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 22:57:56,486 INFO L273 TraceCheckUtils]: 33: Hoare triple {4263#(<= _strcmp_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4263#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 22:57:56,487 INFO L273 TraceCheckUtils]: 34: Hoare triple {4263#(<= _strcmp_~i~0 8)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4264#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 22:57:56,487 INFO L273 TraceCheckUtils]: 35: Hoare triple {4264#(<= _strcmp_~i~0 9)} assume true; {4264#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 22:57:56,488 INFO L273 TraceCheckUtils]: 36: Hoare triple {4264#(<= _strcmp_~i~0 9)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4264#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 22:57:56,489 INFO L273 TraceCheckUtils]: 37: Hoare triple {4264#(<= _strcmp_~i~0 9)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4265#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 22:57:56,489 INFO L273 TraceCheckUtils]: 38: Hoare triple {4265#(<= _strcmp_~i~0 10)} assume true; {4265#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 22:57:56,490 INFO L273 TraceCheckUtils]: 39: Hoare triple {4265#(<= _strcmp_~i~0 10)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4265#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 22:57:56,491 INFO L273 TraceCheckUtils]: 40: Hoare triple {4265#(<= _strcmp_~i~0 10)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4266#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 22:57:56,491 INFO L273 TraceCheckUtils]: 41: Hoare triple {4266#(<= _strcmp_~i~0 11)} assume true; {4266#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 22:57:56,492 INFO L273 TraceCheckUtils]: 42: Hoare triple {4266#(<= _strcmp_~i~0 11)} assume !(~i~0 < 100000); {4254#false} is VALID [2018-11-18 22:57:56,492 INFO L273 TraceCheckUtils]: 43: Hoare triple {4254#false} #res := 0; {4254#false} is VALID [2018-11-18 22:57:56,492 INFO L273 TraceCheckUtils]: 44: Hoare triple {4254#false} assume true; {4254#false} is VALID [2018-11-18 22:57:56,493 INFO L268 TraceCheckUtils]: 45: Hoare quadruple {4254#false} {4253#true} #68#return; {4254#false} is VALID [2018-11-18 22:57:56,493 INFO L273 TraceCheckUtils]: 46: Hoare triple {4254#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {4254#false} is VALID [2018-11-18 22:57:56,493 INFO L273 TraceCheckUtils]: 47: Hoare triple {4254#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {4254#false} is VALID [2018-11-18 22:57:56,493 INFO L273 TraceCheckUtils]: 48: Hoare triple {4254#false} assume true; {4254#false} is VALID [2018-11-18 22:57:56,493 INFO L273 TraceCheckUtils]: 49: Hoare triple {4254#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {4254#false} is VALID [2018-11-18 22:57:56,494 INFO L256 TraceCheckUtils]: 50: Hoare triple {4254#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {4254#false} is VALID [2018-11-18 22:57:56,494 INFO L273 TraceCheckUtils]: 51: Hoare triple {4254#false} ~cond := #in~cond; {4254#false} is VALID [2018-11-18 22:57:56,494 INFO L273 TraceCheckUtils]: 52: Hoare triple {4254#false} assume !(0 == ~cond); {4254#false} is VALID [2018-11-18 22:57:56,494 INFO L273 TraceCheckUtils]: 53: Hoare triple {4254#false} assume true; {4254#false} is VALID [2018-11-18 22:57:56,495 INFO L268 TraceCheckUtils]: 54: Hoare quadruple {4254#false} {4254#false} #70#return; {4254#false} is VALID [2018-11-18 22:57:56,495 INFO L273 TraceCheckUtils]: 55: Hoare triple {4254#false} havoc #t~mem5;havoc #t~mem4; {4254#false} is VALID [2018-11-18 22:57:56,495 INFO L273 TraceCheckUtils]: 56: Hoare triple {4254#false} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {4254#false} is VALID [2018-11-18 22:57:56,495 INFO L273 TraceCheckUtils]: 57: Hoare triple {4254#false} assume true; {4254#false} is VALID [2018-11-18 22:57:56,495 INFO L273 TraceCheckUtils]: 58: Hoare triple {4254#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {4254#false} is VALID [2018-11-18 22:57:56,495 INFO L256 TraceCheckUtils]: 59: Hoare triple {4254#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {4254#false} is VALID [2018-11-18 22:57:56,495 INFO L273 TraceCheckUtils]: 60: Hoare triple {4254#false} ~cond := #in~cond; {4254#false} is VALID [2018-11-18 22:57:56,495 INFO L273 TraceCheckUtils]: 61: Hoare triple {4254#false} assume 0 == ~cond; {4254#false} is VALID [2018-11-18 22:57:56,496 INFO L273 TraceCheckUtils]: 62: Hoare triple {4254#false} assume !false; {4254#false} is VALID [2018-11-18 22:57:56,498 INFO L134 CoverageAnalysis]: Checked inductivity of 192 backedges. 0 proven. 187 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2018-11-18 22:57:56,516 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-18 22:57:56,517 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 15 [2018-11-18 22:57:56,517 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 63 [2018-11-18 22:57:56,517 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-18 22:57:56,517 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states. [2018-11-18 22:57:56,577 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-18 22:57:56,578 INFO L459 AbstractCegarLoop]: Interpolant automaton has 15 states [2018-11-18 22:57:56,578 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2018-11-18 22:57:56,578 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=105, Invalid=105, Unknown=0, NotChecked=0, Total=210 [2018-11-18 22:57:56,579 INFO L87 Difference]: Start difference. First operand 66 states and 67 transitions. Second operand 15 states. [2018-11-18 22:57:56,979 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:56,979 INFO L93 Difference]: Finished difference Result 93 states and 95 transitions. [2018-11-18 22:57:56,979 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2018-11-18 22:57:56,979 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 63 [2018-11-18 22:57:56,980 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-18 22:57:56,980 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2018-11-18 22:57:56,981 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 81 transitions. [2018-11-18 22:57:56,981 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2018-11-18 22:57:56,983 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 81 transitions. [2018-11-18 22:57:56,983 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 81 transitions. [2018-11-18 22:57:57,120 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-18 22:57:57,121 INFO L225 Difference]: With dead ends: 93 [2018-11-18 22:57:57,122 INFO L226 Difference]: Without dead ends: 70 [2018-11-18 22:57:57,122 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 76 GetRequests, 63 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 20 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=105, Invalid=105, Unknown=0, NotChecked=0, Total=210 [2018-11-18 22:57:57,123 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states. [2018-11-18 22:57:57,970 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 69. [2018-11-18 22:57:57,970 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-18 22:57:57,970 INFO L82 GeneralOperation]: Start isEquivalent. First operand 70 states. Second operand 69 states. [2018-11-18 22:57:57,971 INFO L74 IsIncluded]: Start isIncluded. First operand 70 states. Second operand 69 states. [2018-11-18 22:57:57,971 INFO L87 Difference]: Start difference. First operand 70 states. Second operand 69 states. [2018-11-18 22:57:57,973 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:57,973 INFO L93 Difference]: Finished difference Result 70 states and 71 transitions. [2018-11-18 22:57:57,973 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 71 transitions. [2018-11-18 22:57:57,973 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 22:57:57,974 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 22:57:57,974 INFO L74 IsIncluded]: Start isIncluded. First operand 69 states. Second operand 70 states. [2018-11-18 22:57:57,974 INFO L87 Difference]: Start difference. First operand 69 states. Second operand 70 states. [2018-11-18 22:57:57,976 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 22:57:57,976 INFO L93 Difference]: Finished difference Result 70 states and 71 transitions. [2018-11-18 22:57:57,976 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 71 transitions. [2018-11-18 22:57:57,976 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 22:57:57,976 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 22:57:57,977 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-18 22:57:57,977 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-18 22:57:57,977 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 69 states. [2018-11-18 22:57:57,978 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 69 states to 69 states and 70 transitions. [2018-11-18 22:57:57,978 INFO L78 Accepts]: Start accepts. Automaton has 69 states and 70 transitions. Word has length 63 [2018-11-18 22:57:57,979 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-18 22:57:57,979 INFO L480 AbstractCegarLoop]: Abstraction has 69 states and 70 transitions. [2018-11-18 22:57:57,979 INFO L481 AbstractCegarLoop]: Interpolant automaton has 15 states. [2018-11-18 22:57:57,979 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 70 transitions. [2018-11-18 22:57:57,979 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2018-11-18 22:57:57,980 INFO L367 BasicCegarLoop]: Found error trace [2018-11-18 22:57:57,980 INFO L375 BasicCegarLoop]: trace histogram [13, 12, 12, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-18 22:57:57,980 INFO L423 AbstractCegarLoop]: === Iteration 15 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-18 22:57:57,980 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 22:57:57,980 INFO L82 PathProgramCache]: Analyzing trace with hash 159905756, now seen corresponding path program 3 times [2018-11-18 22:57:57,980 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 22:57:57,981 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 22:57:57,981 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:57,981 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-18 22:57:57,982 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 22:57:57,995 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:58,649 INFO L256 TraceCheckUtils]: 0: Hoare triple {4814#true} call ULTIMATE.init(); {4814#true} is VALID [2018-11-18 22:57:58,650 INFO L273 TraceCheckUtils]: 1: Hoare triple {4814#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {4814#true} is VALID [2018-11-18 22:57:58,650 INFO L273 TraceCheckUtils]: 2: Hoare triple {4814#true} assume true; {4814#true} is VALID [2018-11-18 22:57:58,650 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4814#true} {4814#true} #64#return; {4814#true} is VALID [2018-11-18 22:57:58,650 INFO L256 TraceCheckUtils]: 4: Hoare triple {4814#true} call #t~ret6 := main(); {4814#true} is VALID [2018-11-18 22:57:58,650 INFO L273 TraceCheckUtils]: 5: Hoare triple {4814#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {4814#true} is VALID [2018-11-18 22:57:58,651 INFO L256 TraceCheckUtils]: 6: Hoare triple {4814#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {4814#true} is VALID [2018-11-18 22:57:58,651 INFO L273 TraceCheckUtils]: 7: Hoare triple {4814#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {4816#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:58,652 INFO L273 TraceCheckUtils]: 8: Hoare triple {4816#(= _strcmp_~i~0 0)} assume true; {4816#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:58,652 INFO L273 TraceCheckUtils]: 9: Hoare triple {4816#(= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4816#(= _strcmp_~i~0 0)} is VALID [2018-11-18 22:57:58,652 INFO L273 TraceCheckUtils]: 10: Hoare triple {4816#(= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4817#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:58,653 INFO L273 TraceCheckUtils]: 11: Hoare triple {4817#(<= _strcmp_~i~0 1)} assume true; {4817#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:58,653 INFO L273 TraceCheckUtils]: 12: Hoare triple {4817#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4817#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 22:57:58,653 INFO L273 TraceCheckUtils]: 13: Hoare triple {4817#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4818#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:58,654 INFO L273 TraceCheckUtils]: 14: Hoare triple {4818#(<= _strcmp_~i~0 2)} assume true; {4818#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:58,654 INFO L273 TraceCheckUtils]: 15: Hoare triple {4818#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4818#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 22:57:58,655 INFO L273 TraceCheckUtils]: 16: Hoare triple {4818#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4819#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:58,655 INFO L273 TraceCheckUtils]: 17: Hoare triple {4819#(<= _strcmp_~i~0 3)} assume true; {4819#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:58,656 INFO L273 TraceCheckUtils]: 18: Hoare triple {4819#(<= _strcmp_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4819#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 22:57:58,656 INFO L273 TraceCheckUtils]: 19: Hoare triple {4819#(<= _strcmp_~i~0 3)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4820#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:58,657 INFO L273 TraceCheckUtils]: 20: Hoare triple {4820#(<= _strcmp_~i~0 4)} assume true; {4820#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:58,657 INFO L273 TraceCheckUtils]: 21: Hoare triple {4820#(<= _strcmp_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4820#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 22:57:58,658 INFO L273 TraceCheckUtils]: 22: Hoare triple {4820#(<= _strcmp_~i~0 4)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4821#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:58,659 INFO L273 TraceCheckUtils]: 23: Hoare triple {4821#(<= _strcmp_~i~0 5)} assume true; {4821#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:58,659 INFO L273 TraceCheckUtils]: 24: Hoare triple {4821#(<= _strcmp_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4821#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 22:57:58,660 INFO L273 TraceCheckUtils]: 25: Hoare triple {4821#(<= _strcmp_~i~0 5)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4822#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:58,660 INFO L273 TraceCheckUtils]: 26: Hoare triple {4822#(<= _strcmp_~i~0 6)} assume true; {4822#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:58,661 INFO L273 TraceCheckUtils]: 27: Hoare triple {4822#(<= _strcmp_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4822#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 22:57:58,662 INFO L273 TraceCheckUtils]: 28: Hoare triple {4822#(<= _strcmp_~i~0 6)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4823#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 22:57:58,662 INFO L273 TraceCheckUtils]: 29: Hoare triple {4823#(<= _strcmp_~i~0 7)} assume true; {4823#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 22:57:58,663 INFO L273 TraceCheckUtils]: 30: Hoare triple {4823#(<= _strcmp_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4823#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 22:57:58,663 INFO L273 TraceCheckUtils]: 31: Hoare triple {4823#(<= _strcmp_~i~0 7)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4824#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 22:57:58,664 INFO L273 TraceCheckUtils]: 32: Hoare triple {4824#(<= _strcmp_~i~0 8)} assume true; {4824#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 22:57:58,664 INFO L273 TraceCheckUtils]: 33: Hoare triple {4824#(<= _strcmp_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4824#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 22:57:58,665 INFO L273 TraceCheckUtils]: 34: Hoare triple {4824#(<= _strcmp_~i~0 8)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4825#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 22:57:58,666 INFO L273 TraceCheckUtils]: 35: Hoare triple {4825#(<= _strcmp_~i~0 9)} assume true; {4825#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 22:57:58,666 INFO L273 TraceCheckUtils]: 36: Hoare triple {4825#(<= _strcmp_~i~0 9)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4825#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 22:57:58,667 INFO L273 TraceCheckUtils]: 37: Hoare triple {4825#(<= _strcmp_~i~0 9)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4826#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 22:57:58,667 INFO L273 TraceCheckUtils]: 38: Hoare triple {4826#(<= _strcmp_~i~0 10)} assume true; {4826#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 22:57:58,668 INFO L273 TraceCheckUtils]: 39: Hoare triple {4826#(<= _strcmp_~i~0 10)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4826#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 22:57:58,669 INFO L273 TraceCheckUtils]: 40: Hoare triple {4826#(<= _strcmp_~i~0 10)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4827#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 22:57:58,669 INFO L273 TraceCheckUtils]: 41: Hoare triple {4827#(<= _strcmp_~i~0 11)} assume true; {4827#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 22:57:58,670 INFO L273 TraceCheckUtils]: 42: Hoare triple {4827#(<= _strcmp_~i~0 11)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4827#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 22:57:58,670 INFO L273 TraceCheckUtils]: 43: Hoare triple {4827#(<= _strcmp_~i~0 11)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4828#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 22:57:58,671 INFO L273 TraceCheckUtils]: 44: Hoare triple {4828#(<= _strcmp_~i~0 12)} assume true; {4828#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 22:57:58,672 INFO L273 TraceCheckUtils]: 45: Hoare triple {4828#(<= _strcmp_~i~0 12)} assume !(~i~0 < 100000); {4815#false} is VALID [2018-11-18 22:57:58,672 INFO L273 TraceCheckUtils]: 46: Hoare triple {4815#false} #res := 0; {4815#false} is VALID [2018-11-18 22:57:58,672 INFO L273 TraceCheckUtils]: 47: Hoare triple {4815#false} assume true; {4815#false} is VALID [2018-11-18 22:57:58,672 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {4815#false} {4814#true} #68#return; {4815#false} is VALID [2018-11-18 22:57:58,673 INFO L273 TraceCheckUtils]: 49: Hoare triple {4815#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {4815#false} is VALID [2018-11-18 22:57:58,673 INFO L273 TraceCheckUtils]: 50: Hoare triple {4815#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {4815#false} is VALID [2018-11-18 22:57:58,673 INFO L273 TraceCheckUtils]: 51: Hoare triple {4815#false} assume true; {4815#false} is VALID [2018-11-18 22:57:58,673 INFO L273 TraceCheckUtils]: 52: Hoare triple {4815#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {4815#false} is VALID [2018-11-18 22:57:58,673 INFO L256 TraceCheckUtils]: 53: Hoare triple {4815#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {4814#true} is VALID [2018-11-18 22:57:58,674 INFO L273 TraceCheckUtils]: 54: Hoare triple {4814#true} ~cond := #in~cond; {4814#true} is VALID [2018-11-18 22:57:58,674 INFO L273 TraceCheckUtils]: 55: Hoare triple {4814#true} assume !(0 == ~cond); {4814#true} is VALID [2018-11-18 22:57:58,674 INFO L273 TraceCheckUtils]: 56: Hoare triple {4814#true} assume true; {4814#true} is VALID [2018-11-18 22:57:58,674 INFO L268 TraceCheckUtils]: 57: Hoare quadruple {4814#true} {4815#false} #70#return; {4815#false} is VALID [2018-11-18 22:57:58,674 INFO L273 TraceCheckUtils]: 58: Hoare triple {4815#false} havoc #t~mem5;havoc #t~mem4; {4815#false} is VALID [2018-11-18 22:57:58,674 INFO L273 TraceCheckUtils]: 59: Hoare triple {4815#false} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {4815#false} is VALID [2018-11-18 22:57:58,675 INFO L273 TraceCheckUtils]: 60: Hoare triple {4815#false} assume true; {4815#false} is VALID [2018-11-18 22:57:58,675 INFO L273 TraceCheckUtils]: 61: Hoare triple {4815#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {4815#false} is VALID [2018-11-18 22:57:58,675 INFO L256 TraceCheckUtils]: 62: Hoare triple {4815#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {4815#false} is VALID [2018-11-18 22:57:58,675 INFO L273 TraceCheckUtils]: 63: Hoare triple {4815#false} ~cond := #in~cond; {4815#false} is VALID [2018-11-18 22:57:58,675 INFO L273 TraceCheckUtils]: 64: Hoare triple {4815#false} assume 0 == ~cond; {4815#false} is VALID [2018-11-18 22:57:58,675 INFO L273 TraceCheckUtils]: 65: Hoare triple {4815#false} assume !false; {4815#false} is VALID [2018-11-18 22:57:58,678 INFO L134 CoverageAnalysis]: Checked inductivity of 227 backedges. 2 proven. 222 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2018-11-18 22:57:58,678 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-18 22:57:58,678 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-18 22:57:58,688 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-18 22:57:58,721 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 7 check-sat command(s) [2018-11-18 22:57:58,721 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-18 22:57:58,754 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 22:57:58,756 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 22:57:58,801 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 5 treesize of output 1 [2018-11-18 22:57:58,802 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2018-11-18 22:57:58,806 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-18 22:57:58,806 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:15, output treesize:11 [2018-11-18 22:58:01,150 WARN L854 $PredicateComparison]: unable to prove that (exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int) (|v_main_~#b~0.base_BEFORE_CALL_2| Int)) (and (not (= |v_main_~#b~0.base_BEFORE_CALL_2| |v_main_~#a~0.base_BEFORE_CALL_2|)) (= (select (select |c_#memory_int| |v_main_~#b~0.base_BEFORE_CALL_2|) 4) (select (select |c_#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 4)))) is different from true [2018-11-18 22:58:03,189 WARN L180 SmtUtils]: Spent 2.01 s on a formula simplification that was a NOOP. DAG size: 17 [2018-11-18 22:58:05,261 WARN L180 SmtUtils]: Spent 2.01 s on a formula simplification that was a NOOP. DAG size: 18 [2018-11-18 22:58:05,462 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 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 26 treesize of output 22 [2018-11-18 22:58:05,473 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 5 [2018-11-18 22:58:05,476 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-18 22:58:05,575 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 3 [2018-11-18 22:58:05,576 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-18 22:58:05,578 INFO L267 ElimStorePlain]: Start of recursive call 2: 2 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-18 22:58:05,588 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-18 22:58:05,589 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 3 variables, input treesize:30, output treesize:3 [2018-11-18 22:58:05,590 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-18 22:58:07,656 INFO L256 TraceCheckUtils]: 0: Hoare triple {4814#true} call ULTIMATE.init(); {4814#true} is VALID [2018-11-18 22:58:07,656 INFO L273 TraceCheckUtils]: 1: Hoare triple {4814#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {4814#true} is VALID [2018-11-18 22:58:07,656 INFO L273 TraceCheckUtils]: 2: Hoare triple {4814#true} assume true; {4814#true} is VALID [2018-11-18 22:58:07,656 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {4814#true} {4814#true} #64#return; {4814#true} is VALID [2018-11-18 22:58:07,657 INFO L256 TraceCheckUtils]: 4: Hoare triple {4814#true} call #t~ret6 := main(); {4814#true} is VALID [2018-11-18 22:58:07,657 INFO L273 TraceCheckUtils]: 5: Hoare triple {4814#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {4847#(and (= |main_~#b~0.offset| 0) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 22:58:07,657 INFO L256 TraceCheckUtils]: 6: Hoare triple {4847#(and (= |main_~#b~0.offset| 0) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= |main_~#a~0.offset| 0))} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {4814#true} is VALID [2018-11-18 22:58:07,658 INFO L273 TraceCheckUtils]: 7: Hoare triple {4814#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {4854#(and (= _strcmp_~i~0 0) (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} is VALID [2018-11-18 22:58:07,658 INFO L273 TraceCheckUtils]: 8: Hoare triple {4854#(and (= _strcmp_~i~0 0) (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} assume true; {4854#(and (= _strcmp_~i~0 0) (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} is VALID [2018-11-18 22:58:07,659 INFO L273 TraceCheckUtils]: 9: Hoare triple {4854#(and (= _strcmp_~i~0 0) (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4854#(and (= _strcmp_~i~0 0) (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} is VALID [2018-11-18 22:58:07,659 INFO L273 TraceCheckUtils]: 10: Hoare triple {4854#(and (= _strcmp_~i~0 0) (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4864#(and (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= _strcmp_~i~0 1) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} is VALID [2018-11-18 22:58:07,660 INFO L273 TraceCheckUtils]: 11: Hoare triple {4864#(and (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= _strcmp_~i~0 1) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} assume true; {4864#(and (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= _strcmp_~i~0 1) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} is VALID [2018-11-18 22:58:07,661 INFO L273 TraceCheckUtils]: 12: Hoare triple {4864#(and (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= _strcmp_~i~0 1) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4871#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) |_strcmp_#t~mem1|) (= |_strcmp_#t~mem0| (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 22:58:07,662 INFO L273 TraceCheckUtils]: 13: Hoare triple {4871#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) |_strcmp_#t~mem1|) (= |_strcmp_#t~mem0| (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,662 INFO L273 TraceCheckUtils]: 14: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume true; {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,663 INFO L273 TraceCheckUtils]: 15: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,663 INFO L273 TraceCheckUtils]: 16: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,664 INFO L273 TraceCheckUtils]: 17: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume true; {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,664 INFO L273 TraceCheckUtils]: 18: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,665 INFO L273 TraceCheckUtils]: 19: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,665 INFO L273 TraceCheckUtils]: 20: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume true; {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,666 INFO L273 TraceCheckUtils]: 21: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,667 INFO L273 TraceCheckUtils]: 22: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,667 INFO L273 TraceCheckUtils]: 23: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume true; {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,668 INFO L273 TraceCheckUtils]: 24: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,668 INFO L273 TraceCheckUtils]: 25: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,669 INFO L273 TraceCheckUtils]: 26: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume true; {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,669 INFO L273 TraceCheckUtils]: 27: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,670 INFO L273 TraceCheckUtils]: 28: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,670 INFO L273 TraceCheckUtils]: 29: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume true; {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,671 INFO L273 TraceCheckUtils]: 30: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,671 INFO L273 TraceCheckUtils]: 31: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,672 INFO L273 TraceCheckUtils]: 32: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume true; {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,672 INFO L273 TraceCheckUtils]: 33: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,673 INFO L273 TraceCheckUtils]: 34: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,674 INFO L273 TraceCheckUtils]: 35: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume true; {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,674 INFO L273 TraceCheckUtils]: 36: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,675 INFO L273 TraceCheckUtils]: 37: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,675 INFO L273 TraceCheckUtils]: 38: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume true; {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,676 INFO L273 TraceCheckUtils]: 39: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,676 INFO L273 TraceCheckUtils]: 40: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,677 INFO L273 TraceCheckUtils]: 41: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume true; {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,677 INFO L273 TraceCheckUtils]: 42: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,678 INFO L273 TraceCheckUtils]: 43: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,678 INFO L273 TraceCheckUtils]: 44: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume true; {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,679 INFO L273 TraceCheckUtils]: 45: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume !(~i~0 < 100000); {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,680 INFO L273 TraceCheckUtils]: 46: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} #res := 0; {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,680 INFO L273 TraceCheckUtils]: 47: Hoare triple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} assume true; {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} is VALID [2018-11-18 22:58:07,682 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {4875#(= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4)))} {4847#(and (= |main_~#b~0.offset| 0) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= |main_~#a~0.offset| 0))} #68#return; {4981#(and (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 22:58:07,684 INFO L273 TraceCheckUtils]: 49: Hoare triple {4981#(and (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= |main_~#a~0.offset| 0))} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {4981#(and (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 22:58:07,685 INFO L273 TraceCheckUtils]: 50: Hoare triple {4981#(and (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= |main_~#a~0.offset| 0))} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {4988#(and (= main_~x~0 0) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 22:58:07,685 INFO L273 TraceCheckUtils]: 51: Hoare triple {4988#(and (= main_~x~0 0) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= |main_~#a~0.offset| 0))} assume true; {4988#(and (= main_~x~0 0) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 22:58:07,686 INFO L273 TraceCheckUtils]: 52: Hoare triple {4988#(and (= main_~x~0 0) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= |main_~#a~0.offset| 0))} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {4988#(and (= main_~x~0 0) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 22:58:07,689 INFO L256 TraceCheckUtils]: 53: Hoare triple {4988#(and (= main_~x~0 0) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {4998#(exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int) (|v_main_~#b~0.base_BEFORE_CALL_2| Int)) (and (not (= |v_main_~#b~0.base_BEFORE_CALL_2| |v_main_~#a~0.base_BEFORE_CALL_2|)) (= (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_2|) 4) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 4))))} is VALID [2018-11-18 22:58:07,689 INFO L273 TraceCheckUtils]: 54: Hoare triple {4998#(exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int) (|v_main_~#b~0.base_BEFORE_CALL_2| Int)) (and (not (= |v_main_~#b~0.base_BEFORE_CALL_2| |v_main_~#a~0.base_BEFORE_CALL_2|)) (= (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_2|) 4) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 4))))} ~cond := #in~cond; {5002#(and (exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int) (|v_main_~#b~0.base_BEFORE_CALL_2| Int)) (and (not (= |v_main_~#b~0.base_BEFORE_CALL_2| |v_main_~#a~0.base_BEFORE_CALL_2|)) (= (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_2|) 4) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 4)))) (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond))} is VALID [2018-11-18 22:58:07,690 INFO L273 TraceCheckUtils]: 55: Hoare triple {5002#(and (exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int) (|v_main_~#b~0.base_BEFORE_CALL_2| Int)) (and (not (= |v_main_~#b~0.base_BEFORE_CALL_2| |v_main_~#a~0.base_BEFORE_CALL_2|)) (= (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_2|) 4) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 4)))) (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond))} assume !(0 == ~cond); {5006#(and (exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int) (|v_main_~#b~0.base_BEFORE_CALL_2| Int)) (and (not (= |v_main_~#b~0.base_BEFORE_CALL_2| |v_main_~#a~0.base_BEFORE_CALL_2|)) (= (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_2|) 4) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 4)))) (not (= |__VERIFIER_assert_#in~cond| 0)))} is VALID [2018-11-18 22:58:07,690 INFO L273 TraceCheckUtils]: 56: Hoare triple {5006#(and (exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int) (|v_main_~#b~0.base_BEFORE_CALL_2| Int)) (and (not (= |v_main_~#b~0.base_BEFORE_CALL_2| |v_main_~#a~0.base_BEFORE_CALL_2|)) (= (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_2|) 4) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 4)))) (not (= |__VERIFIER_assert_#in~cond| 0)))} assume true; {5006#(and (exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int) (|v_main_~#b~0.base_BEFORE_CALL_2| Int)) (and (not (= |v_main_~#b~0.base_BEFORE_CALL_2| |v_main_~#a~0.base_BEFORE_CALL_2|)) (= (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_2|) 4) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 4)))) (not (= |__VERIFIER_assert_#in~cond| 0)))} is VALID [2018-11-18 22:58:07,691 INFO L268 TraceCheckUtils]: 57: Hoare quadruple {5006#(and (exists ((|v_main_~#a~0.base_BEFORE_CALL_2| Int) (|v_main_~#b~0.base_BEFORE_CALL_2| Int)) (and (not (= |v_main_~#b~0.base_BEFORE_CALL_2| |v_main_~#a~0.base_BEFORE_CALL_2|)) (= (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_2|) 4) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_2|) 4)))) (not (= |__VERIFIER_assert_#in~cond| 0)))} {4988#(and (= main_~x~0 0) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= |main_~#a~0.offset| 0))} #70#return; {4988#(and (= main_~x~0 0) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 22:58:07,692 INFO L273 TraceCheckUtils]: 58: Hoare triple {4988#(and (= main_~x~0 0) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= |main_~#a~0.offset| 0))} havoc #t~mem5;havoc #t~mem4; {4988#(and (= main_~x~0 0) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 22:58:07,692 INFO L273 TraceCheckUtils]: 59: Hoare triple {4988#(and (= main_~x~0 0) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= |main_~#a~0.offset| 0))} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {5019#(and (= main_~x~0 1) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 22:58:07,693 INFO L273 TraceCheckUtils]: 60: Hoare triple {5019#(and (= main_~x~0 1) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= |main_~#a~0.offset| 0))} assume true; {5019#(and (= main_~x~0 1) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 22:58:07,694 INFO L273 TraceCheckUtils]: 61: Hoare triple {5019#(and (= main_~x~0 1) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= |main_~#a~0.offset| 0))} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {5026#(= |main_#t~mem5| |main_#t~mem4|)} is VALID [2018-11-18 22:58:07,695 INFO L256 TraceCheckUtils]: 62: Hoare triple {5026#(= |main_#t~mem5| |main_#t~mem4|)} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {5030#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-18 22:58:07,696 INFO L273 TraceCheckUtils]: 63: Hoare triple {5030#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {5034#(= 1 __VERIFIER_assert_~cond)} is VALID [2018-11-18 22:58:07,697 INFO L273 TraceCheckUtils]: 64: Hoare triple {5034#(= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4815#false} is VALID [2018-11-18 22:58:07,697 INFO L273 TraceCheckUtils]: 65: Hoare triple {4815#false} assume !false; {4815#false} is VALID [2018-11-18 22:58:07,719 INFO L134 CoverageAnalysis]: Checked inductivity of 227 backedges. 0 proven. 71 refuted. 0 times theorem prover too weak. 155 trivial. 1 not checked. [2018-11-18 22:58:07,737 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-18 22:58:07,738 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 16] total 29 [2018-11-18 22:58:07,738 INFO L78 Accepts]: Start accepts. Automaton has 29 states. Word has length 66 [2018-11-18 22:58:07,739 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-18 22:58:07,739 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 29 states. [2018-11-18 22:58:07,946 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 96 edges. 96 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-18 22:58:07,946 INFO L459 AbstractCegarLoop]: Interpolant automaton has 29 states [2018-11-18 22:58:07,947 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 29 interpolants. [2018-11-18 22:58:07,947 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=163, Invalid=595, Unknown=2, NotChecked=52, Total=812 [2018-11-18 22:58:07,947 INFO L87 Difference]: Start difference. First operand 69 states and 70 transitions. Second operand 29 states. [2018-11-18 22:59:58,048 WARN L180 SmtUtils]: Spent 2.01 s on a formula simplification that was a NOOP. DAG size: 20 [2018-11-18 23:00:04,585 WARN L180 SmtUtils]: Spent 4.02 s on a formula simplification. DAG size of input: 20 DAG size of output: 17 [2018-11-18 23:00:08,701 WARN L180 SmtUtils]: Spent 4.03 s on a formula simplification. DAG size of input: 23 DAG size of output: 19 [2018-11-18 23:00:23,240 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 23:00:23,240 INFO L93 Difference]: Finished difference Result 107 states and 110 transitions. [2018-11-18 23:00:23,240 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2018-11-18 23:00:23,240 INFO L78 Accepts]: Start accepts. Automaton has 29 states. Word has length 66 [2018-11-18 23:00:23,241 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-18 23:00:23,241 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 29 states. [2018-11-18 23:00:23,243 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 103 transitions. [2018-11-18 23:00:23,244 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 29 states. [2018-11-18 23:00:23,245 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 103 transitions. [2018-11-18 23:00:23,246 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 28 states and 103 transitions. [2018-11-18 23:00:23,396 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 103 edges. 103 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-18 23:00:23,398 INFO L225 Difference]: With dead ends: 107 [2018-11-18 23:00:23,399 INFO L226 Difference]: Without dead ends: 84 [2018-11-18 23:00:23,400 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 97 GetRequests, 52 SyntacticMatches, 1 SemanticMatches, 44 ConstructedPredicates, 1 IntricatePredicates, 0 DeprecatedPredicates, 439 ImplicationChecksByTransitivity, 21.3s TimeCoverageRelationStatistics Valid=361, Invalid=1620, Unknown=3, NotChecked=86, Total=2070 [2018-11-18 23:00:23,401 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 84 states. [2018-11-18 23:00:23,539 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 84 to 81. [2018-11-18 23:00:23,540 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-18 23:00:23,540 INFO L82 GeneralOperation]: Start isEquivalent. First operand 84 states. Second operand 81 states. [2018-11-18 23:00:23,540 INFO L74 IsIncluded]: Start isIncluded. First operand 84 states. Second operand 81 states. [2018-11-18 23:00:23,540 INFO L87 Difference]: Start difference. First operand 84 states. Second operand 81 states. [2018-11-18 23:00:23,542 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 23:00:23,543 INFO L93 Difference]: Finished difference Result 84 states and 85 transitions. [2018-11-18 23:00:23,543 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 85 transitions. [2018-11-18 23:00:23,543 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 23:00:23,543 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 23:00:23,544 INFO L74 IsIncluded]: Start isIncluded. First operand 81 states. Second operand 84 states. [2018-11-18 23:00:23,544 INFO L87 Difference]: Start difference. First operand 81 states. Second operand 84 states. [2018-11-18 23:00:23,545 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 23:00:23,545 INFO L93 Difference]: Finished difference Result 84 states and 85 transitions. [2018-11-18 23:00:23,545 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 85 transitions. [2018-11-18 23:00:23,546 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 23:00:23,546 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 23:00:23,546 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-18 23:00:23,546 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-18 23:00:23,546 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 81 states. [2018-11-18 23:00:23,547 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 81 states to 81 states and 82 transitions. [2018-11-18 23:00:23,548 INFO L78 Accepts]: Start accepts. Automaton has 81 states and 82 transitions. Word has length 66 [2018-11-18 23:00:23,548 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-18 23:00:23,548 INFO L480 AbstractCegarLoop]: Abstraction has 81 states and 82 transitions. [2018-11-18 23:00:23,548 INFO L481 AbstractCegarLoop]: Interpolant automaton has 29 states. [2018-11-18 23:00:23,548 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 82 transitions. [2018-11-18 23:00:23,549 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 79 [2018-11-18 23:00:23,549 INFO L367 BasicCegarLoop]: Found error trace [2018-11-18 23:00:23,549 INFO L375 BasicCegarLoop]: trace histogram [14, 13, 13, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-18 23:00:23,550 INFO L423 AbstractCegarLoop]: === Iteration 16 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-18 23:00:23,550 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 23:00:23,550 INFO L82 PathProgramCache]: Analyzing trace with hash -476032762, now seen corresponding path program 4 times [2018-11-18 23:00:23,550 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 23:00:23,550 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 23:00:23,551 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 23:00:23,551 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-18 23:00:23,551 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 23:00:23,568 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 23:00:23,885 INFO L256 TraceCheckUtils]: 0: Hoare triple {5494#true} call ULTIMATE.init(); {5494#true} is VALID [2018-11-18 23:00:23,885 INFO L273 TraceCheckUtils]: 1: Hoare triple {5494#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {5494#true} is VALID [2018-11-18 23:00:23,885 INFO L273 TraceCheckUtils]: 2: Hoare triple {5494#true} assume true; {5494#true} is VALID [2018-11-18 23:00:23,886 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5494#true} {5494#true} #64#return; {5494#true} is VALID [2018-11-18 23:00:23,886 INFO L256 TraceCheckUtils]: 4: Hoare triple {5494#true} call #t~ret6 := main(); {5494#true} is VALID [2018-11-18 23:00:23,886 INFO L273 TraceCheckUtils]: 5: Hoare triple {5494#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {5494#true} is VALID [2018-11-18 23:00:23,886 INFO L256 TraceCheckUtils]: 6: Hoare triple {5494#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {5494#true} is VALID [2018-11-18 23:00:23,887 INFO L273 TraceCheckUtils]: 7: Hoare triple {5494#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {5496#(= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:23,887 INFO L273 TraceCheckUtils]: 8: Hoare triple {5496#(= _strcmp_~i~0 0)} assume true; {5496#(= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:23,888 INFO L273 TraceCheckUtils]: 9: Hoare triple {5496#(= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {5496#(= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:23,888 INFO L273 TraceCheckUtils]: 10: Hoare triple {5496#(= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {5497#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:23,889 INFO L273 TraceCheckUtils]: 11: Hoare triple {5497#(<= _strcmp_~i~0 1)} assume true; {5497#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:23,889 INFO L273 TraceCheckUtils]: 12: Hoare triple {5497#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {5497#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:23,890 INFO L273 TraceCheckUtils]: 13: Hoare triple {5497#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {5498#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:23,890 INFO L273 TraceCheckUtils]: 14: Hoare triple {5498#(<= _strcmp_~i~0 2)} assume true; {5498#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:23,890 INFO L273 TraceCheckUtils]: 15: Hoare triple {5498#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {5498#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:23,891 INFO L273 TraceCheckUtils]: 16: Hoare triple {5498#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {5499#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:23,892 INFO L273 TraceCheckUtils]: 17: Hoare triple {5499#(<= _strcmp_~i~0 3)} assume true; {5499#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:23,892 INFO L273 TraceCheckUtils]: 18: Hoare triple {5499#(<= _strcmp_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {5499#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:23,893 INFO L273 TraceCheckUtils]: 19: Hoare triple {5499#(<= _strcmp_~i~0 3)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {5500#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:23,894 INFO L273 TraceCheckUtils]: 20: Hoare triple {5500#(<= _strcmp_~i~0 4)} assume true; {5500#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:23,894 INFO L273 TraceCheckUtils]: 21: Hoare triple {5500#(<= _strcmp_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {5500#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:23,895 INFO L273 TraceCheckUtils]: 22: Hoare triple {5500#(<= _strcmp_~i~0 4)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {5501#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:23,896 INFO L273 TraceCheckUtils]: 23: Hoare triple {5501#(<= _strcmp_~i~0 5)} assume true; {5501#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:23,896 INFO L273 TraceCheckUtils]: 24: Hoare triple {5501#(<= _strcmp_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {5501#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:23,897 INFO L273 TraceCheckUtils]: 25: Hoare triple {5501#(<= _strcmp_~i~0 5)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {5502#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:23,898 INFO L273 TraceCheckUtils]: 26: Hoare triple {5502#(<= _strcmp_~i~0 6)} assume true; {5502#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:23,898 INFO L273 TraceCheckUtils]: 27: Hoare triple {5502#(<= _strcmp_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {5502#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:23,899 INFO L273 TraceCheckUtils]: 28: Hoare triple {5502#(<= _strcmp_~i~0 6)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {5503#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:23,899 INFO L273 TraceCheckUtils]: 29: Hoare triple {5503#(<= _strcmp_~i~0 7)} assume true; {5503#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:23,900 INFO L273 TraceCheckUtils]: 30: Hoare triple {5503#(<= _strcmp_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {5503#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:23,901 INFO L273 TraceCheckUtils]: 31: Hoare triple {5503#(<= _strcmp_~i~0 7)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {5504#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:23,901 INFO L273 TraceCheckUtils]: 32: Hoare triple {5504#(<= _strcmp_~i~0 8)} assume true; {5504#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:23,902 INFO L273 TraceCheckUtils]: 33: Hoare triple {5504#(<= _strcmp_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {5504#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:23,903 INFO L273 TraceCheckUtils]: 34: Hoare triple {5504#(<= _strcmp_~i~0 8)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {5505#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:23,903 INFO L273 TraceCheckUtils]: 35: Hoare triple {5505#(<= _strcmp_~i~0 9)} assume true; {5505#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:23,904 INFO L273 TraceCheckUtils]: 36: Hoare triple {5505#(<= _strcmp_~i~0 9)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {5505#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:23,905 INFO L273 TraceCheckUtils]: 37: Hoare triple {5505#(<= _strcmp_~i~0 9)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {5506#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:23,905 INFO L273 TraceCheckUtils]: 38: Hoare triple {5506#(<= _strcmp_~i~0 10)} assume true; {5506#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:23,906 INFO L273 TraceCheckUtils]: 39: Hoare triple {5506#(<= _strcmp_~i~0 10)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {5506#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:23,906 INFO L273 TraceCheckUtils]: 40: Hoare triple {5506#(<= _strcmp_~i~0 10)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {5507#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:23,907 INFO L273 TraceCheckUtils]: 41: Hoare triple {5507#(<= _strcmp_~i~0 11)} assume true; {5507#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:23,908 INFO L273 TraceCheckUtils]: 42: Hoare triple {5507#(<= _strcmp_~i~0 11)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {5507#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:23,908 INFO L273 TraceCheckUtils]: 43: Hoare triple {5507#(<= _strcmp_~i~0 11)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {5508#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:23,909 INFO L273 TraceCheckUtils]: 44: Hoare triple {5508#(<= _strcmp_~i~0 12)} assume true; {5508#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:23,909 INFO L273 TraceCheckUtils]: 45: Hoare triple {5508#(<= _strcmp_~i~0 12)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {5508#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:23,910 INFO L273 TraceCheckUtils]: 46: Hoare triple {5508#(<= _strcmp_~i~0 12)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {5509#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:23,911 INFO L273 TraceCheckUtils]: 47: Hoare triple {5509#(<= _strcmp_~i~0 13)} assume true; {5509#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:23,912 INFO L273 TraceCheckUtils]: 48: Hoare triple {5509#(<= _strcmp_~i~0 13)} assume !(~i~0 < 100000); {5495#false} is VALID [2018-11-18 23:00:23,912 INFO L273 TraceCheckUtils]: 49: Hoare triple {5495#false} #res := 0; {5495#false} is VALID [2018-11-18 23:00:23,912 INFO L273 TraceCheckUtils]: 50: Hoare triple {5495#false} assume true; {5495#false} is VALID [2018-11-18 23:00:23,912 INFO L268 TraceCheckUtils]: 51: Hoare quadruple {5495#false} {5494#true} #68#return; {5495#false} is VALID [2018-11-18 23:00:23,912 INFO L273 TraceCheckUtils]: 52: Hoare triple {5495#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {5495#false} is VALID [2018-11-18 23:00:23,913 INFO L273 TraceCheckUtils]: 53: Hoare triple {5495#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {5495#false} is VALID [2018-11-18 23:00:23,913 INFO L273 TraceCheckUtils]: 54: Hoare triple {5495#false} assume true; {5495#false} is VALID [2018-11-18 23:00:23,913 INFO L273 TraceCheckUtils]: 55: Hoare triple {5495#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {5495#false} is VALID [2018-11-18 23:00:23,913 INFO L256 TraceCheckUtils]: 56: Hoare triple {5495#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {5494#true} is VALID [2018-11-18 23:00:23,913 INFO L273 TraceCheckUtils]: 57: Hoare triple {5494#true} ~cond := #in~cond; {5494#true} is VALID [2018-11-18 23:00:23,914 INFO L273 TraceCheckUtils]: 58: Hoare triple {5494#true} assume !(0 == ~cond); {5494#true} is VALID [2018-11-18 23:00:23,914 INFO L273 TraceCheckUtils]: 59: Hoare triple {5494#true} assume true; {5494#true} is VALID [2018-11-18 23:00:23,914 INFO L268 TraceCheckUtils]: 60: Hoare quadruple {5494#true} {5495#false} #70#return; {5495#false} is VALID [2018-11-18 23:00:23,914 INFO L273 TraceCheckUtils]: 61: Hoare triple {5495#false} havoc #t~mem5;havoc #t~mem4; {5495#false} is VALID [2018-11-18 23:00:23,914 INFO L273 TraceCheckUtils]: 62: Hoare triple {5495#false} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {5495#false} is VALID [2018-11-18 23:00:23,915 INFO L273 TraceCheckUtils]: 63: Hoare triple {5495#false} assume true; {5495#false} is VALID [2018-11-18 23:00:23,915 INFO L273 TraceCheckUtils]: 64: Hoare triple {5495#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {5495#false} is VALID [2018-11-18 23:00:23,915 INFO L256 TraceCheckUtils]: 65: Hoare triple {5495#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {5494#true} is VALID [2018-11-18 23:00:23,915 INFO L273 TraceCheckUtils]: 66: Hoare triple {5494#true} ~cond := #in~cond; {5494#true} is VALID [2018-11-18 23:00:23,916 INFO L273 TraceCheckUtils]: 67: Hoare triple {5494#true} assume !(0 == ~cond); {5494#true} is VALID [2018-11-18 23:00:23,916 INFO L273 TraceCheckUtils]: 68: Hoare triple {5494#true} assume true; {5494#true} is VALID [2018-11-18 23:00:23,916 INFO L268 TraceCheckUtils]: 69: Hoare quadruple {5494#true} {5495#false} #70#return; {5495#false} is VALID [2018-11-18 23:00:23,916 INFO L273 TraceCheckUtils]: 70: Hoare triple {5495#false} havoc #t~mem5;havoc #t~mem4; {5495#false} is VALID [2018-11-18 23:00:23,916 INFO L273 TraceCheckUtils]: 71: Hoare triple {5495#false} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {5495#false} is VALID [2018-11-18 23:00:23,916 INFO L273 TraceCheckUtils]: 72: Hoare triple {5495#false} assume true; {5495#false} is VALID [2018-11-18 23:00:23,916 INFO L273 TraceCheckUtils]: 73: Hoare triple {5495#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {5495#false} is VALID [2018-11-18 23:00:23,917 INFO L256 TraceCheckUtils]: 74: Hoare triple {5495#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {5495#false} is VALID [2018-11-18 23:00:23,917 INFO L273 TraceCheckUtils]: 75: Hoare triple {5495#false} ~cond := #in~cond; {5495#false} is VALID [2018-11-18 23:00:23,917 INFO L273 TraceCheckUtils]: 76: Hoare triple {5495#false} assume 0 == ~cond; {5495#false} is VALID [2018-11-18 23:00:23,917 INFO L273 TraceCheckUtils]: 77: Hoare triple {5495#false} assume !false; {5495#false} is VALID [2018-11-18 23:00:23,920 INFO L134 CoverageAnalysis]: Checked inductivity of 279 backedges. 4 proven. 260 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2018-11-18 23:00:23,921 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-18 23:00:23,921 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 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-18 23:00:23,932 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-18 23:00:23,980 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-18 23:00:23,980 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-18 23:00:24,013 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 23:00:24,014 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 23:00:24,510 INFO L256 TraceCheckUtils]: 0: Hoare triple {5494#true} call ULTIMATE.init(); {5494#true} is VALID [2018-11-18 23:00:24,511 INFO L273 TraceCheckUtils]: 1: Hoare triple {5494#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {5494#true} is VALID [2018-11-18 23:00:24,511 INFO L273 TraceCheckUtils]: 2: Hoare triple {5494#true} assume true; {5494#true} is VALID [2018-11-18 23:00:24,511 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {5494#true} {5494#true} #64#return; {5494#true} is VALID [2018-11-18 23:00:24,512 INFO L256 TraceCheckUtils]: 4: Hoare triple {5494#true} call #t~ret6 := main(); {5494#true} is VALID [2018-11-18 23:00:24,512 INFO L273 TraceCheckUtils]: 5: Hoare triple {5494#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {5494#true} is VALID [2018-11-18 23:00:24,512 INFO L256 TraceCheckUtils]: 6: Hoare triple {5494#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {5494#true} is VALID [2018-11-18 23:00:24,512 INFO L273 TraceCheckUtils]: 7: Hoare triple {5494#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {5534#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:24,513 INFO L273 TraceCheckUtils]: 8: Hoare triple {5534#(<= _strcmp_~i~0 0)} assume true; {5534#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:24,513 INFO L273 TraceCheckUtils]: 9: Hoare triple {5534#(<= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {5534#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:24,514 INFO L273 TraceCheckUtils]: 10: Hoare triple {5534#(<= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {5497#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:24,514 INFO L273 TraceCheckUtils]: 11: Hoare triple {5497#(<= _strcmp_~i~0 1)} assume true; {5497#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:24,514 INFO L273 TraceCheckUtils]: 12: Hoare triple {5497#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {5497#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:24,515 INFO L273 TraceCheckUtils]: 13: Hoare triple {5497#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {5498#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:24,515 INFO L273 TraceCheckUtils]: 14: Hoare triple {5498#(<= _strcmp_~i~0 2)} assume true; {5498#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:24,516 INFO L273 TraceCheckUtils]: 15: Hoare triple {5498#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {5498#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:24,516 INFO L273 TraceCheckUtils]: 16: Hoare triple {5498#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {5499#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:24,517 INFO L273 TraceCheckUtils]: 17: Hoare triple {5499#(<= _strcmp_~i~0 3)} assume true; {5499#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:24,518 INFO L273 TraceCheckUtils]: 18: Hoare triple {5499#(<= _strcmp_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {5499#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:24,518 INFO L273 TraceCheckUtils]: 19: Hoare triple {5499#(<= _strcmp_~i~0 3)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {5500#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:24,519 INFO L273 TraceCheckUtils]: 20: Hoare triple {5500#(<= _strcmp_~i~0 4)} assume true; {5500#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:24,520 INFO L273 TraceCheckUtils]: 21: Hoare triple {5500#(<= _strcmp_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {5500#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:24,520 INFO L273 TraceCheckUtils]: 22: Hoare triple {5500#(<= _strcmp_~i~0 4)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {5501#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:24,521 INFO L273 TraceCheckUtils]: 23: Hoare triple {5501#(<= _strcmp_~i~0 5)} assume true; {5501#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:24,521 INFO L273 TraceCheckUtils]: 24: Hoare triple {5501#(<= _strcmp_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {5501#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:24,522 INFO L273 TraceCheckUtils]: 25: Hoare triple {5501#(<= _strcmp_~i~0 5)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {5502#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:24,523 INFO L273 TraceCheckUtils]: 26: Hoare triple {5502#(<= _strcmp_~i~0 6)} assume true; {5502#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:24,523 INFO L273 TraceCheckUtils]: 27: Hoare triple {5502#(<= _strcmp_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {5502#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:24,524 INFO L273 TraceCheckUtils]: 28: Hoare triple {5502#(<= _strcmp_~i~0 6)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {5503#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:24,525 INFO L273 TraceCheckUtils]: 29: Hoare triple {5503#(<= _strcmp_~i~0 7)} assume true; {5503#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:24,525 INFO L273 TraceCheckUtils]: 30: Hoare triple {5503#(<= _strcmp_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {5503#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:24,526 INFO L273 TraceCheckUtils]: 31: Hoare triple {5503#(<= _strcmp_~i~0 7)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {5504#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:24,527 INFO L273 TraceCheckUtils]: 32: Hoare triple {5504#(<= _strcmp_~i~0 8)} assume true; {5504#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:24,527 INFO L273 TraceCheckUtils]: 33: Hoare triple {5504#(<= _strcmp_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {5504#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:24,528 INFO L273 TraceCheckUtils]: 34: Hoare triple {5504#(<= _strcmp_~i~0 8)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {5505#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:24,528 INFO L273 TraceCheckUtils]: 35: Hoare triple {5505#(<= _strcmp_~i~0 9)} assume true; {5505#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:24,529 INFO L273 TraceCheckUtils]: 36: Hoare triple {5505#(<= _strcmp_~i~0 9)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {5505#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:24,530 INFO L273 TraceCheckUtils]: 37: Hoare triple {5505#(<= _strcmp_~i~0 9)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {5506#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:24,530 INFO L273 TraceCheckUtils]: 38: Hoare triple {5506#(<= _strcmp_~i~0 10)} assume true; {5506#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:24,531 INFO L273 TraceCheckUtils]: 39: Hoare triple {5506#(<= _strcmp_~i~0 10)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {5506#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:24,532 INFO L273 TraceCheckUtils]: 40: Hoare triple {5506#(<= _strcmp_~i~0 10)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {5507#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:24,532 INFO L273 TraceCheckUtils]: 41: Hoare triple {5507#(<= _strcmp_~i~0 11)} assume true; {5507#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:24,533 INFO L273 TraceCheckUtils]: 42: Hoare triple {5507#(<= _strcmp_~i~0 11)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {5507#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:24,534 INFO L273 TraceCheckUtils]: 43: Hoare triple {5507#(<= _strcmp_~i~0 11)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {5508#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:24,534 INFO L273 TraceCheckUtils]: 44: Hoare triple {5508#(<= _strcmp_~i~0 12)} assume true; {5508#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:24,535 INFO L273 TraceCheckUtils]: 45: Hoare triple {5508#(<= _strcmp_~i~0 12)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {5508#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:24,536 INFO L273 TraceCheckUtils]: 46: Hoare triple {5508#(<= _strcmp_~i~0 12)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {5509#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:24,536 INFO L273 TraceCheckUtils]: 47: Hoare triple {5509#(<= _strcmp_~i~0 13)} assume true; {5509#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:24,537 INFO L273 TraceCheckUtils]: 48: Hoare triple {5509#(<= _strcmp_~i~0 13)} assume !(~i~0 < 100000); {5495#false} is VALID [2018-11-18 23:00:24,537 INFO L273 TraceCheckUtils]: 49: Hoare triple {5495#false} #res := 0; {5495#false} is VALID [2018-11-18 23:00:24,537 INFO L273 TraceCheckUtils]: 50: Hoare triple {5495#false} assume true; {5495#false} is VALID [2018-11-18 23:00:24,537 INFO L268 TraceCheckUtils]: 51: Hoare quadruple {5495#false} {5494#true} #68#return; {5495#false} is VALID [2018-11-18 23:00:24,538 INFO L273 TraceCheckUtils]: 52: Hoare triple {5495#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {5495#false} is VALID [2018-11-18 23:00:24,538 INFO L273 TraceCheckUtils]: 53: Hoare triple {5495#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {5495#false} is VALID [2018-11-18 23:00:24,538 INFO L273 TraceCheckUtils]: 54: Hoare triple {5495#false} assume true; {5495#false} is VALID [2018-11-18 23:00:24,538 INFO L273 TraceCheckUtils]: 55: Hoare triple {5495#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {5495#false} is VALID [2018-11-18 23:00:24,539 INFO L256 TraceCheckUtils]: 56: Hoare triple {5495#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {5495#false} is VALID [2018-11-18 23:00:24,539 INFO L273 TraceCheckUtils]: 57: Hoare triple {5495#false} ~cond := #in~cond; {5495#false} is VALID [2018-11-18 23:00:24,539 INFO L273 TraceCheckUtils]: 58: Hoare triple {5495#false} assume !(0 == ~cond); {5495#false} is VALID [2018-11-18 23:00:24,539 INFO L273 TraceCheckUtils]: 59: Hoare triple {5495#false} assume true; {5495#false} is VALID [2018-11-18 23:00:24,539 INFO L268 TraceCheckUtils]: 60: Hoare quadruple {5495#false} {5495#false} #70#return; {5495#false} is VALID [2018-11-18 23:00:24,540 INFO L273 TraceCheckUtils]: 61: Hoare triple {5495#false} havoc #t~mem5;havoc #t~mem4; {5495#false} is VALID [2018-11-18 23:00:24,540 INFO L273 TraceCheckUtils]: 62: Hoare triple {5495#false} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {5495#false} is VALID [2018-11-18 23:00:24,540 INFO L273 TraceCheckUtils]: 63: Hoare triple {5495#false} assume true; {5495#false} is VALID [2018-11-18 23:00:24,540 INFO L273 TraceCheckUtils]: 64: Hoare triple {5495#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {5495#false} is VALID [2018-11-18 23:00:24,540 INFO L256 TraceCheckUtils]: 65: Hoare triple {5495#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {5495#false} is VALID [2018-11-18 23:00:24,541 INFO L273 TraceCheckUtils]: 66: Hoare triple {5495#false} ~cond := #in~cond; {5495#false} is VALID [2018-11-18 23:00:24,541 INFO L273 TraceCheckUtils]: 67: Hoare triple {5495#false} assume !(0 == ~cond); {5495#false} is VALID [2018-11-18 23:00:24,541 INFO L273 TraceCheckUtils]: 68: Hoare triple {5495#false} assume true; {5495#false} is VALID [2018-11-18 23:00:24,541 INFO L268 TraceCheckUtils]: 69: Hoare quadruple {5495#false} {5495#false} #70#return; {5495#false} is VALID [2018-11-18 23:00:24,541 INFO L273 TraceCheckUtils]: 70: Hoare triple {5495#false} havoc #t~mem5;havoc #t~mem4; {5495#false} is VALID [2018-11-18 23:00:24,541 INFO L273 TraceCheckUtils]: 71: Hoare triple {5495#false} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {5495#false} is VALID [2018-11-18 23:00:24,541 INFO L273 TraceCheckUtils]: 72: Hoare triple {5495#false} assume true; {5495#false} is VALID [2018-11-18 23:00:24,542 INFO L273 TraceCheckUtils]: 73: Hoare triple {5495#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {5495#false} is VALID [2018-11-18 23:00:24,542 INFO L256 TraceCheckUtils]: 74: Hoare triple {5495#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {5495#false} is VALID [2018-11-18 23:00:24,542 INFO L273 TraceCheckUtils]: 75: Hoare triple {5495#false} ~cond := #in~cond; {5495#false} is VALID [2018-11-18 23:00:24,542 INFO L273 TraceCheckUtils]: 76: Hoare triple {5495#false} assume 0 == ~cond; {5495#false} is VALID [2018-11-18 23:00:24,542 INFO L273 TraceCheckUtils]: 77: Hoare triple {5495#false} assume !false; {5495#false} is VALID [2018-11-18 23:00:24,546 INFO L134 CoverageAnalysis]: Checked inductivity of 279 backedges. 0 proven. 260 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2018-11-18 23:00:24,564 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-18 23:00:24,565 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 16] total 17 [2018-11-18 23:00:24,565 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 78 [2018-11-18 23:00:24,566 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-18 23:00:24,566 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states. [2018-11-18 23:00:24,635 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-18 23:00:24,636 INFO L459 AbstractCegarLoop]: Interpolant automaton has 17 states [2018-11-18 23:00:24,636 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2018-11-18 23:00:24,636 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=136, Invalid=136, Unknown=0, NotChecked=0, Total=272 [2018-11-18 23:00:24,637 INFO L87 Difference]: Start difference. First operand 81 states and 82 transitions. Second operand 17 states. [2018-11-18 23:00:24,942 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 23:00:24,942 INFO L93 Difference]: Finished difference Result 117 states and 119 transitions. [2018-11-18 23:00:24,942 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2018-11-18 23:00:24,942 INFO L78 Accepts]: Start accepts. Automaton has 17 states. Word has length 78 [2018-11-18 23:00:24,943 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-18 23:00:24,943 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-18 23:00:24,944 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 87 transitions. [2018-11-18 23:00:24,944 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2018-11-18 23:00:24,945 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 87 transitions. [2018-11-18 23:00:24,945 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 87 transitions. [2018-11-18 23:00:25,039 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-18 23:00:25,040 INFO L225 Difference]: With dead ends: 117 [2018-11-18 23:00:25,041 INFO L226 Difference]: Without dead ends: 85 [2018-11-18 23:00:25,041 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 93 GetRequests, 78 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 24 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=136, Invalid=136, Unknown=0, NotChecked=0, Total=272 [2018-11-18 23:00:25,042 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 85 states. [2018-11-18 23:00:25,248 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 85 to 84. [2018-11-18 23:00:25,249 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-18 23:00:25,249 INFO L82 GeneralOperation]: Start isEquivalent. First operand 85 states. Second operand 84 states. [2018-11-18 23:00:25,249 INFO L74 IsIncluded]: Start isIncluded. First operand 85 states. Second operand 84 states. [2018-11-18 23:00:25,249 INFO L87 Difference]: Start difference. First operand 85 states. Second operand 84 states. [2018-11-18 23:00:25,250 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 23:00:25,250 INFO L93 Difference]: Finished difference Result 85 states and 86 transitions. [2018-11-18 23:00:25,250 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 86 transitions. [2018-11-18 23:00:25,251 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 23:00:25,251 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 23:00:25,251 INFO L74 IsIncluded]: Start isIncluded. First operand 84 states. Second operand 85 states. [2018-11-18 23:00:25,251 INFO L87 Difference]: Start difference. First operand 84 states. Second operand 85 states. [2018-11-18 23:00:25,253 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 23:00:25,254 INFO L93 Difference]: Finished difference Result 85 states and 86 transitions. [2018-11-18 23:00:25,254 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 86 transitions. [2018-11-18 23:00:25,254 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 23:00:25,254 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 23:00:25,255 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-18 23:00:25,255 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-18 23:00:25,255 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 84 states. [2018-11-18 23:00:25,256 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 84 states to 84 states and 85 transitions. [2018-11-18 23:00:25,257 INFO L78 Accepts]: Start accepts. Automaton has 84 states and 85 transitions. Word has length 78 [2018-11-18 23:00:25,257 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-18 23:00:25,257 INFO L480 AbstractCegarLoop]: Abstraction has 84 states and 85 transitions. [2018-11-18 23:00:25,257 INFO L481 AbstractCegarLoop]: Interpolant automaton has 17 states. [2018-11-18 23:00:25,257 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 85 transitions. [2018-11-18 23:00:25,259 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 82 [2018-11-18 23:00:25,259 INFO L367 BasicCegarLoop]: Found error trace [2018-11-18 23:00:25,259 INFO L375 BasicCegarLoop]: trace histogram [15, 14, 14, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-18 23:00:25,260 INFO L423 AbstractCegarLoop]: === Iteration 17 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-18 23:00:25,260 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 23:00:25,260 INFO L82 PathProgramCache]: Analyzing trace with hash 1982898146, now seen corresponding path program 5 times [2018-11-18 23:00:25,260 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 23:00:25,260 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 23:00:25,261 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 23:00:25,261 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-18 23:00:25,261 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 23:00:25,283 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 23:00:25,968 INFO L256 TraceCheckUtils]: 0: Hoare triple {6184#true} call ULTIMATE.init(); {6184#true} is VALID [2018-11-18 23:00:25,968 INFO L273 TraceCheckUtils]: 1: Hoare triple {6184#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {6184#true} is VALID [2018-11-18 23:00:25,968 INFO L273 TraceCheckUtils]: 2: Hoare triple {6184#true} assume true; {6184#true} is VALID [2018-11-18 23:00:25,969 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6184#true} {6184#true} #64#return; {6184#true} is VALID [2018-11-18 23:00:25,969 INFO L256 TraceCheckUtils]: 4: Hoare triple {6184#true} call #t~ret6 := main(); {6184#true} is VALID [2018-11-18 23:00:25,969 INFO L273 TraceCheckUtils]: 5: Hoare triple {6184#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {6184#true} is VALID [2018-11-18 23:00:25,969 INFO L256 TraceCheckUtils]: 6: Hoare triple {6184#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {6184#true} is VALID [2018-11-18 23:00:25,970 INFO L273 TraceCheckUtils]: 7: Hoare triple {6184#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {6186#(= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:25,970 INFO L273 TraceCheckUtils]: 8: Hoare triple {6186#(= _strcmp_~i~0 0)} assume true; {6186#(= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:25,971 INFO L273 TraceCheckUtils]: 9: Hoare triple {6186#(= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6186#(= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:25,971 INFO L273 TraceCheckUtils]: 10: Hoare triple {6186#(= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6187#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:25,972 INFO L273 TraceCheckUtils]: 11: Hoare triple {6187#(<= _strcmp_~i~0 1)} assume true; {6187#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:25,972 INFO L273 TraceCheckUtils]: 12: Hoare triple {6187#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6187#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:25,972 INFO L273 TraceCheckUtils]: 13: Hoare triple {6187#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6188#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:25,973 INFO L273 TraceCheckUtils]: 14: Hoare triple {6188#(<= _strcmp_~i~0 2)} assume true; {6188#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:25,973 INFO L273 TraceCheckUtils]: 15: Hoare triple {6188#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6188#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:25,974 INFO L273 TraceCheckUtils]: 16: Hoare triple {6188#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6189#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:25,975 INFO L273 TraceCheckUtils]: 17: Hoare triple {6189#(<= _strcmp_~i~0 3)} assume true; {6189#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:25,975 INFO L273 TraceCheckUtils]: 18: Hoare triple {6189#(<= _strcmp_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6189#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:25,976 INFO L273 TraceCheckUtils]: 19: Hoare triple {6189#(<= _strcmp_~i~0 3)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6190#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:25,977 INFO L273 TraceCheckUtils]: 20: Hoare triple {6190#(<= _strcmp_~i~0 4)} assume true; {6190#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:25,977 INFO L273 TraceCheckUtils]: 21: Hoare triple {6190#(<= _strcmp_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6190#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:25,978 INFO L273 TraceCheckUtils]: 22: Hoare triple {6190#(<= _strcmp_~i~0 4)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6191#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:25,979 INFO L273 TraceCheckUtils]: 23: Hoare triple {6191#(<= _strcmp_~i~0 5)} assume true; {6191#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:25,979 INFO L273 TraceCheckUtils]: 24: Hoare triple {6191#(<= _strcmp_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6191#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:25,980 INFO L273 TraceCheckUtils]: 25: Hoare triple {6191#(<= _strcmp_~i~0 5)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6192#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:25,981 INFO L273 TraceCheckUtils]: 26: Hoare triple {6192#(<= _strcmp_~i~0 6)} assume true; {6192#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:25,981 INFO L273 TraceCheckUtils]: 27: Hoare triple {6192#(<= _strcmp_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6192#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:25,982 INFO L273 TraceCheckUtils]: 28: Hoare triple {6192#(<= _strcmp_~i~0 6)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6193#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:25,982 INFO L273 TraceCheckUtils]: 29: Hoare triple {6193#(<= _strcmp_~i~0 7)} assume true; {6193#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:25,983 INFO L273 TraceCheckUtils]: 30: Hoare triple {6193#(<= _strcmp_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6193#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:25,984 INFO L273 TraceCheckUtils]: 31: Hoare triple {6193#(<= _strcmp_~i~0 7)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6194#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:25,984 INFO L273 TraceCheckUtils]: 32: Hoare triple {6194#(<= _strcmp_~i~0 8)} assume true; {6194#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:25,985 INFO L273 TraceCheckUtils]: 33: Hoare triple {6194#(<= _strcmp_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6194#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:25,986 INFO L273 TraceCheckUtils]: 34: Hoare triple {6194#(<= _strcmp_~i~0 8)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6195#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:25,986 INFO L273 TraceCheckUtils]: 35: Hoare triple {6195#(<= _strcmp_~i~0 9)} assume true; {6195#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:25,987 INFO L273 TraceCheckUtils]: 36: Hoare triple {6195#(<= _strcmp_~i~0 9)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6195#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:25,988 INFO L273 TraceCheckUtils]: 37: Hoare triple {6195#(<= _strcmp_~i~0 9)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6196#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:25,988 INFO L273 TraceCheckUtils]: 38: Hoare triple {6196#(<= _strcmp_~i~0 10)} assume true; {6196#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:25,989 INFO L273 TraceCheckUtils]: 39: Hoare triple {6196#(<= _strcmp_~i~0 10)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6196#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:25,989 INFO L273 TraceCheckUtils]: 40: Hoare triple {6196#(<= _strcmp_~i~0 10)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6197#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:25,990 INFO L273 TraceCheckUtils]: 41: Hoare triple {6197#(<= _strcmp_~i~0 11)} assume true; {6197#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:25,991 INFO L273 TraceCheckUtils]: 42: Hoare triple {6197#(<= _strcmp_~i~0 11)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6197#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:25,991 INFO L273 TraceCheckUtils]: 43: Hoare triple {6197#(<= _strcmp_~i~0 11)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6198#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:25,992 INFO L273 TraceCheckUtils]: 44: Hoare triple {6198#(<= _strcmp_~i~0 12)} assume true; {6198#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:25,992 INFO L273 TraceCheckUtils]: 45: Hoare triple {6198#(<= _strcmp_~i~0 12)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6198#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:25,993 INFO L273 TraceCheckUtils]: 46: Hoare triple {6198#(<= _strcmp_~i~0 12)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6199#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:25,994 INFO L273 TraceCheckUtils]: 47: Hoare triple {6199#(<= _strcmp_~i~0 13)} assume true; {6199#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:25,994 INFO L273 TraceCheckUtils]: 48: Hoare triple {6199#(<= _strcmp_~i~0 13)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6199#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:25,995 INFO L273 TraceCheckUtils]: 49: Hoare triple {6199#(<= _strcmp_~i~0 13)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6200#(<= _strcmp_~i~0 14)} is VALID [2018-11-18 23:00:25,996 INFO L273 TraceCheckUtils]: 50: Hoare triple {6200#(<= _strcmp_~i~0 14)} assume true; {6200#(<= _strcmp_~i~0 14)} is VALID [2018-11-18 23:00:25,996 INFO L273 TraceCheckUtils]: 51: Hoare triple {6200#(<= _strcmp_~i~0 14)} assume !(~i~0 < 100000); {6185#false} is VALID [2018-11-18 23:00:25,997 INFO L273 TraceCheckUtils]: 52: Hoare triple {6185#false} #res := 0; {6185#false} is VALID [2018-11-18 23:00:25,997 INFO L273 TraceCheckUtils]: 53: Hoare triple {6185#false} assume true; {6185#false} is VALID [2018-11-18 23:00:25,997 INFO L268 TraceCheckUtils]: 54: Hoare quadruple {6185#false} {6184#true} #68#return; {6185#false} is VALID [2018-11-18 23:00:25,997 INFO L273 TraceCheckUtils]: 55: Hoare triple {6185#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {6185#false} is VALID [2018-11-18 23:00:25,997 INFO L273 TraceCheckUtils]: 56: Hoare triple {6185#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {6185#false} is VALID [2018-11-18 23:00:25,998 INFO L273 TraceCheckUtils]: 57: Hoare triple {6185#false} assume true; {6185#false} is VALID [2018-11-18 23:00:25,998 INFO L273 TraceCheckUtils]: 58: Hoare triple {6185#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {6185#false} is VALID [2018-11-18 23:00:25,998 INFO L256 TraceCheckUtils]: 59: Hoare triple {6185#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {6184#true} is VALID [2018-11-18 23:00:25,998 INFO L273 TraceCheckUtils]: 60: Hoare triple {6184#true} ~cond := #in~cond; {6184#true} is VALID [2018-11-18 23:00:25,999 INFO L273 TraceCheckUtils]: 61: Hoare triple {6184#true} assume !(0 == ~cond); {6184#true} is VALID [2018-11-18 23:00:25,999 INFO L273 TraceCheckUtils]: 62: Hoare triple {6184#true} assume true; {6184#true} is VALID [2018-11-18 23:00:25,999 INFO L268 TraceCheckUtils]: 63: Hoare quadruple {6184#true} {6185#false} #70#return; {6185#false} is VALID [2018-11-18 23:00:25,999 INFO L273 TraceCheckUtils]: 64: Hoare triple {6185#false} havoc #t~mem5;havoc #t~mem4; {6185#false} is VALID [2018-11-18 23:00:25,999 INFO L273 TraceCheckUtils]: 65: Hoare triple {6185#false} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {6185#false} is VALID [2018-11-18 23:00:26,000 INFO L273 TraceCheckUtils]: 66: Hoare triple {6185#false} assume true; {6185#false} is VALID [2018-11-18 23:00:26,000 INFO L273 TraceCheckUtils]: 67: Hoare triple {6185#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {6185#false} is VALID [2018-11-18 23:00:26,000 INFO L256 TraceCheckUtils]: 68: Hoare triple {6185#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {6184#true} is VALID [2018-11-18 23:00:26,000 INFO L273 TraceCheckUtils]: 69: Hoare triple {6184#true} ~cond := #in~cond; {6184#true} is VALID [2018-11-18 23:00:26,000 INFO L273 TraceCheckUtils]: 70: Hoare triple {6184#true} assume !(0 == ~cond); {6184#true} is VALID [2018-11-18 23:00:26,000 INFO L273 TraceCheckUtils]: 71: Hoare triple {6184#true} assume true; {6184#true} is VALID [2018-11-18 23:00:26,000 INFO L268 TraceCheckUtils]: 72: Hoare quadruple {6184#true} {6185#false} #70#return; {6185#false} is VALID [2018-11-18 23:00:26,001 INFO L273 TraceCheckUtils]: 73: Hoare triple {6185#false} havoc #t~mem5;havoc #t~mem4; {6185#false} is VALID [2018-11-18 23:00:26,001 INFO L273 TraceCheckUtils]: 74: Hoare triple {6185#false} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {6185#false} is VALID [2018-11-18 23:00:26,001 INFO L273 TraceCheckUtils]: 75: Hoare triple {6185#false} assume true; {6185#false} is VALID [2018-11-18 23:00:26,001 INFO L273 TraceCheckUtils]: 76: Hoare triple {6185#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {6185#false} is VALID [2018-11-18 23:00:26,001 INFO L256 TraceCheckUtils]: 77: Hoare triple {6185#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {6185#false} is VALID [2018-11-18 23:00:26,001 INFO L273 TraceCheckUtils]: 78: Hoare triple {6185#false} ~cond := #in~cond; {6185#false} is VALID [2018-11-18 23:00:26,001 INFO L273 TraceCheckUtils]: 79: Hoare triple {6185#false} assume 0 == ~cond; {6185#false} is VALID [2018-11-18 23:00:26,001 INFO L273 TraceCheckUtils]: 80: Hoare triple {6185#false} assume !false; {6185#false} is VALID [2018-11-18 23:00:26,005 INFO L134 CoverageAnalysis]: Checked inductivity of 320 backedges. 4 proven. 301 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2018-11-18 23:00:26,005 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-18 23:00:26,005 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-18 23:00:26,014 INFO L103 rtionOrderModulation]: Keeping assertion order INSIDE_LOOP_FIRST1 [2018-11-18 23:00:26,061 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 15 check-sat command(s) [2018-11-18 23:00:26,061 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-18 23:00:26,077 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 23:00:26,078 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 23:00:26,494 INFO L256 TraceCheckUtils]: 0: Hoare triple {6184#true} call ULTIMATE.init(); {6184#true} is VALID [2018-11-18 23:00:26,495 INFO L273 TraceCheckUtils]: 1: Hoare triple {6184#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {6184#true} is VALID [2018-11-18 23:00:26,495 INFO L273 TraceCheckUtils]: 2: Hoare triple {6184#true} assume true; {6184#true} is VALID [2018-11-18 23:00:26,495 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6184#true} {6184#true} #64#return; {6184#true} is VALID [2018-11-18 23:00:26,495 INFO L256 TraceCheckUtils]: 4: Hoare triple {6184#true} call #t~ret6 := main(); {6184#true} is VALID [2018-11-18 23:00:26,495 INFO L273 TraceCheckUtils]: 5: Hoare triple {6184#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {6184#true} is VALID [2018-11-18 23:00:26,496 INFO L256 TraceCheckUtils]: 6: Hoare triple {6184#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {6184#true} is VALID [2018-11-18 23:00:26,496 INFO L273 TraceCheckUtils]: 7: Hoare triple {6184#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {6225#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:26,497 INFO L273 TraceCheckUtils]: 8: Hoare triple {6225#(<= _strcmp_~i~0 0)} assume true; {6225#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:26,497 INFO L273 TraceCheckUtils]: 9: Hoare triple {6225#(<= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6225#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:26,498 INFO L273 TraceCheckUtils]: 10: Hoare triple {6225#(<= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6187#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:26,498 INFO L273 TraceCheckUtils]: 11: Hoare triple {6187#(<= _strcmp_~i~0 1)} assume true; {6187#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:26,498 INFO L273 TraceCheckUtils]: 12: Hoare triple {6187#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6187#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:26,499 INFO L273 TraceCheckUtils]: 13: Hoare triple {6187#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6188#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:26,500 INFO L273 TraceCheckUtils]: 14: Hoare triple {6188#(<= _strcmp_~i~0 2)} assume true; {6188#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:26,519 INFO L273 TraceCheckUtils]: 15: Hoare triple {6188#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6188#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:26,528 INFO L273 TraceCheckUtils]: 16: Hoare triple {6188#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6189#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:26,540 INFO L273 TraceCheckUtils]: 17: Hoare triple {6189#(<= _strcmp_~i~0 3)} assume true; {6189#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:26,554 INFO L273 TraceCheckUtils]: 18: Hoare triple {6189#(<= _strcmp_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6189#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:26,563 INFO L273 TraceCheckUtils]: 19: Hoare triple {6189#(<= _strcmp_~i~0 3)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6190#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:26,577 INFO L273 TraceCheckUtils]: 20: Hoare triple {6190#(<= _strcmp_~i~0 4)} assume true; {6190#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:26,577 INFO L273 TraceCheckUtils]: 21: Hoare triple {6190#(<= _strcmp_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6190#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:26,582 INFO L273 TraceCheckUtils]: 22: Hoare triple {6190#(<= _strcmp_~i~0 4)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6191#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:26,582 INFO L273 TraceCheckUtils]: 23: Hoare triple {6191#(<= _strcmp_~i~0 5)} assume true; {6191#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:26,583 INFO L273 TraceCheckUtils]: 24: Hoare triple {6191#(<= _strcmp_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6191#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:26,583 INFO L273 TraceCheckUtils]: 25: Hoare triple {6191#(<= _strcmp_~i~0 5)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6192#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:26,584 INFO L273 TraceCheckUtils]: 26: Hoare triple {6192#(<= _strcmp_~i~0 6)} assume true; {6192#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:26,584 INFO L273 TraceCheckUtils]: 27: Hoare triple {6192#(<= _strcmp_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6192#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:26,584 INFO L273 TraceCheckUtils]: 28: Hoare triple {6192#(<= _strcmp_~i~0 6)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6193#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:26,585 INFO L273 TraceCheckUtils]: 29: Hoare triple {6193#(<= _strcmp_~i~0 7)} assume true; {6193#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:26,585 INFO L273 TraceCheckUtils]: 30: Hoare triple {6193#(<= _strcmp_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6193#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:26,585 INFO L273 TraceCheckUtils]: 31: Hoare triple {6193#(<= _strcmp_~i~0 7)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6194#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:26,586 INFO L273 TraceCheckUtils]: 32: Hoare triple {6194#(<= _strcmp_~i~0 8)} assume true; {6194#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:26,586 INFO L273 TraceCheckUtils]: 33: Hoare triple {6194#(<= _strcmp_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6194#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:26,587 INFO L273 TraceCheckUtils]: 34: Hoare triple {6194#(<= _strcmp_~i~0 8)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6195#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:26,588 INFO L273 TraceCheckUtils]: 35: Hoare triple {6195#(<= _strcmp_~i~0 9)} assume true; {6195#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:26,588 INFO L273 TraceCheckUtils]: 36: Hoare triple {6195#(<= _strcmp_~i~0 9)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6195#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:26,589 INFO L273 TraceCheckUtils]: 37: Hoare triple {6195#(<= _strcmp_~i~0 9)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6196#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:26,589 INFO L273 TraceCheckUtils]: 38: Hoare triple {6196#(<= _strcmp_~i~0 10)} assume true; {6196#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:26,590 INFO L273 TraceCheckUtils]: 39: Hoare triple {6196#(<= _strcmp_~i~0 10)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6196#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:26,591 INFO L273 TraceCheckUtils]: 40: Hoare triple {6196#(<= _strcmp_~i~0 10)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6197#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:26,591 INFO L273 TraceCheckUtils]: 41: Hoare triple {6197#(<= _strcmp_~i~0 11)} assume true; {6197#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:26,592 INFO L273 TraceCheckUtils]: 42: Hoare triple {6197#(<= _strcmp_~i~0 11)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6197#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:26,593 INFO L273 TraceCheckUtils]: 43: Hoare triple {6197#(<= _strcmp_~i~0 11)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6198#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:26,593 INFO L273 TraceCheckUtils]: 44: Hoare triple {6198#(<= _strcmp_~i~0 12)} assume true; {6198#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:26,594 INFO L273 TraceCheckUtils]: 45: Hoare triple {6198#(<= _strcmp_~i~0 12)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6198#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:26,595 INFO L273 TraceCheckUtils]: 46: Hoare triple {6198#(<= _strcmp_~i~0 12)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6199#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:26,595 INFO L273 TraceCheckUtils]: 47: Hoare triple {6199#(<= _strcmp_~i~0 13)} assume true; {6199#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:26,596 INFO L273 TraceCheckUtils]: 48: Hoare triple {6199#(<= _strcmp_~i~0 13)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6199#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:26,596 INFO L273 TraceCheckUtils]: 49: Hoare triple {6199#(<= _strcmp_~i~0 13)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6200#(<= _strcmp_~i~0 14)} is VALID [2018-11-18 23:00:26,597 INFO L273 TraceCheckUtils]: 50: Hoare triple {6200#(<= _strcmp_~i~0 14)} assume true; {6200#(<= _strcmp_~i~0 14)} is VALID [2018-11-18 23:00:26,598 INFO L273 TraceCheckUtils]: 51: Hoare triple {6200#(<= _strcmp_~i~0 14)} assume !(~i~0 < 100000); {6185#false} is VALID [2018-11-18 23:00:26,598 INFO L273 TraceCheckUtils]: 52: Hoare triple {6185#false} #res := 0; {6185#false} is VALID [2018-11-18 23:00:26,598 INFO L273 TraceCheckUtils]: 53: Hoare triple {6185#false} assume true; {6185#false} is VALID [2018-11-18 23:00:26,598 INFO L268 TraceCheckUtils]: 54: Hoare quadruple {6185#false} {6184#true} #68#return; {6185#false} is VALID [2018-11-18 23:00:26,599 INFO L273 TraceCheckUtils]: 55: Hoare triple {6185#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {6185#false} is VALID [2018-11-18 23:00:26,599 INFO L273 TraceCheckUtils]: 56: Hoare triple {6185#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {6185#false} is VALID [2018-11-18 23:00:26,599 INFO L273 TraceCheckUtils]: 57: Hoare triple {6185#false} assume true; {6185#false} is VALID [2018-11-18 23:00:26,599 INFO L273 TraceCheckUtils]: 58: Hoare triple {6185#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {6185#false} is VALID [2018-11-18 23:00:26,599 INFO L256 TraceCheckUtils]: 59: Hoare triple {6185#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {6185#false} is VALID [2018-11-18 23:00:26,600 INFO L273 TraceCheckUtils]: 60: Hoare triple {6185#false} ~cond := #in~cond; {6185#false} is VALID [2018-11-18 23:00:26,600 INFO L273 TraceCheckUtils]: 61: Hoare triple {6185#false} assume !(0 == ~cond); {6185#false} is VALID [2018-11-18 23:00:26,600 INFO L273 TraceCheckUtils]: 62: Hoare triple {6185#false} assume true; {6185#false} is VALID [2018-11-18 23:00:26,600 INFO L268 TraceCheckUtils]: 63: Hoare quadruple {6185#false} {6185#false} #70#return; {6185#false} is VALID [2018-11-18 23:00:26,600 INFO L273 TraceCheckUtils]: 64: Hoare triple {6185#false} havoc #t~mem5;havoc #t~mem4; {6185#false} is VALID [2018-11-18 23:00:26,600 INFO L273 TraceCheckUtils]: 65: Hoare triple {6185#false} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {6185#false} is VALID [2018-11-18 23:00:26,600 INFO L273 TraceCheckUtils]: 66: Hoare triple {6185#false} assume true; {6185#false} is VALID [2018-11-18 23:00:26,601 INFO L273 TraceCheckUtils]: 67: Hoare triple {6185#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {6185#false} is VALID [2018-11-18 23:00:26,601 INFO L256 TraceCheckUtils]: 68: Hoare triple {6185#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {6185#false} is VALID [2018-11-18 23:00:26,601 INFO L273 TraceCheckUtils]: 69: Hoare triple {6185#false} ~cond := #in~cond; {6185#false} is VALID [2018-11-18 23:00:26,601 INFO L273 TraceCheckUtils]: 70: Hoare triple {6185#false} assume !(0 == ~cond); {6185#false} is VALID [2018-11-18 23:00:26,601 INFO L273 TraceCheckUtils]: 71: Hoare triple {6185#false} assume true; {6185#false} is VALID [2018-11-18 23:00:26,601 INFO L268 TraceCheckUtils]: 72: Hoare quadruple {6185#false} {6185#false} #70#return; {6185#false} is VALID [2018-11-18 23:00:26,601 INFO L273 TraceCheckUtils]: 73: Hoare triple {6185#false} havoc #t~mem5;havoc #t~mem4; {6185#false} is VALID [2018-11-18 23:00:26,601 INFO L273 TraceCheckUtils]: 74: Hoare triple {6185#false} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {6185#false} is VALID [2018-11-18 23:00:26,601 INFO L273 TraceCheckUtils]: 75: Hoare triple {6185#false} assume true; {6185#false} is VALID [2018-11-18 23:00:26,602 INFO L273 TraceCheckUtils]: 76: Hoare triple {6185#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {6185#false} is VALID [2018-11-18 23:00:26,602 INFO L256 TraceCheckUtils]: 77: Hoare triple {6185#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {6185#false} is VALID [2018-11-18 23:00:26,602 INFO L273 TraceCheckUtils]: 78: Hoare triple {6185#false} ~cond := #in~cond; {6185#false} is VALID [2018-11-18 23:00:26,602 INFO L273 TraceCheckUtils]: 79: Hoare triple {6185#false} assume 0 == ~cond; {6185#false} is VALID [2018-11-18 23:00:26,602 INFO L273 TraceCheckUtils]: 80: Hoare triple {6185#false} assume !false; {6185#false} is VALID [2018-11-18 23:00:26,606 INFO L134 CoverageAnalysis]: Checked inductivity of 320 backedges. 0 proven. 301 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2018-11-18 23:00:26,625 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-18 23:00:26,626 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 17] total 18 [2018-11-18 23:00:26,626 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 81 [2018-11-18 23:00:26,626 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-18 23:00:26,626 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states. [2018-11-18 23:00:26,699 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-18 23:00:26,699 INFO L459 AbstractCegarLoop]: Interpolant automaton has 18 states [2018-11-18 23:00:26,700 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2018-11-18 23:00:26,700 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=153, Invalid=153, Unknown=0, NotChecked=0, Total=306 [2018-11-18 23:00:26,700 INFO L87 Difference]: Start difference. First operand 84 states and 85 transitions. Second operand 18 states. [2018-11-18 23:00:27,199 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 23:00:27,200 INFO L93 Difference]: Finished difference Result 120 states and 122 transitions. [2018-11-18 23:00:27,200 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2018-11-18 23:00:27,200 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 81 [2018-11-18 23:00:27,200 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-18 23:00:27,200 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-18 23:00:27,201 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 90 transitions. [2018-11-18 23:00:27,202 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-18 23:00:27,202 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 90 transitions. [2018-11-18 23:00:27,202 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 90 transitions. [2018-11-18 23:00:27,295 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-18 23:00:27,297 INFO L225 Difference]: With dead ends: 120 [2018-11-18 23:00:27,297 INFO L226 Difference]: Without dead ends: 88 [2018-11-18 23:00:27,298 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 97 GetRequests, 81 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-18 23:00:27,298 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 88 states. [2018-11-18 23:00:27,408 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 88 to 87. [2018-11-18 23:00:27,408 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-18 23:00:27,408 INFO L82 GeneralOperation]: Start isEquivalent. First operand 88 states. Second operand 87 states. [2018-11-18 23:00:27,409 INFO L74 IsIncluded]: Start isIncluded. First operand 88 states. Second operand 87 states. [2018-11-18 23:00:27,409 INFO L87 Difference]: Start difference. First operand 88 states. Second operand 87 states. [2018-11-18 23:00:27,411 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 23:00:27,411 INFO L93 Difference]: Finished difference Result 88 states and 89 transitions. [2018-11-18 23:00:27,412 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 89 transitions. [2018-11-18 23:00:27,412 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 23:00:27,412 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 23:00:27,412 INFO L74 IsIncluded]: Start isIncluded. First operand 87 states. Second operand 88 states. [2018-11-18 23:00:27,412 INFO L87 Difference]: Start difference. First operand 87 states. Second operand 88 states. [2018-11-18 23:00:27,414 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 23:00:27,414 INFO L93 Difference]: Finished difference Result 88 states and 89 transitions. [2018-11-18 23:00:27,414 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 89 transitions. [2018-11-18 23:00:27,415 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 23:00:27,415 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 23:00:27,415 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-18 23:00:27,415 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-18 23:00:27,415 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 87 states. [2018-11-18 23:00:27,417 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 87 states to 87 states and 88 transitions. [2018-11-18 23:00:27,417 INFO L78 Accepts]: Start accepts. Automaton has 87 states and 88 transitions. Word has length 81 [2018-11-18 23:00:27,417 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-18 23:00:27,417 INFO L480 AbstractCegarLoop]: Abstraction has 87 states and 88 transitions. [2018-11-18 23:00:27,417 INFO L481 AbstractCegarLoop]: Interpolant automaton has 18 states. [2018-11-18 23:00:27,417 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 88 transitions. [2018-11-18 23:00:27,418 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 85 [2018-11-18 23:00:27,418 INFO L367 BasicCegarLoop]: Found error trace [2018-11-18 23:00:27,418 INFO L375 BasicCegarLoop]: trace histogram [16, 15, 15, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-18 23:00:27,418 INFO L423 AbstractCegarLoop]: === Iteration 18 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-18 23:00:27,419 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 23:00:27,419 INFO L82 PathProgramCache]: Analyzing trace with hash 1031377798, now seen corresponding path program 6 times [2018-11-18 23:00:27,419 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 23:00:27,419 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 23:00:27,420 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 23:00:27,420 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-18 23:00:27,420 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 23:00:27,435 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 23:00:28,400 INFO L256 TraceCheckUtils]: 0: Hoare triple {6898#true} call ULTIMATE.init(); {6898#true} is VALID [2018-11-18 23:00:28,401 INFO L273 TraceCheckUtils]: 1: Hoare triple {6898#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {6898#true} is VALID [2018-11-18 23:00:28,401 INFO L273 TraceCheckUtils]: 2: Hoare triple {6898#true} assume true; {6898#true} is VALID [2018-11-18 23:00:28,401 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6898#true} {6898#true} #64#return; {6898#true} is VALID [2018-11-18 23:00:28,401 INFO L256 TraceCheckUtils]: 4: Hoare triple {6898#true} call #t~ret6 := main(); {6898#true} is VALID [2018-11-18 23:00:28,401 INFO L273 TraceCheckUtils]: 5: Hoare triple {6898#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {6898#true} is VALID [2018-11-18 23:00:28,401 INFO L256 TraceCheckUtils]: 6: Hoare triple {6898#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {6898#true} is VALID [2018-11-18 23:00:28,402 INFO L273 TraceCheckUtils]: 7: Hoare triple {6898#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {6900#(= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:28,402 INFO L273 TraceCheckUtils]: 8: Hoare triple {6900#(= _strcmp_~i~0 0)} assume true; {6900#(= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:28,403 INFO L273 TraceCheckUtils]: 9: Hoare triple {6900#(= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6900#(= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:28,403 INFO L273 TraceCheckUtils]: 10: Hoare triple {6900#(= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6901#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:28,403 INFO L273 TraceCheckUtils]: 11: Hoare triple {6901#(<= _strcmp_~i~0 1)} assume true; {6901#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:28,404 INFO L273 TraceCheckUtils]: 12: Hoare triple {6901#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6901#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:28,404 INFO L273 TraceCheckUtils]: 13: Hoare triple {6901#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6902#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:28,405 INFO L273 TraceCheckUtils]: 14: Hoare triple {6902#(<= _strcmp_~i~0 2)} assume true; {6902#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:28,405 INFO L273 TraceCheckUtils]: 15: Hoare triple {6902#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6902#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:28,406 INFO L273 TraceCheckUtils]: 16: Hoare triple {6902#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6903#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:28,407 INFO L273 TraceCheckUtils]: 17: Hoare triple {6903#(<= _strcmp_~i~0 3)} assume true; {6903#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:28,407 INFO L273 TraceCheckUtils]: 18: Hoare triple {6903#(<= _strcmp_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6903#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:28,408 INFO L273 TraceCheckUtils]: 19: Hoare triple {6903#(<= _strcmp_~i~0 3)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6904#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:28,409 INFO L273 TraceCheckUtils]: 20: Hoare triple {6904#(<= _strcmp_~i~0 4)} assume true; {6904#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:28,409 INFO L273 TraceCheckUtils]: 21: Hoare triple {6904#(<= _strcmp_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6904#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:28,410 INFO L273 TraceCheckUtils]: 22: Hoare triple {6904#(<= _strcmp_~i~0 4)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6905#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:28,411 INFO L273 TraceCheckUtils]: 23: Hoare triple {6905#(<= _strcmp_~i~0 5)} assume true; {6905#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:28,411 INFO L273 TraceCheckUtils]: 24: Hoare triple {6905#(<= _strcmp_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6905#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:28,412 INFO L273 TraceCheckUtils]: 25: Hoare triple {6905#(<= _strcmp_~i~0 5)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6906#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:28,412 INFO L273 TraceCheckUtils]: 26: Hoare triple {6906#(<= _strcmp_~i~0 6)} assume true; {6906#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:28,413 INFO L273 TraceCheckUtils]: 27: Hoare triple {6906#(<= _strcmp_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6906#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:28,414 INFO L273 TraceCheckUtils]: 28: Hoare triple {6906#(<= _strcmp_~i~0 6)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6907#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:28,414 INFO L273 TraceCheckUtils]: 29: Hoare triple {6907#(<= _strcmp_~i~0 7)} assume true; {6907#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:28,415 INFO L273 TraceCheckUtils]: 30: Hoare triple {6907#(<= _strcmp_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6907#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:28,416 INFO L273 TraceCheckUtils]: 31: Hoare triple {6907#(<= _strcmp_~i~0 7)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6908#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:28,416 INFO L273 TraceCheckUtils]: 32: Hoare triple {6908#(<= _strcmp_~i~0 8)} assume true; {6908#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:28,417 INFO L273 TraceCheckUtils]: 33: Hoare triple {6908#(<= _strcmp_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6908#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:28,418 INFO L273 TraceCheckUtils]: 34: Hoare triple {6908#(<= _strcmp_~i~0 8)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6909#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:28,418 INFO L273 TraceCheckUtils]: 35: Hoare triple {6909#(<= _strcmp_~i~0 9)} assume true; {6909#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:28,419 INFO L273 TraceCheckUtils]: 36: Hoare triple {6909#(<= _strcmp_~i~0 9)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6909#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:28,419 INFO L273 TraceCheckUtils]: 37: Hoare triple {6909#(<= _strcmp_~i~0 9)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6910#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:28,420 INFO L273 TraceCheckUtils]: 38: Hoare triple {6910#(<= _strcmp_~i~0 10)} assume true; {6910#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:28,420 INFO L273 TraceCheckUtils]: 39: Hoare triple {6910#(<= _strcmp_~i~0 10)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6910#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:28,421 INFO L273 TraceCheckUtils]: 40: Hoare triple {6910#(<= _strcmp_~i~0 10)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6911#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:28,422 INFO L273 TraceCheckUtils]: 41: Hoare triple {6911#(<= _strcmp_~i~0 11)} assume true; {6911#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:28,422 INFO L273 TraceCheckUtils]: 42: Hoare triple {6911#(<= _strcmp_~i~0 11)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6911#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:28,423 INFO L273 TraceCheckUtils]: 43: Hoare triple {6911#(<= _strcmp_~i~0 11)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6912#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:28,424 INFO L273 TraceCheckUtils]: 44: Hoare triple {6912#(<= _strcmp_~i~0 12)} assume true; {6912#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:28,424 INFO L273 TraceCheckUtils]: 45: Hoare triple {6912#(<= _strcmp_~i~0 12)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6912#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:28,425 INFO L273 TraceCheckUtils]: 46: Hoare triple {6912#(<= _strcmp_~i~0 12)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6913#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:28,426 INFO L273 TraceCheckUtils]: 47: Hoare triple {6913#(<= _strcmp_~i~0 13)} assume true; {6913#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:28,426 INFO L273 TraceCheckUtils]: 48: Hoare triple {6913#(<= _strcmp_~i~0 13)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6913#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:28,427 INFO L273 TraceCheckUtils]: 49: Hoare triple {6913#(<= _strcmp_~i~0 13)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6914#(<= _strcmp_~i~0 14)} is VALID [2018-11-18 23:00:28,427 INFO L273 TraceCheckUtils]: 50: Hoare triple {6914#(<= _strcmp_~i~0 14)} assume true; {6914#(<= _strcmp_~i~0 14)} is VALID [2018-11-18 23:00:28,428 INFO L273 TraceCheckUtils]: 51: Hoare triple {6914#(<= _strcmp_~i~0 14)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6914#(<= _strcmp_~i~0 14)} is VALID [2018-11-18 23:00:28,429 INFO L273 TraceCheckUtils]: 52: Hoare triple {6914#(<= _strcmp_~i~0 14)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6915#(<= _strcmp_~i~0 15)} is VALID [2018-11-18 23:00:28,429 INFO L273 TraceCheckUtils]: 53: Hoare triple {6915#(<= _strcmp_~i~0 15)} assume true; {6915#(<= _strcmp_~i~0 15)} is VALID [2018-11-18 23:00:28,430 INFO L273 TraceCheckUtils]: 54: Hoare triple {6915#(<= _strcmp_~i~0 15)} assume !(~i~0 < 100000); {6899#false} is VALID [2018-11-18 23:00:28,430 INFO L273 TraceCheckUtils]: 55: Hoare triple {6899#false} #res := 0; {6899#false} is VALID [2018-11-18 23:00:28,430 INFO L273 TraceCheckUtils]: 56: Hoare triple {6899#false} assume true; {6899#false} is VALID [2018-11-18 23:00:28,431 INFO L268 TraceCheckUtils]: 57: Hoare quadruple {6899#false} {6898#true} #68#return; {6899#false} is VALID [2018-11-18 23:00:28,431 INFO L273 TraceCheckUtils]: 58: Hoare triple {6899#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {6899#false} is VALID [2018-11-18 23:00:28,431 INFO L273 TraceCheckUtils]: 59: Hoare triple {6899#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {6899#false} is VALID [2018-11-18 23:00:28,431 INFO L273 TraceCheckUtils]: 60: Hoare triple {6899#false} assume true; {6899#false} is VALID [2018-11-18 23:00:28,432 INFO L273 TraceCheckUtils]: 61: Hoare triple {6899#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {6899#false} is VALID [2018-11-18 23:00:28,432 INFO L256 TraceCheckUtils]: 62: Hoare triple {6899#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {6898#true} is VALID [2018-11-18 23:00:28,432 INFO L273 TraceCheckUtils]: 63: Hoare triple {6898#true} ~cond := #in~cond; {6898#true} is VALID [2018-11-18 23:00:28,432 INFO L273 TraceCheckUtils]: 64: Hoare triple {6898#true} assume !(0 == ~cond); {6898#true} is VALID [2018-11-18 23:00:28,432 INFO L273 TraceCheckUtils]: 65: Hoare triple {6898#true} assume true; {6898#true} is VALID [2018-11-18 23:00:28,433 INFO L268 TraceCheckUtils]: 66: Hoare quadruple {6898#true} {6899#false} #70#return; {6899#false} is VALID [2018-11-18 23:00:28,433 INFO L273 TraceCheckUtils]: 67: Hoare triple {6899#false} havoc #t~mem5;havoc #t~mem4; {6899#false} is VALID [2018-11-18 23:00:28,433 INFO L273 TraceCheckUtils]: 68: Hoare triple {6899#false} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {6899#false} is VALID [2018-11-18 23:00:28,433 INFO L273 TraceCheckUtils]: 69: Hoare triple {6899#false} assume true; {6899#false} is VALID [2018-11-18 23:00:28,433 INFO L273 TraceCheckUtils]: 70: Hoare triple {6899#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {6899#false} is VALID [2018-11-18 23:00:28,434 INFO L256 TraceCheckUtils]: 71: Hoare triple {6899#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {6898#true} is VALID [2018-11-18 23:00:28,434 INFO L273 TraceCheckUtils]: 72: Hoare triple {6898#true} ~cond := #in~cond; {6898#true} is VALID [2018-11-18 23:00:28,434 INFO L273 TraceCheckUtils]: 73: Hoare triple {6898#true} assume !(0 == ~cond); {6898#true} is VALID [2018-11-18 23:00:28,434 INFO L273 TraceCheckUtils]: 74: Hoare triple {6898#true} assume true; {6898#true} is VALID [2018-11-18 23:00:28,434 INFO L268 TraceCheckUtils]: 75: Hoare quadruple {6898#true} {6899#false} #70#return; {6899#false} is VALID [2018-11-18 23:00:28,434 INFO L273 TraceCheckUtils]: 76: Hoare triple {6899#false} havoc #t~mem5;havoc #t~mem4; {6899#false} is VALID [2018-11-18 23:00:28,435 INFO L273 TraceCheckUtils]: 77: Hoare triple {6899#false} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {6899#false} is VALID [2018-11-18 23:00:28,435 INFO L273 TraceCheckUtils]: 78: Hoare triple {6899#false} assume true; {6899#false} is VALID [2018-11-18 23:00:28,435 INFO L273 TraceCheckUtils]: 79: Hoare triple {6899#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {6899#false} is VALID [2018-11-18 23:00:28,435 INFO L256 TraceCheckUtils]: 80: Hoare triple {6899#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {6899#false} is VALID [2018-11-18 23:00:28,435 INFO L273 TraceCheckUtils]: 81: Hoare triple {6899#false} ~cond := #in~cond; {6899#false} is VALID [2018-11-18 23:00:28,435 INFO L273 TraceCheckUtils]: 82: Hoare triple {6899#false} assume 0 == ~cond; {6899#false} is VALID [2018-11-18 23:00:28,435 INFO L273 TraceCheckUtils]: 83: Hoare triple {6899#false} assume !false; {6899#false} is VALID [2018-11-18 23:00:28,440 INFO L134 CoverageAnalysis]: Checked inductivity of 364 backedges. 4 proven. 345 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2018-11-18 23:00:28,440 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-18 23:00:28,440 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-18 23:00:28,452 INFO L103 rtionOrderModulation]: Keeping assertion order MIX_INSIDE_OUTSIDE [2018-11-18 23:00:28,514 INFO L249 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 16 check-sat command(s) [2018-11-18 23:00:28,514 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-18 23:00:28,530 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 23:00:28,531 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 23:00:28,682 INFO L256 TraceCheckUtils]: 0: Hoare triple {6898#true} call ULTIMATE.init(); {6898#true} is VALID [2018-11-18 23:00:28,682 INFO L273 TraceCheckUtils]: 1: Hoare triple {6898#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {6898#true} is VALID [2018-11-18 23:00:28,682 INFO L273 TraceCheckUtils]: 2: Hoare triple {6898#true} assume true; {6898#true} is VALID [2018-11-18 23:00:28,683 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {6898#true} {6898#true} #64#return; {6898#true} is VALID [2018-11-18 23:00:28,683 INFO L256 TraceCheckUtils]: 4: Hoare triple {6898#true} call #t~ret6 := main(); {6898#true} is VALID [2018-11-18 23:00:28,683 INFO L273 TraceCheckUtils]: 5: Hoare triple {6898#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {6898#true} is VALID [2018-11-18 23:00:28,683 INFO L256 TraceCheckUtils]: 6: Hoare triple {6898#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {6898#true} is VALID [2018-11-18 23:00:28,684 INFO L273 TraceCheckUtils]: 7: Hoare triple {6898#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {6940#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:28,684 INFO L273 TraceCheckUtils]: 8: Hoare triple {6940#(<= _strcmp_~i~0 0)} assume true; {6940#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:28,685 INFO L273 TraceCheckUtils]: 9: Hoare triple {6940#(<= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6940#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:28,685 INFO L273 TraceCheckUtils]: 10: Hoare triple {6940#(<= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6901#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:28,685 INFO L273 TraceCheckUtils]: 11: Hoare triple {6901#(<= _strcmp_~i~0 1)} assume true; {6901#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:28,686 INFO L273 TraceCheckUtils]: 12: Hoare triple {6901#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6901#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:28,686 INFO L273 TraceCheckUtils]: 13: Hoare triple {6901#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6902#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:28,687 INFO L273 TraceCheckUtils]: 14: Hoare triple {6902#(<= _strcmp_~i~0 2)} assume true; {6902#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:28,688 INFO L273 TraceCheckUtils]: 15: Hoare triple {6902#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6902#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:28,688 INFO L273 TraceCheckUtils]: 16: Hoare triple {6902#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6903#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:28,689 INFO L273 TraceCheckUtils]: 17: Hoare triple {6903#(<= _strcmp_~i~0 3)} assume true; {6903#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:28,689 INFO L273 TraceCheckUtils]: 18: Hoare triple {6903#(<= _strcmp_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6903#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:28,690 INFO L273 TraceCheckUtils]: 19: Hoare triple {6903#(<= _strcmp_~i~0 3)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6904#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:28,691 INFO L273 TraceCheckUtils]: 20: Hoare triple {6904#(<= _strcmp_~i~0 4)} assume true; {6904#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:28,691 INFO L273 TraceCheckUtils]: 21: Hoare triple {6904#(<= _strcmp_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6904#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:28,692 INFO L273 TraceCheckUtils]: 22: Hoare triple {6904#(<= _strcmp_~i~0 4)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6905#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:28,693 INFO L273 TraceCheckUtils]: 23: Hoare triple {6905#(<= _strcmp_~i~0 5)} assume true; {6905#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:28,693 INFO L273 TraceCheckUtils]: 24: Hoare triple {6905#(<= _strcmp_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6905#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:28,694 INFO L273 TraceCheckUtils]: 25: Hoare triple {6905#(<= _strcmp_~i~0 5)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6906#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:28,695 INFO L273 TraceCheckUtils]: 26: Hoare triple {6906#(<= _strcmp_~i~0 6)} assume true; {6906#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:28,695 INFO L273 TraceCheckUtils]: 27: Hoare triple {6906#(<= _strcmp_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6906#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:28,696 INFO L273 TraceCheckUtils]: 28: Hoare triple {6906#(<= _strcmp_~i~0 6)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6907#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:28,696 INFO L273 TraceCheckUtils]: 29: Hoare triple {6907#(<= _strcmp_~i~0 7)} assume true; {6907#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:28,697 INFO L273 TraceCheckUtils]: 30: Hoare triple {6907#(<= _strcmp_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6907#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:28,698 INFO L273 TraceCheckUtils]: 31: Hoare triple {6907#(<= _strcmp_~i~0 7)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6908#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:28,698 INFO L273 TraceCheckUtils]: 32: Hoare triple {6908#(<= _strcmp_~i~0 8)} assume true; {6908#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:28,699 INFO L273 TraceCheckUtils]: 33: Hoare triple {6908#(<= _strcmp_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6908#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:28,700 INFO L273 TraceCheckUtils]: 34: Hoare triple {6908#(<= _strcmp_~i~0 8)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6909#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:28,700 INFO L273 TraceCheckUtils]: 35: Hoare triple {6909#(<= _strcmp_~i~0 9)} assume true; {6909#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:28,701 INFO L273 TraceCheckUtils]: 36: Hoare triple {6909#(<= _strcmp_~i~0 9)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6909#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:28,702 INFO L273 TraceCheckUtils]: 37: Hoare triple {6909#(<= _strcmp_~i~0 9)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6910#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:28,702 INFO L273 TraceCheckUtils]: 38: Hoare triple {6910#(<= _strcmp_~i~0 10)} assume true; {6910#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:28,703 INFO L273 TraceCheckUtils]: 39: Hoare triple {6910#(<= _strcmp_~i~0 10)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6910#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:28,704 INFO L273 TraceCheckUtils]: 40: Hoare triple {6910#(<= _strcmp_~i~0 10)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6911#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:28,704 INFO L273 TraceCheckUtils]: 41: Hoare triple {6911#(<= _strcmp_~i~0 11)} assume true; {6911#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:28,705 INFO L273 TraceCheckUtils]: 42: Hoare triple {6911#(<= _strcmp_~i~0 11)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6911#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:28,705 INFO L273 TraceCheckUtils]: 43: Hoare triple {6911#(<= _strcmp_~i~0 11)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6912#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:28,706 INFO L273 TraceCheckUtils]: 44: Hoare triple {6912#(<= _strcmp_~i~0 12)} assume true; {6912#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:28,707 INFO L273 TraceCheckUtils]: 45: Hoare triple {6912#(<= _strcmp_~i~0 12)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6912#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:28,707 INFO L273 TraceCheckUtils]: 46: Hoare triple {6912#(<= _strcmp_~i~0 12)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6913#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:28,708 INFO L273 TraceCheckUtils]: 47: Hoare triple {6913#(<= _strcmp_~i~0 13)} assume true; {6913#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:28,708 INFO L273 TraceCheckUtils]: 48: Hoare triple {6913#(<= _strcmp_~i~0 13)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6913#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:28,709 INFO L273 TraceCheckUtils]: 49: Hoare triple {6913#(<= _strcmp_~i~0 13)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6914#(<= _strcmp_~i~0 14)} is VALID [2018-11-18 23:00:28,710 INFO L273 TraceCheckUtils]: 50: Hoare triple {6914#(<= _strcmp_~i~0 14)} assume true; {6914#(<= _strcmp_~i~0 14)} is VALID [2018-11-18 23:00:28,710 INFO L273 TraceCheckUtils]: 51: Hoare triple {6914#(<= _strcmp_~i~0 14)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {6914#(<= _strcmp_~i~0 14)} is VALID [2018-11-18 23:00:28,711 INFO L273 TraceCheckUtils]: 52: Hoare triple {6914#(<= _strcmp_~i~0 14)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {6915#(<= _strcmp_~i~0 15)} is VALID [2018-11-18 23:00:28,712 INFO L273 TraceCheckUtils]: 53: Hoare triple {6915#(<= _strcmp_~i~0 15)} assume true; {6915#(<= _strcmp_~i~0 15)} is VALID [2018-11-18 23:00:28,712 INFO L273 TraceCheckUtils]: 54: Hoare triple {6915#(<= _strcmp_~i~0 15)} assume !(~i~0 < 100000); {6899#false} is VALID [2018-11-18 23:00:28,713 INFO L273 TraceCheckUtils]: 55: Hoare triple {6899#false} #res := 0; {6899#false} is VALID [2018-11-18 23:00:28,713 INFO L273 TraceCheckUtils]: 56: Hoare triple {6899#false} assume true; {6899#false} is VALID [2018-11-18 23:00:28,713 INFO L268 TraceCheckUtils]: 57: Hoare quadruple {6899#false} {6898#true} #68#return; {6899#false} is VALID [2018-11-18 23:00:28,713 INFO L273 TraceCheckUtils]: 58: Hoare triple {6899#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {6899#false} is VALID [2018-11-18 23:00:28,713 INFO L273 TraceCheckUtils]: 59: Hoare triple {6899#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {6899#false} is VALID [2018-11-18 23:00:28,714 INFO L273 TraceCheckUtils]: 60: Hoare triple {6899#false} assume true; {6899#false} is VALID [2018-11-18 23:00:28,714 INFO L273 TraceCheckUtils]: 61: Hoare triple {6899#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {6899#false} is VALID [2018-11-18 23:00:28,714 INFO L256 TraceCheckUtils]: 62: Hoare triple {6899#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {6899#false} is VALID [2018-11-18 23:00:28,714 INFO L273 TraceCheckUtils]: 63: Hoare triple {6899#false} ~cond := #in~cond; {6899#false} is VALID [2018-11-18 23:00:28,714 INFO L273 TraceCheckUtils]: 64: Hoare triple {6899#false} assume !(0 == ~cond); {6899#false} is VALID [2018-11-18 23:00:28,715 INFO L273 TraceCheckUtils]: 65: Hoare triple {6899#false} assume true; {6899#false} is VALID [2018-11-18 23:00:28,715 INFO L268 TraceCheckUtils]: 66: Hoare quadruple {6899#false} {6899#false} #70#return; {6899#false} is VALID [2018-11-18 23:00:28,715 INFO L273 TraceCheckUtils]: 67: Hoare triple {6899#false} havoc #t~mem5;havoc #t~mem4; {6899#false} is VALID [2018-11-18 23:00:28,715 INFO L273 TraceCheckUtils]: 68: Hoare triple {6899#false} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {6899#false} is VALID [2018-11-18 23:00:28,715 INFO L273 TraceCheckUtils]: 69: Hoare triple {6899#false} assume true; {6899#false} is VALID [2018-11-18 23:00:28,716 INFO L273 TraceCheckUtils]: 70: Hoare triple {6899#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {6899#false} is VALID [2018-11-18 23:00:28,716 INFO L256 TraceCheckUtils]: 71: Hoare triple {6899#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {6899#false} is VALID [2018-11-18 23:00:28,716 INFO L273 TraceCheckUtils]: 72: Hoare triple {6899#false} ~cond := #in~cond; {6899#false} is VALID [2018-11-18 23:00:28,716 INFO L273 TraceCheckUtils]: 73: Hoare triple {6899#false} assume !(0 == ~cond); {6899#false} is VALID [2018-11-18 23:00:28,716 INFO L273 TraceCheckUtils]: 74: Hoare triple {6899#false} assume true; {6899#false} is VALID [2018-11-18 23:00:28,717 INFO L268 TraceCheckUtils]: 75: Hoare quadruple {6899#false} {6899#false} #70#return; {6899#false} is VALID [2018-11-18 23:00:28,717 INFO L273 TraceCheckUtils]: 76: Hoare triple {6899#false} havoc #t~mem5;havoc #t~mem4; {6899#false} is VALID [2018-11-18 23:00:28,717 INFO L273 TraceCheckUtils]: 77: Hoare triple {6899#false} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {6899#false} is VALID [2018-11-18 23:00:28,717 INFO L273 TraceCheckUtils]: 78: Hoare triple {6899#false} assume true; {6899#false} is VALID [2018-11-18 23:00:28,717 INFO L273 TraceCheckUtils]: 79: Hoare triple {6899#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {6899#false} is VALID [2018-11-18 23:00:28,718 INFO L256 TraceCheckUtils]: 80: Hoare triple {6899#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {6899#false} is VALID [2018-11-18 23:00:28,718 INFO L273 TraceCheckUtils]: 81: Hoare triple {6899#false} ~cond := #in~cond; {6899#false} is VALID [2018-11-18 23:00:28,718 INFO L273 TraceCheckUtils]: 82: Hoare triple {6899#false} assume 0 == ~cond; {6899#false} is VALID [2018-11-18 23:00:28,718 INFO L273 TraceCheckUtils]: 83: Hoare triple {6899#false} assume !false; {6899#false} is VALID [2018-11-18 23:00:28,722 INFO L134 CoverageAnalysis]: Checked inductivity of 364 backedges. 0 proven. 345 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2018-11-18 23:00:28,742 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-18 23:00:28,742 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 18] total 19 [2018-11-18 23:00:28,742 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 84 [2018-11-18 23:00:28,743 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-18 23:00:28,743 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states. [2018-11-18 23:00:28,817 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-18 23:00:28,817 INFO L459 AbstractCegarLoop]: Interpolant automaton has 19 states [2018-11-18 23:00:28,818 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2018-11-18 23:00:28,818 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=171, Invalid=171, Unknown=0, NotChecked=0, Total=342 [2018-11-18 23:00:28,819 INFO L87 Difference]: Start difference. First operand 87 states and 88 transitions. Second operand 19 states. [2018-11-18 23:00:29,159 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 23:00:29,160 INFO L93 Difference]: Finished difference Result 123 states and 125 transitions. [2018-11-18 23:00:29,160 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2018-11-18 23:00:29,160 INFO L78 Accepts]: Start accepts. Automaton has 19 states. Word has length 84 [2018-11-18 23:00:29,160 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-18 23:00:29,160 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-18 23:00:29,162 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 93 transitions. [2018-11-18 23:00:29,162 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2018-11-18 23:00:29,163 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 93 transitions. [2018-11-18 23:00:29,163 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states and 93 transitions. [2018-11-18 23:00:29,251 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-18 23:00:29,253 INFO L225 Difference]: With dead ends: 123 [2018-11-18 23:00:29,253 INFO L226 Difference]: Without dead ends: 91 [2018-11-18 23:00:29,254 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 101 GetRequests, 84 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 28 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=171, Invalid=171, Unknown=0, NotChecked=0, Total=342 [2018-11-18 23:00:29,255 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 91 states. [2018-11-18 23:00:29,428 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 91 to 90. [2018-11-18 23:00:29,428 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-18 23:00:29,429 INFO L82 GeneralOperation]: Start isEquivalent. First operand 91 states. Second operand 90 states. [2018-11-18 23:00:29,429 INFO L74 IsIncluded]: Start isIncluded. First operand 91 states. Second operand 90 states. [2018-11-18 23:00:29,429 INFO L87 Difference]: Start difference. First operand 91 states. Second operand 90 states. [2018-11-18 23:00:29,431 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 23:00:29,431 INFO L93 Difference]: Finished difference Result 91 states and 92 transitions. [2018-11-18 23:00:29,431 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 92 transitions. [2018-11-18 23:00:29,432 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 23:00:29,432 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 23:00:29,432 INFO L74 IsIncluded]: Start isIncluded. First operand 90 states. Second operand 91 states. [2018-11-18 23:00:29,432 INFO L87 Difference]: Start difference. First operand 90 states. Second operand 91 states. [2018-11-18 23:00:29,434 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 23:00:29,434 INFO L93 Difference]: Finished difference Result 91 states and 92 transitions. [2018-11-18 23:00:29,434 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 92 transitions. [2018-11-18 23:00:29,434 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 23:00:29,434 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 23:00:29,435 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-18 23:00:29,435 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-18 23:00:29,435 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 90 states. [2018-11-18 23:00:29,436 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 90 states to 90 states and 91 transitions. [2018-11-18 23:00:29,437 INFO L78 Accepts]: Start accepts. Automaton has 90 states and 91 transitions. Word has length 84 [2018-11-18 23:00:29,437 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-18 23:00:29,437 INFO L480 AbstractCegarLoop]: Abstraction has 90 states and 91 transitions. [2018-11-18 23:00:29,437 INFO L481 AbstractCegarLoop]: Interpolant automaton has 19 states. [2018-11-18 23:00:29,437 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 91 transitions. [2018-11-18 23:00:29,438 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 88 [2018-11-18 23:00:29,438 INFO L367 BasicCegarLoop]: Found error trace [2018-11-18 23:00:29,438 INFO L375 BasicCegarLoop]: trace histogram [17, 16, 16, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-18 23:00:29,439 INFO L423 AbstractCegarLoop]: === Iteration 19 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-18 23:00:29,439 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 23:00:29,439 INFO L82 PathProgramCache]: Analyzing trace with hash 1072844130, now seen corresponding path program 7 times [2018-11-18 23:00:29,439 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 23:00:29,439 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 23:00:29,440 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 23:00:29,440 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-18 23:00:29,440 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 23:00:29,456 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 23:00:29,801 INFO L256 TraceCheckUtils]: 0: Hoare triple {7636#true} call ULTIMATE.init(); {7636#true} is VALID [2018-11-18 23:00:29,801 INFO L273 TraceCheckUtils]: 1: Hoare triple {7636#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {7636#true} is VALID [2018-11-18 23:00:29,801 INFO L273 TraceCheckUtils]: 2: Hoare triple {7636#true} assume true; {7636#true} is VALID [2018-11-18 23:00:29,801 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {7636#true} {7636#true} #64#return; {7636#true} is VALID [2018-11-18 23:00:29,802 INFO L256 TraceCheckUtils]: 4: Hoare triple {7636#true} call #t~ret6 := main(); {7636#true} is VALID [2018-11-18 23:00:29,802 INFO L273 TraceCheckUtils]: 5: Hoare triple {7636#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {7636#true} is VALID [2018-11-18 23:00:29,802 INFO L256 TraceCheckUtils]: 6: Hoare triple {7636#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {7636#true} is VALID [2018-11-18 23:00:29,802 INFO L273 TraceCheckUtils]: 7: Hoare triple {7636#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {7638#(= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:29,803 INFO L273 TraceCheckUtils]: 8: Hoare triple {7638#(= _strcmp_~i~0 0)} assume true; {7638#(= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:29,803 INFO L273 TraceCheckUtils]: 9: Hoare triple {7638#(= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7638#(= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:29,803 INFO L273 TraceCheckUtils]: 10: Hoare triple {7638#(= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7639#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:29,804 INFO L273 TraceCheckUtils]: 11: Hoare triple {7639#(<= _strcmp_~i~0 1)} assume true; {7639#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:29,804 INFO L273 TraceCheckUtils]: 12: Hoare triple {7639#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7639#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:29,805 INFO L273 TraceCheckUtils]: 13: Hoare triple {7639#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7640#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:29,806 INFO L273 TraceCheckUtils]: 14: Hoare triple {7640#(<= _strcmp_~i~0 2)} assume true; {7640#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:29,806 INFO L273 TraceCheckUtils]: 15: Hoare triple {7640#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7640#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:29,807 INFO L273 TraceCheckUtils]: 16: Hoare triple {7640#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7641#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:29,829 INFO L273 TraceCheckUtils]: 17: Hoare triple {7641#(<= _strcmp_~i~0 3)} assume true; {7641#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:29,846 INFO L273 TraceCheckUtils]: 18: Hoare triple {7641#(<= _strcmp_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7641#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:29,862 INFO L273 TraceCheckUtils]: 19: Hoare triple {7641#(<= _strcmp_~i~0 3)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7642#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:29,871 INFO L273 TraceCheckUtils]: 20: Hoare triple {7642#(<= _strcmp_~i~0 4)} assume true; {7642#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:29,886 INFO L273 TraceCheckUtils]: 21: Hoare triple {7642#(<= _strcmp_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7642#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:29,895 INFO L273 TraceCheckUtils]: 22: Hoare triple {7642#(<= _strcmp_~i~0 4)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7643#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:29,910 INFO L273 TraceCheckUtils]: 23: Hoare triple {7643#(<= _strcmp_~i~0 5)} assume true; {7643#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:29,919 INFO L273 TraceCheckUtils]: 24: Hoare triple {7643#(<= _strcmp_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7643#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:29,928 INFO L273 TraceCheckUtils]: 25: Hoare triple {7643#(<= _strcmp_~i~0 5)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7644#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:29,942 INFO L273 TraceCheckUtils]: 26: Hoare triple {7644#(<= _strcmp_~i~0 6)} assume true; {7644#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:29,951 INFO L273 TraceCheckUtils]: 27: Hoare triple {7644#(<= _strcmp_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7644#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:29,964 INFO L273 TraceCheckUtils]: 28: Hoare triple {7644#(<= _strcmp_~i~0 6)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7645#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:29,973 INFO L273 TraceCheckUtils]: 29: Hoare triple {7645#(<= _strcmp_~i~0 7)} assume true; {7645#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:29,985 INFO L273 TraceCheckUtils]: 30: Hoare triple {7645#(<= _strcmp_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7645#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:29,998 INFO L273 TraceCheckUtils]: 31: Hoare triple {7645#(<= _strcmp_~i~0 7)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7646#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:30,011 INFO L273 TraceCheckUtils]: 32: Hoare triple {7646#(<= _strcmp_~i~0 8)} assume true; {7646#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:30,024 INFO L273 TraceCheckUtils]: 33: Hoare triple {7646#(<= _strcmp_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7646#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:30,036 INFO L273 TraceCheckUtils]: 34: Hoare triple {7646#(<= _strcmp_~i~0 8)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7647#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:30,049 INFO L273 TraceCheckUtils]: 35: Hoare triple {7647#(<= _strcmp_~i~0 9)} assume true; {7647#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:30,062 INFO L273 TraceCheckUtils]: 36: Hoare triple {7647#(<= _strcmp_~i~0 9)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7647#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:30,071 INFO L273 TraceCheckUtils]: 37: Hoare triple {7647#(<= _strcmp_~i~0 9)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7648#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:30,083 INFO L273 TraceCheckUtils]: 38: Hoare triple {7648#(<= _strcmp_~i~0 10)} assume true; {7648#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:30,098 INFO L273 TraceCheckUtils]: 39: Hoare triple {7648#(<= _strcmp_~i~0 10)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7648#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:30,107 INFO L273 TraceCheckUtils]: 40: Hoare triple {7648#(<= _strcmp_~i~0 10)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7649#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:30,119 INFO L273 TraceCheckUtils]: 41: Hoare triple {7649#(<= _strcmp_~i~0 11)} assume true; {7649#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:30,132 INFO L273 TraceCheckUtils]: 42: Hoare triple {7649#(<= _strcmp_~i~0 11)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7649#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:30,145 INFO L273 TraceCheckUtils]: 43: Hoare triple {7649#(<= _strcmp_~i~0 11)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7650#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:30,159 INFO L273 TraceCheckUtils]: 44: Hoare triple {7650#(<= _strcmp_~i~0 12)} assume true; {7650#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:30,168 INFO L273 TraceCheckUtils]: 45: Hoare triple {7650#(<= _strcmp_~i~0 12)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7650#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:30,180 INFO L273 TraceCheckUtils]: 46: Hoare triple {7650#(<= _strcmp_~i~0 12)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7651#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:30,198 INFO L273 TraceCheckUtils]: 47: Hoare triple {7651#(<= _strcmp_~i~0 13)} assume true; {7651#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:30,207 INFO L273 TraceCheckUtils]: 48: Hoare triple {7651#(<= _strcmp_~i~0 13)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7651#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:30,220 INFO L273 TraceCheckUtils]: 49: Hoare triple {7651#(<= _strcmp_~i~0 13)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7652#(<= _strcmp_~i~0 14)} is VALID [2018-11-18 23:00:30,232 INFO L273 TraceCheckUtils]: 50: Hoare triple {7652#(<= _strcmp_~i~0 14)} assume true; {7652#(<= _strcmp_~i~0 14)} is VALID [2018-11-18 23:00:30,248 INFO L273 TraceCheckUtils]: 51: Hoare triple {7652#(<= _strcmp_~i~0 14)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7652#(<= _strcmp_~i~0 14)} is VALID [2018-11-18 23:00:30,263 INFO L273 TraceCheckUtils]: 52: Hoare triple {7652#(<= _strcmp_~i~0 14)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7653#(<= _strcmp_~i~0 15)} is VALID [2018-11-18 23:00:30,272 INFO L273 TraceCheckUtils]: 53: Hoare triple {7653#(<= _strcmp_~i~0 15)} assume true; {7653#(<= _strcmp_~i~0 15)} is VALID [2018-11-18 23:00:30,285 INFO L273 TraceCheckUtils]: 54: Hoare triple {7653#(<= _strcmp_~i~0 15)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7653#(<= _strcmp_~i~0 15)} is VALID [2018-11-18 23:00:30,297 INFO L273 TraceCheckUtils]: 55: Hoare triple {7653#(<= _strcmp_~i~0 15)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7654#(<= _strcmp_~i~0 16)} is VALID [2018-11-18 23:00:30,310 INFO L273 TraceCheckUtils]: 56: Hoare triple {7654#(<= _strcmp_~i~0 16)} assume true; {7654#(<= _strcmp_~i~0 16)} is VALID [2018-11-18 23:00:30,321 INFO L273 TraceCheckUtils]: 57: Hoare triple {7654#(<= _strcmp_~i~0 16)} assume !(~i~0 < 100000); {7637#false} is VALID [2018-11-18 23:00:30,321 INFO L273 TraceCheckUtils]: 58: Hoare triple {7637#false} #res := 0; {7637#false} is VALID [2018-11-18 23:00:30,321 INFO L273 TraceCheckUtils]: 59: Hoare triple {7637#false} assume true; {7637#false} is VALID [2018-11-18 23:00:30,321 INFO L268 TraceCheckUtils]: 60: Hoare quadruple {7637#false} {7636#true} #68#return; {7637#false} is VALID [2018-11-18 23:00:30,321 INFO L273 TraceCheckUtils]: 61: Hoare triple {7637#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {7637#false} is VALID [2018-11-18 23:00:30,321 INFO L273 TraceCheckUtils]: 62: Hoare triple {7637#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {7637#false} is VALID [2018-11-18 23:00:30,321 INFO L273 TraceCheckUtils]: 63: Hoare triple {7637#false} assume true; {7637#false} is VALID [2018-11-18 23:00:30,322 INFO L273 TraceCheckUtils]: 64: Hoare triple {7637#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {7637#false} is VALID [2018-11-18 23:00:30,322 INFO L256 TraceCheckUtils]: 65: Hoare triple {7637#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {7636#true} is VALID [2018-11-18 23:00:30,322 INFO L273 TraceCheckUtils]: 66: Hoare triple {7636#true} ~cond := #in~cond; {7636#true} is VALID [2018-11-18 23:00:30,322 INFO L273 TraceCheckUtils]: 67: Hoare triple {7636#true} assume !(0 == ~cond); {7636#true} is VALID [2018-11-18 23:00:30,322 INFO L273 TraceCheckUtils]: 68: Hoare triple {7636#true} assume true; {7636#true} is VALID [2018-11-18 23:00:30,322 INFO L268 TraceCheckUtils]: 69: Hoare quadruple {7636#true} {7637#false} #70#return; {7637#false} is VALID [2018-11-18 23:00:30,322 INFO L273 TraceCheckUtils]: 70: Hoare triple {7637#false} havoc #t~mem5;havoc #t~mem4; {7637#false} is VALID [2018-11-18 23:00:30,322 INFO L273 TraceCheckUtils]: 71: Hoare triple {7637#false} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {7637#false} is VALID [2018-11-18 23:00:30,322 INFO L273 TraceCheckUtils]: 72: Hoare triple {7637#false} assume true; {7637#false} is VALID [2018-11-18 23:00:30,323 INFO L273 TraceCheckUtils]: 73: Hoare triple {7637#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {7637#false} is VALID [2018-11-18 23:00:30,323 INFO L256 TraceCheckUtils]: 74: Hoare triple {7637#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {7636#true} is VALID [2018-11-18 23:00:30,323 INFO L273 TraceCheckUtils]: 75: Hoare triple {7636#true} ~cond := #in~cond; {7636#true} is VALID [2018-11-18 23:00:30,323 INFO L273 TraceCheckUtils]: 76: Hoare triple {7636#true} assume !(0 == ~cond); {7636#true} is VALID [2018-11-18 23:00:30,323 INFO L273 TraceCheckUtils]: 77: Hoare triple {7636#true} assume true; {7636#true} is VALID [2018-11-18 23:00:30,323 INFO L268 TraceCheckUtils]: 78: Hoare quadruple {7636#true} {7637#false} #70#return; {7637#false} is VALID [2018-11-18 23:00:30,323 INFO L273 TraceCheckUtils]: 79: Hoare triple {7637#false} havoc #t~mem5;havoc #t~mem4; {7637#false} is VALID [2018-11-18 23:00:30,323 INFO L273 TraceCheckUtils]: 80: Hoare triple {7637#false} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {7637#false} is VALID [2018-11-18 23:00:30,324 INFO L273 TraceCheckUtils]: 81: Hoare triple {7637#false} assume true; {7637#false} is VALID [2018-11-18 23:00:30,324 INFO L273 TraceCheckUtils]: 82: Hoare triple {7637#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {7637#false} is VALID [2018-11-18 23:00:30,324 INFO L256 TraceCheckUtils]: 83: Hoare triple {7637#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {7637#false} is VALID [2018-11-18 23:00:30,324 INFO L273 TraceCheckUtils]: 84: Hoare triple {7637#false} ~cond := #in~cond; {7637#false} is VALID [2018-11-18 23:00:30,324 INFO L273 TraceCheckUtils]: 85: Hoare triple {7637#false} assume 0 == ~cond; {7637#false} is VALID [2018-11-18 23:00:30,324 INFO L273 TraceCheckUtils]: 86: Hoare triple {7637#false} assume !false; {7637#false} is VALID [2018-11-18 23:00:30,330 INFO L134 CoverageAnalysis]: Checked inductivity of 411 backedges. 4 proven. 392 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2018-11-18 23:00:30,330 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-18 23:00:30,331 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 17 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 17 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-18 23:00:30,342 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 23:00:30,386 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 23:00:30,404 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 23:00:30,405 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 23:00:30,914 INFO L256 TraceCheckUtils]: 0: Hoare triple {7636#true} call ULTIMATE.init(); {7636#true} is VALID [2018-11-18 23:00:30,914 INFO L273 TraceCheckUtils]: 1: Hoare triple {7636#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {7636#true} is VALID [2018-11-18 23:00:30,914 INFO L273 TraceCheckUtils]: 2: Hoare triple {7636#true} assume true; {7636#true} is VALID [2018-11-18 23:00:30,915 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {7636#true} {7636#true} #64#return; {7636#true} is VALID [2018-11-18 23:00:30,915 INFO L256 TraceCheckUtils]: 4: Hoare triple {7636#true} call #t~ret6 := main(); {7636#true} is VALID [2018-11-18 23:00:30,915 INFO L273 TraceCheckUtils]: 5: Hoare triple {7636#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {7636#true} is VALID [2018-11-18 23:00:30,915 INFO L256 TraceCheckUtils]: 6: Hoare triple {7636#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {7636#true} is VALID [2018-11-18 23:00:30,915 INFO L273 TraceCheckUtils]: 7: Hoare triple {7636#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {7679#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:30,916 INFO L273 TraceCheckUtils]: 8: Hoare triple {7679#(<= _strcmp_~i~0 0)} assume true; {7679#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:30,916 INFO L273 TraceCheckUtils]: 9: Hoare triple {7679#(<= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7679#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:30,917 INFO L273 TraceCheckUtils]: 10: Hoare triple {7679#(<= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7639#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:30,917 INFO L273 TraceCheckUtils]: 11: Hoare triple {7639#(<= _strcmp_~i~0 1)} assume true; {7639#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:30,917 INFO L273 TraceCheckUtils]: 12: Hoare triple {7639#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7639#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:30,918 INFO L273 TraceCheckUtils]: 13: Hoare triple {7639#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7640#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:30,918 INFO L273 TraceCheckUtils]: 14: Hoare triple {7640#(<= _strcmp_~i~0 2)} assume true; {7640#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:30,919 INFO L273 TraceCheckUtils]: 15: Hoare triple {7640#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7640#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:30,919 INFO L273 TraceCheckUtils]: 16: Hoare triple {7640#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7641#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:30,920 INFO L273 TraceCheckUtils]: 17: Hoare triple {7641#(<= _strcmp_~i~0 3)} assume true; {7641#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:30,920 INFO L273 TraceCheckUtils]: 18: Hoare triple {7641#(<= _strcmp_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7641#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:30,921 INFO L273 TraceCheckUtils]: 19: Hoare triple {7641#(<= _strcmp_~i~0 3)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7642#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:30,922 INFO L273 TraceCheckUtils]: 20: Hoare triple {7642#(<= _strcmp_~i~0 4)} assume true; {7642#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:30,922 INFO L273 TraceCheckUtils]: 21: Hoare triple {7642#(<= _strcmp_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7642#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:30,923 INFO L273 TraceCheckUtils]: 22: Hoare triple {7642#(<= _strcmp_~i~0 4)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7643#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:30,924 INFO L273 TraceCheckUtils]: 23: Hoare triple {7643#(<= _strcmp_~i~0 5)} assume true; {7643#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:30,924 INFO L273 TraceCheckUtils]: 24: Hoare triple {7643#(<= _strcmp_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7643#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:30,925 INFO L273 TraceCheckUtils]: 25: Hoare triple {7643#(<= _strcmp_~i~0 5)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7644#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:30,926 INFO L273 TraceCheckUtils]: 26: Hoare triple {7644#(<= _strcmp_~i~0 6)} assume true; {7644#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:30,926 INFO L273 TraceCheckUtils]: 27: Hoare triple {7644#(<= _strcmp_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7644#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:30,927 INFO L273 TraceCheckUtils]: 28: Hoare triple {7644#(<= _strcmp_~i~0 6)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7645#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:30,927 INFO L273 TraceCheckUtils]: 29: Hoare triple {7645#(<= _strcmp_~i~0 7)} assume true; {7645#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:30,928 INFO L273 TraceCheckUtils]: 30: Hoare triple {7645#(<= _strcmp_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7645#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:30,929 INFO L273 TraceCheckUtils]: 31: Hoare triple {7645#(<= _strcmp_~i~0 7)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7646#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:30,929 INFO L273 TraceCheckUtils]: 32: Hoare triple {7646#(<= _strcmp_~i~0 8)} assume true; {7646#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:30,930 INFO L273 TraceCheckUtils]: 33: Hoare triple {7646#(<= _strcmp_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7646#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:30,931 INFO L273 TraceCheckUtils]: 34: Hoare triple {7646#(<= _strcmp_~i~0 8)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7647#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:30,931 INFO L273 TraceCheckUtils]: 35: Hoare triple {7647#(<= _strcmp_~i~0 9)} assume true; {7647#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:30,932 INFO L273 TraceCheckUtils]: 36: Hoare triple {7647#(<= _strcmp_~i~0 9)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7647#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:30,932 INFO L273 TraceCheckUtils]: 37: Hoare triple {7647#(<= _strcmp_~i~0 9)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7648#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:30,933 INFO L273 TraceCheckUtils]: 38: Hoare triple {7648#(<= _strcmp_~i~0 10)} assume true; {7648#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:30,934 INFO L273 TraceCheckUtils]: 39: Hoare triple {7648#(<= _strcmp_~i~0 10)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7648#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:30,934 INFO L273 TraceCheckUtils]: 40: Hoare triple {7648#(<= _strcmp_~i~0 10)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7649#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:30,935 INFO L273 TraceCheckUtils]: 41: Hoare triple {7649#(<= _strcmp_~i~0 11)} assume true; {7649#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:30,935 INFO L273 TraceCheckUtils]: 42: Hoare triple {7649#(<= _strcmp_~i~0 11)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7649#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:30,936 INFO L273 TraceCheckUtils]: 43: Hoare triple {7649#(<= _strcmp_~i~0 11)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7650#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:30,937 INFO L273 TraceCheckUtils]: 44: Hoare triple {7650#(<= _strcmp_~i~0 12)} assume true; {7650#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:30,937 INFO L273 TraceCheckUtils]: 45: Hoare triple {7650#(<= _strcmp_~i~0 12)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7650#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:30,938 INFO L273 TraceCheckUtils]: 46: Hoare triple {7650#(<= _strcmp_~i~0 12)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7651#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:30,939 INFO L273 TraceCheckUtils]: 47: Hoare triple {7651#(<= _strcmp_~i~0 13)} assume true; {7651#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:30,939 INFO L273 TraceCheckUtils]: 48: Hoare triple {7651#(<= _strcmp_~i~0 13)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7651#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:30,940 INFO L273 TraceCheckUtils]: 49: Hoare triple {7651#(<= _strcmp_~i~0 13)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7652#(<= _strcmp_~i~0 14)} is VALID [2018-11-18 23:00:30,940 INFO L273 TraceCheckUtils]: 50: Hoare triple {7652#(<= _strcmp_~i~0 14)} assume true; {7652#(<= _strcmp_~i~0 14)} is VALID [2018-11-18 23:00:30,941 INFO L273 TraceCheckUtils]: 51: Hoare triple {7652#(<= _strcmp_~i~0 14)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7652#(<= _strcmp_~i~0 14)} is VALID [2018-11-18 23:00:30,942 INFO L273 TraceCheckUtils]: 52: Hoare triple {7652#(<= _strcmp_~i~0 14)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7653#(<= _strcmp_~i~0 15)} is VALID [2018-11-18 23:00:30,942 INFO L273 TraceCheckUtils]: 53: Hoare triple {7653#(<= _strcmp_~i~0 15)} assume true; {7653#(<= _strcmp_~i~0 15)} is VALID [2018-11-18 23:00:30,943 INFO L273 TraceCheckUtils]: 54: Hoare triple {7653#(<= _strcmp_~i~0 15)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {7653#(<= _strcmp_~i~0 15)} is VALID [2018-11-18 23:00:30,944 INFO L273 TraceCheckUtils]: 55: Hoare triple {7653#(<= _strcmp_~i~0 15)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {7654#(<= _strcmp_~i~0 16)} is VALID [2018-11-18 23:00:30,944 INFO L273 TraceCheckUtils]: 56: Hoare triple {7654#(<= _strcmp_~i~0 16)} assume true; {7654#(<= _strcmp_~i~0 16)} is VALID [2018-11-18 23:00:30,945 INFO L273 TraceCheckUtils]: 57: Hoare triple {7654#(<= _strcmp_~i~0 16)} assume !(~i~0 < 100000); {7637#false} is VALID [2018-11-18 23:00:30,945 INFO L273 TraceCheckUtils]: 58: Hoare triple {7637#false} #res := 0; {7637#false} is VALID [2018-11-18 23:00:30,945 INFO L273 TraceCheckUtils]: 59: Hoare triple {7637#false} assume true; {7637#false} is VALID [2018-11-18 23:00:30,946 INFO L268 TraceCheckUtils]: 60: Hoare quadruple {7637#false} {7636#true} #68#return; {7637#false} is VALID [2018-11-18 23:00:30,946 INFO L273 TraceCheckUtils]: 61: Hoare triple {7637#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {7637#false} is VALID [2018-11-18 23:00:30,946 INFO L273 TraceCheckUtils]: 62: Hoare triple {7637#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {7637#false} is VALID [2018-11-18 23:00:30,946 INFO L273 TraceCheckUtils]: 63: Hoare triple {7637#false} assume true; {7637#false} is VALID [2018-11-18 23:00:30,946 INFO L273 TraceCheckUtils]: 64: Hoare triple {7637#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {7637#false} is VALID [2018-11-18 23:00:30,947 INFO L256 TraceCheckUtils]: 65: Hoare triple {7637#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {7637#false} is VALID [2018-11-18 23:00:30,947 INFO L273 TraceCheckUtils]: 66: Hoare triple {7637#false} ~cond := #in~cond; {7637#false} is VALID [2018-11-18 23:00:30,947 INFO L273 TraceCheckUtils]: 67: Hoare triple {7637#false} assume !(0 == ~cond); {7637#false} is VALID [2018-11-18 23:00:30,947 INFO L273 TraceCheckUtils]: 68: Hoare triple {7637#false} assume true; {7637#false} is VALID [2018-11-18 23:00:30,947 INFO L268 TraceCheckUtils]: 69: Hoare quadruple {7637#false} {7637#false} #70#return; {7637#false} is VALID [2018-11-18 23:00:30,948 INFO L273 TraceCheckUtils]: 70: Hoare triple {7637#false} havoc #t~mem5;havoc #t~mem4; {7637#false} is VALID [2018-11-18 23:00:30,948 INFO L273 TraceCheckUtils]: 71: Hoare triple {7637#false} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {7637#false} is VALID [2018-11-18 23:00:30,948 INFO L273 TraceCheckUtils]: 72: Hoare triple {7637#false} assume true; {7637#false} is VALID [2018-11-18 23:00:30,948 INFO L273 TraceCheckUtils]: 73: Hoare triple {7637#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {7637#false} is VALID [2018-11-18 23:00:30,948 INFO L256 TraceCheckUtils]: 74: Hoare triple {7637#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {7637#false} is VALID [2018-11-18 23:00:30,948 INFO L273 TraceCheckUtils]: 75: Hoare triple {7637#false} ~cond := #in~cond; {7637#false} is VALID [2018-11-18 23:00:30,949 INFO L273 TraceCheckUtils]: 76: Hoare triple {7637#false} assume !(0 == ~cond); {7637#false} is VALID [2018-11-18 23:00:30,949 INFO L273 TraceCheckUtils]: 77: Hoare triple {7637#false} assume true; {7637#false} is VALID [2018-11-18 23:00:30,949 INFO L268 TraceCheckUtils]: 78: Hoare quadruple {7637#false} {7637#false} #70#return; {7637#false} is VALID [2018-11-18 23:00:30,949 INFO L273 TraceCheckUtils]: 79: Hoare triple {7637#false} havoc #t~mem5;havoc #t~mem4; {7637#false} is VALID [2018-11-18 23:00:30,949 INFO L273 TraceCheckUtils]: 80: Hoare triple {7637#false} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {7637#false} is VALID [2018-11-18 23:00:30,949 INFO L273 TraceCheckUtils]: 81: Hoare triple {7637#false} assume true; {7637#false} is VALID [2018-11-18 23:00:30,949 INFO L273 TraceCheckUtils]: 82: Hoare triple {7637#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {7637#false} is VALID [2018-11-18 23:00:30,949 INFO L256 TraceCheckUtils]: 83: Hoare triple {7637#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {7637#false} is VALID [2018-11-18 23:00:30,949 INFO L273 TraceCheckUtils]: 84: Hoare triple {7637#false} ~cond := #in~cond; {7637#false} is VALID [2018-11-18 23:00:30,950 INFO L273 TraceCheckUtils]: 85: Hoare triple {7637#false} assume 0 == ~cond; {7637#false} is VALID [2018-11-18 23:00:30,950 INFO L273 TraceCheckUtils]: 86: Hoare triple {7637#false} assume !false; {7637#false} is VALID [2018-11-18 23:00:30,954 INFO L134 CoverageAnalysis]: Checked inductivity of 411 backedges. 0 proven. 392 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2018-11-18 23:00:30,974 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-18 23:00:30,975 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 19] total 20 [2018-11-18 23:00:30,976 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 87 [2018-11-18 23:00:30,976 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-18 23:00:30,976 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states. [2018-11-18 23:00:31,054 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-18 23:00:31,054 INFO L459 AbstractCegarLoop]: Interpolant automaton has 20 states [2018-11-18 23:00:31,054 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2018-11-18 23:00:31,055 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=190, Invalid=190, Unknown=0, NotChecked=0, Total=380 [2018-11-18 23:00:31,055 INFO L87 Difference]: Start difference. First operand 90 states and 91 transitions. Second operand 20 states. [2018-11-18 23:00:31,394 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 23:00:31,394 INFO L93 Difference]: Finished difference Result 126 states and 128 transitions. [2018-11-18 23:00:31,395 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2018-11-18 23:00:31,395 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 87 [2018-11-18 23:00:31,395 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-18 23:00:31,395 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2018-11-18 23:00:31,396 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 96 transitions. [2018-11-18 23:00:31,396 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2018-11-18 23:00:31,397 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 96 transitions. [2018-11-18 23:00:31,397 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states and 96 transitions. [2018-11-18 23:00:31,507 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 96 edges. 96 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-18 23:00:31,509 INFO L225 Difference]: With dead ends: 126 [2018-11-18 23:00:31,509 INFO L226 Difference]: Without dead ends: 94 [2018-11-18 23:00:31,510 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 105 GetRequests, 87 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 30 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=190, Invalid=190, Unknown=0, NotChecked=0, Total=380 [2018-11-18 23:00:31,510 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 94 states. [2018-11-18 23:00:31,654 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 94 to 93. [2018-11-18 23:00:31,654 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-18 23:00:31,654 INFO L82 GeneralOperation]: Start isEquivalent. First operand 94 states. Second operand 93 states. [2018-11-18 23:00:31,654 INFO L74 IsIncluded]: Start isIncluded. First operand 94 states. Second operand 93 states. [2018-11-18 23:00:31,655 INFO L87 Difference]: Start difference. First operand 94 states. Second operand 93 states. [2018-11-18 23:00:31,657 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 23:00:31,657 INFO L93 Difference]: Finished difference Result 94 states and 95 transitions. [2018-11-18 23:00:31,657 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 95 transitions. [2018-11-18 23:00:31,658 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 23:00:31,658 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 23:00:31,658 INFO L74 IsIncluded]: Start isIncluded. First operand 93 states. Second operand 94 states. [2018-11-18 23:00:31,658 INFO L87 Difference]: Start difference. First operand 93 states. Second operand 94 states. [2018-11-18 23:00:31,659 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 23:00:31,660 INFO L93 Difference]: Finished difference Result 94 states and 95 transitions. [2018-11-18 23:00:31,660 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 95 transitions. [2018-11-18 23:00:31,660 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 23:00:31,660 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 23:00:31,660 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-18 23:00:31,661 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-18 23:00:31,661 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 93 states. [2018-11-18 23:00:31,662 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 93 states to 93 states and 94 transitions. [2018-11-18 23:00:31,662 INFO L78 Accepts]: Start accepts. Automaton has 93 states and 94 transitions. Word has length 87 [2018-11-18 23:00:31,662 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-18 23:00:31,663 INFO L480 AbstractCegarLoop]: Abstraction has 93 states and 94 transitions. [2018-11-18 23:00:31,663 INFO L481 AbstractCegarLoop]: Interpolant automaton has 20 states. [2018-11-18 23:00:31,663 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 94 transitions. [2018-11-18 23:00:31,663 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 91 [2018-11-18 23:00:31,664 INFO L367 BasicCegarLoop]: Found error trace [2018-11-18 23:00:31,664 INFO L375 BasicCegarLoop]: trace histogram [18, 17, 17, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-18 23:00:31,664 INFO L423 AbstractCegarLoop]: === Iteration 20 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-18 23:00:31,664 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 23:00:31,664 INFO L82 PathProgramCache]: Analyzing trace with hash -554240506, now seen corresponding path program 8 times [2018-11-18 23:00:31,664 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 23:00:31,665 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 23:00:31,665 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 23:00:31,665 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 23:00:31,665 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 23:00:31,687 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 23:00:32,078 INFO L256 TraceCheckUtils]: 0: Hoare triple {8398#true} call ULTIMATE.init(); {8398#true} is VALID [2018-11-18 23:00:32,078 INFO L273 TraceCheckUtils]: 1: Hoare triple {8398#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {8398#true} is VALID [2018-11-18 23:00:32,078 INFO L273 TraceCheckUtils]: 2: Hoare triple {8398#true} assume true; {8398#true} is VALID [2018-11-18 23:00:32,078 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {8398#true} {8398#true} #64#return; {8398#true} is VALID [2018-11-18 23:00:32,079 INFO L256 TraceCheckUtils]: 4: Hoare triple {8398#true} call #t~ret6 := main(); {8398#true} is VALID [2018-11-18 23:00:32,079 INFO L273 TraceCheckUtils]: 5: Hoare triple {8398#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {8398#true} is VALID [2018-11-18 23:00:32,079 INFO L256 TraceCheckUtils]: 6: Hoare triple {8398#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {8398#true} is VALID [2018-11-18 23:00:32,080 INFO L273 TraceCheckUtils]: 7: Hoare triple {8398#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {8400#(= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:32,080 INFO L273 TraceCheckUtils]: 8: Hoare triple {8400#(= _strcmp_~i~0 0)} assume true; {8400#(= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:32,081 INFO L273 TraceCheckUtils]: 9: Hoare triple {8400#(= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8400#(= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:32,081 INFO L273 TraceCheckUtils]: 10: Hoare triple {8400#(= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8401#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:32,081 INFO L273 TraceCheckUtils]: 11: Hoare triple {8401#(<= _strcmp_~i~0 1)} assume true; {8401#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:32,082 INFO L273 TraceCheckUtils]: 12: Hoare triple {8401#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8401#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:32,082 INFO L273 TraceCheckUtils]: 13: Hoare triple {8401#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8402#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:32,083 INFO L273 TraceCheckUtils]: 14: Hoare triple {8402#(<= _strcmp_~i~0 2)} assume true; {8402#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:32,083 INFO L273 TraceCheckUtils]: 15: Hoare triple {8402#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8402#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:32,084 INFO L273 TraceCheckUtils]: 16: Hoare triple {8402#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8403#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:32,085 INFO L273 TraceCheckUtils]: 17: Hoare triple {8403#(<= _strcmp_~i~0 3)} assume true; {8403#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:32,085 INFO L273 TraceCheckUtils]: 18: Hoare triple {8403#(<= _strcmp_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8403#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:32,086 INFO L273 TraceCheckUtils]: 19: Hoare triple {8403#(<= _strcmp_~i~0 3)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8404#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:32,086 INFO L273 TraceCheckUtils]: 20: Hoare triple {8404#(<= _strcmp_~i~0 4)} assume true; {8404#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:32,087 INFO L273 TraceCheckUtils]: 21: Hoare triple {8404#(<= _strcmp_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8404#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:32,088 INFO L273 TraceCheckUtils]: 22: Hoare triple {8404#(<= _strcmp_~i~0 4)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8405#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:32,088 INFO L273 TraceCheckUtils]: 23: Hoare triple {8405#(<= _strcmp_~i~0 5)} assume true; {8405#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:32,089 INFO L273 TraceCheckUtils]: 24: Hoare triple {8405#(<= _strcmp_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8405#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:32,090 INFO L273 TraceCheckUtils]: 25: Hoare triple {8405#(<= _strcmp_~i~0 5)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8406#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:32,090 INFO L273 TraceCheckUtils]: 26: Hoare triple {8406#(<= _strcmp_~i~0 6)} assume true; {8406#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:32,091 INFO L273 TraceCheckUtils]: 27: Hoare triple {8406#(<= _strcmp_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8406#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:32,091 INFO L273 TraceCheckUtils]: 28: Hoare triple {8406#(<= _strcmp_~i~0 6)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8407#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:32,092 INFO L273 TraceCheckUtils]: 29: Hoare triple {8407#(<= _strcmp_~i~0 7)} assume true; {8407#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:32,093 INFO L273 TraceCheckUtils]: 30: Hoare triple {8407#(<= _strcmp_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8407#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:32,093 INFO L273 TraceCheckUtils]: 31: Hoare triple {8407#(<= _strcmp_~i~0 7)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8408#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:32,094 INFO L273 TraceCheckUtils]: 32: Hoare triple {8408#(<= _strcmp_~i~0 8)} assume true; {8408#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:32,094 INFO L273 TraceCheckUtils]: 33: Hoare triple {8408#(<= _strcmp_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8408#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:32,095 INFO L273 TraceCheckUtils]: 34: Hoare triple {8408#(<= _strcmp_~i~0 8)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8409#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:32,096 INFO L273 TraceCheckUtils]: 35: Hoare triple {8409#(<= _strcmp_~i~0 9)} assume true; {8409#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:32,096 INFO L273 TraceCheckUtils]: 36: Hoare triple {8409#(<= _strcmp_~i~0 9)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8409#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:32,097 INFO L273 TraceCheckUtils]: 37: Hoare triple {8409#(<= _strcmp_~i~0 9)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8410#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:32,098 INFO L273 TraceCheckUtils]: 38: Hoare triple {8410#(<= _strcmp_~i~0 10)} assume true; {8410#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:32,098 INFO L273 TraceCheckUtils]: 39: Hoare triple {8410#(<= _strcmp_~i~0 10)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8410#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:32,099 INFO L273 TraceCheckUtils]: 40: Hoare triple {8410#(<= _strcmp_~i~0 10)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8411#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:32,100 INFO L273 TraceCheckUtils]: 41: Hoare triple {8411#(<= _strcmp_~i~0 11)} assume true; {8411#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:32,100 INFO L273 TraceCheckUtils]: 42: Hoare triple {8411#(<= _strcmp_~i~0 11)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8411#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:32,101 INFO L273 TraceCheckUtils]: 43: Hoare triple {8411#(<= _strcmp_~i~0 11)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8412#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:32,101 INFO L273 TraceCheckUtils]: 44: Hoare triple {8412#(<= _strcmp_~i~0 12)} assume true; {8412#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:32,102 INFO L273 TraceCheckUtils]: 45: Hoare triple {8412#(<= _strcmp_~i~0 12)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8412#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:32,103 INFO L273 TraceCheckUtils]: 46: Hoare triple {8412#(<= _strcmp_~i~0 12)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8413#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:32,103 INFO L273 TraceCheckUtils]: 47: Hoare triple {8413#(<= _strcmp_~i~0 13)} assume true; {8413#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:32,104 INFO L273 TraceCheckUtils]: 48: Hoare triple {8413#(<= _strcmp_~i~0 13)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8413#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:32,105 INFO L273 TraceCheckUtils]: 49: Hoare triple {8413#(<= _strcmp_~i~0 13)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8414#(<= _strcmp_~i~0 14)} is VALID [2018-11-18 23:00:32,105 INFO L273 TraceCheckUtils]: 50: Hoare triple {8414#(<= _strcmp_~i~0 14)} assume true; {8414#(<= _strcmp_~i~0 14)} is VALID [2018-11-18 23:00:32,106 INFO L273 TraceCheckUtils]: 51: Hoare triple {8414#(<= _strcmp_~i~0 14)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8414#(<= _strcmp_~i~0 14)} is VALID [2018-11-18 23:00:32,106 INFO L273 TraceCheckUtils]: 52: Hoare triple {8414#(<= _strcmp_~i~0 14)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8415#(<= _strcmp_~i~0 15)} is VALID [2018-11-18 23:00:32,107 INFO L273 TraceCheckUtils]: 53: Hoare triple {8415#(<= _strcmp_~i~0 15)} assume true; {8415#(<= _strcmp_~i~0 15)} is VALID [2018-11-18 23:00:32,108 INFO L273 TraceCheckUtils]: 54: Hoare triple {8415#(<= _strcmp_~i~0 15)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8415#(<= _strcmp_~i~0 15)} is VALID [2018-11-18 23:00:32,108 INFO L273 TraceCheckUtils]: 55: Hoare triple {8415#(<= _strcmp_~i~0 15)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8416#(<= _strcmp_~i~0 16)} is VALID [2018-11-18 23:00:32,109 INFO L273 TraceCheckUtils]: 56: Hoare triple {8416#(<= _strcmp_~i~0 16)} assume true; {8416#(<= _strcmp_~i~0 16)} is VALID [2018-11-18 23:00:32,109 INFO L273 TraceCheckUtils]: 57: Hoare triple {8416#(<= _strcmp_~i~0 16)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8416#(<= _strcmp_~i~0 16)} is VALID [2018-11-18 23:00:32,110 INFO L273 TraceCheckUtils]: 58: Hoare triple {8416#(<= _strcmp_~i~0 16)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8417#(<= _strcmp_~i~0 17)} is VALID [2018-11-18 23:00:32,111 INFO L273 TraceCheckUtils]: 59: Hoare triple {8417#(<= _strcmp_~i~0 17)} assume true; {8417#(<= _strcmp_~i~0 17)} is VALID [2018-11-18 23:00:32,111 INFO L273 TraceCheckUtils]: 60: Hoare triple {8417#(<= _strcmp_~i~0 17)} assume !(~i~0 < 100000); {8399#false} is VALID [2018-11-18 23:00:32,112 INFO L273 TraceCheckUtils]: 61: Hoare triple {8399#false} #res := 0; {8399#false} is VALID [2018-11-18 23:00:32,112 INFO L273 TraceCheckUtils]: 62: Hoare triple {8399#false} assume true; {8399#false} is VALID [2018-11-18 23:00:32,112 INFO L268 TraceCheckUtils]: 63: Hoare quadruple {8399#false} {8398#true} #68#return; {8399#false} is VALID [2018-11-18 23:00:32,112 INFO L273 TraceCheckUtils]: 64: Hoare triple {8399#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {8399#false} is VALID [2018-11-18 23:00:32,112 INFO L273 TraceCheckUtils]: 65: Hoare triple {8399#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {8399#false} is VALID [2018-11-18 23:00:32,113 INFO L273 TraceCheckUtils]: 66: Hoare triple {8399#false} assume true; {8399#false} is VALID [2018-11-18 23:00:32,113 INFO L273 TraceCheckUtils]: 67: Hoare triple {8399#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {8399#false} is VALID [2018-11-18 23:00:32,113 INFO L256 TraceCheckUtils]: 68: Hoare triple {8399#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {8398#true} is VALID [2018-11-18 23:00:32,113 INFO L273 TraceCheckUtils]: 69: Hoare triple {8398#true} ~cond := #in~cond; {8398#true} is VALID [2018-11-18 23:00:32,113 INFO L273 TraceCheckUtils]: 70: Hoare triple {8398#true} assume !(0 == ~cond); {8398#true} is VALID [2018-11-18 23:00:32,114 INFO L273 TraceCheckUtils]: 71: Hoare triple {8398#true} assume true; {8398#true} is VALID [2018-11-18 23:00:32,114 INFO L268 TraceCheckUtils]: 72: Hoare quadruple {8398#true} {8399#false} #70#return; {8399#false} is VALID [2018-11-18 23:00:32,114 INFO L273 TraceCheckUtils]: 73: Hoare triple {8399#false} havoc #t~mem5;havoc #t~mem4; {8399#false} is VALID [2018-11-18 23:00:32,114 INFO L273 TraceCheckUtils]: 74: Hoare triple {8399#false} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {8399#false} is VALID [2018-11-18 23:00:32,114 INFO L273 TraceCheckUtils]: 75: Hoare triple {8399#false} assume true; {8399#false} is VALID [2018-11-18 23:00:32,115 INFO L273 TraceCheckUtils]: 76: Hoare triple {8399#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {8399#false} is VALID [2018-11-18 23:00:32,115 INFO L256 TraceCheckUtils]: 77: Hoare triple {8399#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {8398#true} is VALID [2018-11-18 23:00:32,115 INFO L273 TraceCheckUtils]: 78: Hoare triple {8398#true} ~cond := #in~cond; {8398#true} is VALID [2018-11-18 23:00:32,115 INFO L273 TraceCheckUtils]: 79: Hoare triple {8398#true} assume !(0 == ~cond); {8398#true} is VALID [2018-11-18 23:00:32,115 INFO L273 TraceCheckUtils]: 80: Hoare triple {8398#true} assume true; {8398#true} is VALID [2018-11-18 23:00:32,116 INFO L268 TraceCheckUtils]: 81: Hoare quadruple {8398#true} {8399#false} #70#return; {8399#false} is VALID [2018-11-18 23:00:32,116 INFO L273 TraceCheckUtils]: 82: Hoare triple {8399#false} havoc #t~mem5;havoc #t~mem4; {8399#false} is VALID [2018-11-18 23:00:32,116 INFO L273 TraceCheckUtils]: 83: Hoare triple {8399#false} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {8399#false} is VALID [2018-11-18 23:00:32,116 INFO L273 TraceCheckUtils]: 84: Hoare triple {8399#false} assume true; {8399#false} is VALID [2018-11-18 23:00:32,116 INFO L273 TraceCheckUtils]: 85: Hoare triple {8399#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {8399#false} is VALID [2018-11-18 23:00:32,117 INFO L256 TraceCheckUtils]: 86: Hoare triple {8399#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {8399#false} is VALID [2018-11-18 23:00:32,117 INFO L273 TraceCheckUtils]: 87: Hoare triple {8399#false} ~cond := #in~cond; {8399#false} is VALID [2018-11-18 23:00:32,117 INFO L273 TraceCheckUtils]: 88: Hoare triple {8399#false} assume 0 == ~cond; {8399#false} is VALID [2018-11-18 23:00:32,117 INFO L273 TraceCheckUtils]: 89: Hoare triple {8399#false} assume !false; {8399#false} is VALID [2018-11-18 23:00:32,122 INFO L134 CoverageAnalysis]: Checked inductivity of 461 backedges. 4 proven. 442 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2018-11-18 23:00:32,122 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-18 23:00:32,122 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 18 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 18 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-18 23:00:32,138 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-18 23:00:32,181 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-18 23:00:32,181 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-18 23:00:32,203 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 23:00:32,204 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 23:00:32,389 INFO L256 TraceCheckUtils]: 0: Hoare triple {8398#true} call ULTIMATE.init(); {8398#true} is VALID [2018-11-18 23:00:32,389 INFO L273 TraceCheckUtils]: 1: Hoare triple {8398#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {8398#true} is VALID [2018-11-18 23:00:32,389 INFO L273 TraceCheckUtils]: 2: Hoare triple {8398#true} assume true; {8398#true} is VALID [2018-11-18 23:00:32,389 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {8398#true} {8398#true} #64#return; {8398#true} is VALID [2018-11-18 23:00:32,390 INFO L256 TraceCheckUtils]: 4: Hoare triple {8398#true} call #t~ret6 := main(); {8398#true} is VALID [2018-11-18 23:00:32,390 INFO L273 TraceCheckUtils]: 5: Hoare triple {8398#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {8398#true} is VALID [2018-11-18 23:00:32,390 INFO L256 TraceCheckUtils]: 6: Hoare triple {8398#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {8398#true} is VALID [2018-11-18 23:00:32,391 INFO L273 TraceCheckUtils]: 7: Hoare triple {8398#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {8442#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:32,391 INFO L273 TraceCheckUtils]: 8: Hoare triple {8442#(<= _strcmp_~i~0 0)} assume true; {8442#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:32,391 INFO L273 TraceCheckUtils]: 9: Hoare triple {8442#(<= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8442#(<= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:32,392 INFO L273 TraceCheckUtils]: 10: Hoare triple {8442#(<= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8401#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:32,392 INFO L273 TraceCheckUtils]: 11: Hoare triple {8401#(<= _strcmp_~i~0 1)} assume true; {8401#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:32,393 INFO L273 TraceCheckUtils]: 12: Hoare triple {8401#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8401#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:32,394 INFO L273 TraceCheckUtils]: 13: Hoare triple {8401#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8402#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:32,395 INFO L273 TraceCheckUtils]: 14: Hoare triple {8402#(<= _strcmp_~i~0 2)} assume true; {8402#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:32,395 INFO L273 TraceCheckUtils]: 15: Hoare triple {8402#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8402#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:32,396 INFO L273 TraceCheckUtils]: 16: Hoare triple {8402#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8403#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:32,396 INFO L273 TraceCheckUtils]: 17: Hoare triple {8403#(<= _strcmp_~i~0 3)} assume true; {8403#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:32,397 INFO L273 TraceCheckUtils]: 18: Hoare triple {8403#(<= _strcmp_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8403#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:32,398 INFO L273 TraceCheckUtils]: 19: Hoare triple {8403#(<= _strcmp_~i~0 3)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8404#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:32,398 INFO L273 TraceCheckUtils]: 20: Hoare triple {8404#(<= _strcmp_~i~0 4)} assume true; {8404#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:32,399 INFO L273 TraceCheckUtils]: 21: Hoare triple {8404#(<= _strcmp_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8404#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:32,400 INFO L273 TraceCheckUtils]: 22: Hoare triple {8404#(<= _strcmp_~i~0 4)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8405#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:32,400 INFO L273 TraceCheckUtils]: 23: Hoare triple {8405#(<= _strcmp_~i~0 5)} assume true; {8405#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:32,401 INFO L273 TraceCheckUtils]: 24: Hoare triple {8405#(<= _strcmp_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8405#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:32,401 INFO L273 TraceCheckUtils]: 25: Hoare triple {8405#(<= _strcmp_~i~0 5)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8406#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:32,402 INFO L273 TraceCheckUtils]: 26: Hoare triple {8406#(<= _strcmp_~i~0 6)} assume true; {8406#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:32,402 INFO L273 TraceCheckUtils]: 27: Hoare triple {8406#(<= _strcmp_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8406#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:32,403 INFO L273 TraceCheckUtils]: 28: Hoare triple {8406#(<= _strcmp_~i~0 6)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8407#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:32,404 INFO L273 TraceCheckUtils]: 29: Hoare triple {8407#(<= _strcmp_~i~0 7)} assume true; {8407#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:32,404 INFO L273 TraceCheckUtils]: 30: Hoare triple {8407#(<= _strcmp_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8407#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:32,405 INFO L273 TraceCheckUtils]: 31: Hoare triple {8407#(<= _strcmp_~i~0 7)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8408#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:32,406 INFO L273 TraceCheckUtils]: 32: Hoare triple {8408#(<= _strcmp_~i~0 8)} assume true; {8408#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:32,406 INFO L273 TraceCheckUtils]: 33: Hoare triple {8408#(<= _strcmp_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8408#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:32,407 INFO L273 TraceCheckUtils]: 34: Hoare triple {8408#(<= _strcmp_~i~0 8)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8409#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:32,408 INFO L273 TraceCheckUtils]: 35: Hoare triple {8409#(<= _strcmp_~i~0 9)} assume true; {8409#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:32,408 INFO L273 TraceCheckUtils]: 36: Hoare triple {8409#(<= _strcmp_~i~0 9)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8409#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:32,409 INFO L273 TraceCheckUtils]: 37: Hoare triple {8409#(<= _strcmp_~i~0 9)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8410#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:32,409 INFO L273 TraceCheckUtils]: 38: Hoare triple {8410#(<= _strcmp_~i~0 10)} assume true; {8410#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:32,410 INFO L273 TraceCheckUtils]: 39: Hoare triple {8410#(<= _strcmp_~i~0 10)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8410#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:32,411 INFO L273 TraceCheckUtils]: 40: Hoare triple {8410#(<= _strcmp_~i~0 10)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8411#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:32,411 INFO L273 TraceCheckUtils]: 41: Hoare triple {8411#(<= _strcmp_~i~0 11)} assume true; {8411#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:32,412 INFO L273 TraceCheckUtils]: 42: Hoare triple {8411#(<= _strcmp_~i~0 11)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8411#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:32,413 INFO L273 TraceCheckUtils]: 43: Hoare triple {8411#(<= _strcmp_~i~0 11)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8412#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:32,413 INFO L273 TraceCheckUtils]: 44: Hoare triple {8412#(<= _strcmp_~i~0 12)} assume true; {8412#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:32,414 INFO L273 TraceCheckUtils]: 45: Hoare triple {8412#(<= _strcmp_~i~0 12)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8412#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:32,414 INFO L273 TraceCheckUtils]: 46: Hoare triple {8412#(<= _strcmp_~i~0 12)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8413#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:32,415 INFO L273 TraceCheckUtils]: 47: Hoare triple {8413#(<= _strcmp_~i~0 13)} assume true; {8413#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:32,415 INFO L273 TraceCheckUtils]: 48: Hoare triple {8413#(<= _strcmp_~i~0 13)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8413#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:32,418 INFO L273 TraceCheckUtils]: 49: Hoare triple {8413#(<= _strcmp_~i~0 13)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8414#(<= _strcmp_~i~0 14)} is VALID [2018-11-18 23:00:32,419 INFO L273 TraceCheckUtils]: 50: Hoare triple {8414#(<= _strcmp_~i~0 14)} assume true; {8414#(<= _strcmp_~i~0 14)} is VALID [2018-11-18 23:00:32,419 INFO L273 TraceCheckUtils]: 51: Hoare triple {8414#(<= _strcmp_~i~0 14)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8414#(<= _strcmp_~i~0 14)} is VALID [2018-11-18 23:00:32,420 INFO L273 TraceCheckUtils]: 52: Hoare triple {8414#(<= _strcmp_~i~0 14)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8415#(<= _strcmp_~i~0 15)} is VALID [2018-11-18 23:00:32,420 INFO L273 TraceCheckUtils]: 53: Hoare triple {8415#(<= _strcmp_~i~0 15)} assume true; {8415#(<= _strcmp_~i~0 15)} is VALID [2018-11-18 23:00:32,420 INFO L273 TraceCheckUtils]: 54: Hoare triple {8415#(<= _strcmp_~i~0 15)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8415#(<= _strcmp_~i~0 15)} is VALID [2018-11-18 23:00:32,421 INFO L273 TraceCheckUtils]: 55: Hoare triple {8415#(<= _strcmp_~i~0 15)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8416#(<= _strcmp_~i~0 16)} is VALID [2018-11-18 23:00:32,421 INFO L273 TraceCheckUtils]: 56: Hoare triple {8416#(<= _strcmp_~i~0 16)} assume true; {8416#(<= _strcmp_~i~0 16)} is VALID [2018-11-18 23:00:32,421 INFO L273 TraceCheckUtils]: 57: Hoare triple {8416#(<= _strcmp_~i~0 16)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {8416#(<= _strcmp_~i~0 16)} is VALID [2018-11-18 23:00:32,422 INFO L273 TraceCheckUtils]: 58: Hoare triple {8416#(<= _strcmp_~i~0 16)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {8417#(<= _strcmp_~i~0 17)} is VALID [2018-11-18 23:00:32,422 INFO L273 TraceCheckUtils]: 59: Hoare triple {8417#(<= _strcmp_~i~0 17)} assume true; {8417#(<= _strcmp_~i~0 17)} is VALID [2018-11-18 23:00:32,423 INFO L273 TraceCheckUtils]: 60: Hoare triple {8417#(<= _strcmp_~i~0 17)} assume !(~i~0 < 100000); {8399#false} is VALID [2018-11-18 23:00:32,423 INFO L273 TraceCheckUtils]: 61: Hoare triple {8399#false} #res := 0; {8399#false} is VALID [2018-11-18 23:00:32,424 INFO L273 TraceCheckUtils]: 62: Hoare triple {8399#false} assume true; {8399#false} is VALID [2018-11-18 23:00:32,424 INFO L268 TraceCheckUtils]: 63: Hoare quadruple {8399#false} {8398#true} #68#return; {8399#false} is VALID [2018-11-18 23:00:32,424 INFO L273 TraceCheckUtils]: 64: Hoare triple {8399#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {8399#false} is VALID [2018-11-18 23:00:32,424 INFO L273 TraceCheckUtils]: 65: Hoare triple {8399#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {8399#false} is VALID [2018-11-18 23:00:32,424 INFO L273 TraceCheckUtils]: 66: Hoare triple {8399#false} assume true; {8399#false} is VALID [2018-11-18 23:00:32,425 INFO L273 TraceCheckUtils]: 67: Hoare triple {8399#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {8399#false} is VALID [2018-11-18 23:00:32,425 INFO L256 TraceCheckUtils]: 68: Hoare triple {8399#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {8399#false} is VALID [2018-11-18 23:00:32,425 INFO L273 TraceCheckUtils]: 69: Hoare triple {8399#false} ~cond := #in~cond; {8399#false} is VALID [2018-11-18 23:00:32,425 INFO L273 TraceCheckUtils]: 70: Hoare triple {8399#false} assume !(0 == ~cond); {8399#false} is VALID [2018-11-18 23:00:32,425 INFO L273 TraceCheckUtils]: 71: Hoare triple {8399#false} assume true; {8399#false} is VALID [2018-11-18 23:00:32,426 INFO L268 TraceCheckUtils]: 72: Hoare quadruple {8399#false} {8399#false} #70#return; {8399#false} is VALID [2018-11-18 23:00:32,426 INFO L273 TraceCheckUtils]: 73: Hoare triple {8399#false} havoc #t~mem5;havoc #t~mem4; {8399#false} is VALID [2018-11-18 23:00:32,426 INFO L273 TraceCheckUtils]: 74: Hoare triple {8399#false} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {8399#false} is VALID [2018-11-18 23:00:32,426 INFO L273 TraceCheckUtils]: 75: Hoare triple {8399#false} assume true; {8399#false} is VALID [2018-11-18 23:00:32,426 INFO L273 TraceCheckUtils]: 76: Hoare triple {8399#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {8399#false} is VALID [2018-11-18 23:00:32,427 INFO L256 TraceCheckUtils]: 77: Hoare triple {8399#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {8399#false} is VALID [2018-11-18 23:00:32,427 INFO L273 TraceCheckUtils]: 78: Hoare triple {8399#false} ~cond := #in~cond; {8399#false} is VALID [2018-11-18 23:00:32,427 INFO L273 TraceCheckUtils]: 79: Hoare triple {8399#false} assume !(0 == ~cond); {8399#false} is VALID [2018-11-18 23:00:32,427 INFO L273 TraceCheckUtils]: 80: Hoare triple {8399#false} assume true; {8399#false} is VALID [2018-11-18 23:00:32,427 INFO L268 TraceCheckUtils]: 81: Hoare quadruple {8399#false} {8399#false} #70#return; {8399#false} is VALID [2018-11-18 23:00:32,428 INFO L273 TraceCheckUtils]: 82: Hoare triple {8399#false} havoc #t~mem5;havoc #t~mem4; {8399#false} is VALID [2018-11-18 23:00:32,428 INFO L273 TraceCheckUtils]: 83: Hoare triple {8399#false} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {8399#false} is VALID [2018-11-18 23:00:32,428 INFO L273 TraceCheckUtils]: 84: Hoare triple {8399#false} assume true; {8399#false} is VALID [2018-11-18 23:00:32,428 INFO L273 TraceCheckUtils]: 85: Hoare triple {8399#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {8399#false} is VALID [2018-11-18 23:00:32,428 INFO L256 TraceCheckUtils]: 86: Hoare triple {8399#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {8399#false} is VALID [2018-11-18 23:00:32,428 INFO L273 TraceCheckUtils]: 87: Hoare triple {8399#false} ~cond := #in~cond; {8399#false} is VALID [2018-11-18 23:00:32,428 INFO L273 TraceCheckUtils]: 88: Hoare triple {8399#false} assume 0 == ~cond; {8399#false} is VALID [2018-11-18 23:00:32,428 INFO L273 TraceCheckUtils]: 89: Hoare triple {8399#false} assume !false; {8399#false} is VALID [2018-11-18 23:00:32,433 INFO L134 CoverageAnalysis]: Checked inductivity of 461 backedges. 0 proven. 442 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2018-11-18 23:00:32,452 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-18 23:00:32,452 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [20, 20] total 21 [2018-11-18 23:00:32,453 INFO L78 Accepts]: Start accepts. Automaton has 21 states. Word has length 90 [2018-11-18 23:00:32,453 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-18 23:00:32,453 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 21 states. [2018-11-18 23:00:32,542 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-18 23:00:32,542 INFO L459 AbstractCegarLoop]: Interpolant automaton has 21 states [2018-11-18 23:00:32,543 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2018-11-18 23:00:32,543 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=210, Invalid=210, Unknown=0, NotChecked=0, Total=420 [2018-11-18 23:00:32,543 INFO L87 Difference]: Start difference. First operand 93 states and 94 transitions. Second operand 21 states. [2018-11-18 23:00:32,869 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 23:00:32,869 INFO L93 Difference]: Finished difference Result 129 states and 131 transitions. [2018-11-18 23:00:32,869 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2018-11-18 23:00:32,869 INFO L78 Accepts]: Start accepts. Automaton has 21 states. Word has length 90 [2018-11-18 23:00:32,870 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-18 23:00:32,870 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 21 states. [2018-11-18 23:00:32,871 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 99 transitions. [2018-11-18 23:00:32,871 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 21 states. [2018-11-18 23:00:32,872 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 99 transitions. [2018-11-18 23:00:32,872 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states and 99 transitions. [2018-11-18 23:00:32,969 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-18 23:00:32,971 INFO L225 Difference]: With dead ends: 129 [2018-11-18 23:00:32,971 INFO L226 Difference]: Without dead ends: 97 [2018-11-18 23:00:32,972 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 109 GetRequests, 90 SyntacticMatches, 0 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 32 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=210, Invalid=210, Unknown=0, NotChecked=0, Total=420 [2018-11-18 23:00:32,972 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 97 states. [2018-11-18 23:00:33,068 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 97 to 96. [2018-11-18 23:00:33,068 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-18 23:00:33,068 INFO L82 GeneralOperation]: Start isEquivalent. First operand 97 states. Second operand 96 states. [2018-11-18 23:00:33,068 INFO L74 IsIncluded]: Start isIncluded. First operand 97 states. Second operand 96 states. [2018-11-18 23:00:33,069 INFO L87 Difference]: Start difference. First operand 97 states. Second operand 96 states. [2018-11-18 23:00:33,071 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 23:00:33,071 INFO L93 Difference]: Finished difference Result 97 states and 98 transitions. [2018-11-18 23:00:33,071 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 98 transitions. [2018-11-18 23:00:33,072 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 23:00:33,072 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 23:00:33,072 INFO L74 IsIncluded]: Start isIncluded. First operand 96 states. Second operand 97 states. [2018-11-18 23:00:33,072 INFO L87 Difference]: Start difference. First operand 96 states. Second operand 97 states. [2018-11-18 23:00:33,074 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 23:00:33,074 INFO L93 Difference]: Finished difference Result 97 states and 98 transitions. [2018-11-18 23:00:33,074 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 98 transitions. [2018-11-18 23:00:33,075 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-18 23:00:33,075 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-18 23:00:33,075 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-18 23:00:33,075 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-18 23:00:33,075 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 96 states. [2018-11-18 23:00:33,077 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 96 states to 96 states and 97 transitions. [2018-11-18 23:00:33,077 INFO L78 Accepts]: Start accepts. Automaton has 96 states and 97 transitions. Word has length 90 [2018-11-18 23:00:33,077 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-18 23:00:33,077 INFO L480 AbstractCegarLoop]: Abstraction has 96 states and 97 transitions. [2018-11-18 23:00:33,077 INFO L481 AbstractCegarLoop]: Interpolant automaton has 21 states. [2018-11-18 23:00:33,077 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 97 transitions. [2018-11-18 23:00:33,078 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 94 [2018-11-18 23:00:33,078 INFO L367 BasicCegarLoop]: Found error trace [2018-11-18 23:00:33,079 INFO L375 BasicCegarLoop]: trace histogram [19, 18, 18, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-18 23:00:33,079 INFO L423 AbstractCegarLoop]: === Iteration 21 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-18 23:00:33,079 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 23:00:33,079 INFO L82 PathProgramCache]: Analyzing trace with hash -31728926, now seen corresponding path program 9 times [2018-11-18 23:00:33,079 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 23:00:33,079 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 23:00:33,080 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 23:00:33,080 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-18 23:00:33,080 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 23:00:33,098 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 23:00:33,590 INFO L256 TraceCheckUtils]: 0: Hoare triple {9184#true} call ULTIMATE.init(); {9184#true} is VALID [2018-11-18 23:00:33,590 INFO L273 TraceCheckUtils]: 1: Hoare triple {9184#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {9184#true} is VALID [2018-11-18 23:00:33,590 INFO L273 TraceCheckUtils]: 2: Hoare triple {9184#true} assume true; {9184#true} is VALID [2018-11-18 23:00:33,591 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {9184#true} {9184#true} #64#return; {9184#true} is VALID [2018-11-18 23:00:33,591 INFO L256 TraceCheckUtils]: 4: Hoare triple {9184#true} call #t~ret6 := main(); {9184#true} is VALID [2018-11-18 23:00:33,591 INFO L273 TraceCheckUtils]: 5: Hoare triple {9184#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {9184#true} is VALID [2018-11-18 23:00:33,591 INFO L256 TraceCheckUtils]: 6: Hoare triple {9184#true} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {9184#true} is VALID [2018-11-18 23:00:33,592 INFO L273 TraceCheckUtils]: 7: Hoare triple {9184#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {9186#(= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:33,592 INFO L273 TraceCheckUtils]: 8: Hoare triple {9186#(= _strcmp_~i~0 0)} assume true; {9186#(= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:33,593 INFO L273 TraceCheckUtils]: 9: Hoare triple {9186#(= _strcmp_~i~0 0)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9186#(= _strcmp_~i~0 0)} is VALID [2018-11-18 23:00:33,593 INFO L273 TraceCheckUtils]: 10: Hoare triple {9186#(= _strcmp_~i~0 0)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9187#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:33,593 INFO L273 TraceCheckUtils]: 11: Hoare triple {9187#(<= _strcmp_~i~0 1)} assume true; {9187#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:33,594 INFO L273 TraceCheckUtils]: 12: Hoare triple {9187#(<= _strcmp_~i~0 1)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9187#(<= _strcmp_~i~0 1)} is VALID [2018-11-18 23:00:33,594 INFO L273 TraceCheckUtils]: 13: Hoare triple {9187#(<= _strcmp_~i~0 1)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9188#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:33,594 INFO L273 TraceCheckUtils]: 14: Hoare triple {9188#(<= _strcmp_~i~0 2)} assume true; {9188#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:33,595 INFO L273 TraceCheckUtils]: 15: Hoare triple {9188#(<= _strcmp_~i~0 2)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9188#(<= _strcmp_~i~0 2)} is VALID [2018-11-18 23:00:33,595 INFO L273 TraceCheckUtils]: 16: Hoare triple {9188#(<= _strcmp_~i~0 2)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9189#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:33,596 INFO L273 TraceCheckUtils]: 17: Hoare triple {9189#(<= _strcmp_~i~0 3)} assume true; {9189#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:33,596 INFO L273 TraceCheckUtils]: 18: Hoare triple {9189#(<= _strcmp_~i~0 3)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9189#(<= _strcmp_~i~0 3)} is VALID [2018-11-18 23:00:33,597 INFO L273 TraceCheckUtils]: 19: Hoare triple {9189#(<= _strcmp_~i~0 3)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9190#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:33,598 INFO L273 TraceCheckUtils]: 20: Hoare triple {9190#(<= _strcmp_~i~0 4)} assume true; {9190#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:33,598 INFO L273 TraceCheckUtils]: 21: Hoare triple {9190#(<= _strcmp_~i~0 4)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9190#(<= _strcmp_~i~0 4)} is VALID [2018-11-18 23:00:33,599 INFO L273 TraceCheckUtils]: 22: Hoare triple {9190#(<= _strcmp_~i~0 4)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9191#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:33,600 INFO L273 TraceCheckUtils]: 23: Hoare triple {9191#(<= _strcmp_~i~0 5)} assume true; {9191#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:33,600 INFO L273 TraceCheckUtils]: 24: Hoare triple {9191#(<= _strcmp_~i~0 5)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9191#(<= _strcmp_~i~0 5)} is VALID [2018-11-18 23:00:33,601 INFO L273 TraceCheckUtils]: 25: Hoare triple {9191#(<= _strcmp_~i~0 5)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9192#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:33,601 INFO L273 TraceCheckUtils]: 26: Hoare triple {9192#(<= _strcmp_~i~0 6)} assume true; {9192#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:33,602 INFO L273 TraceCheckUtils]: 27: Hoare triple {9192#(<= _strcmp_~i~0 6)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9192#(<= _strcmp_~i~0 6)} is VALID [2018-11-18 23:00:33,603 INFO L273 TraceCheckUtils]: 28: Hoare triple {9192#(<= _strcmp_~i~0 6)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9193#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:33,603 INFO L273 TraceCheckUtils]: 29: Hoare triple {9193#(<= _strcmp_~i~0 7)} assume true; {9193#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:33,604 INFO L273 TraceCheckUtils]: 30: Hoare triple {9193#(<= _strcmp_~i~0 7)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9193#(<= _strcmp_~i~0 7)} is VALID [2018-11-18 23:00:33,605 INFO L273 TraceCheckUtils]: 31: Hoare triple {9193#(<= _strcmp_~i~0 7)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9194#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:33,605 INFO L273 TraceCheckUtils]: 32: Hoare triple {9194#(<= _strcmp_~i~0 8)} assume true; {9194#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:33,606 INFO L273 TraceCheckUtils]: 33: Hoare triple {9194#(<= _strcmp_~i~0 8)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9194#(<= _strcmp_~i~0 8)} is VALID [2018-11-18 23:00:33,607 INFO L273 TraceCheckUtils]: 34: Hoare triple {9194#(<= _strcmp_~i~0 8)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9195#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:33,607 INFO L273 TraceCheckUtils]: 35: Hoare triple {9195#(<= _strcmp_~i~0 9)} assume true; {9195#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:33,608 INFO L273 TraceCheckUtils]: 36: Hoare triple {9195#(<= _strcmp_~i~0 9)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9195#(<= _strcmp_~i~0 9)} is VALID [2018-11-18 23:00:33,608 INFO L273 TraceCheckUtils]: 37: Hoare triple {9195#(<= _strcmp_~i~0 9)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9196#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:33,609 INFO L273 TraceCheckUtils]: 38: Hoare triple {9196#(<= _strcmp_~i~0 10)} assume true; {9196#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:33,609 INFO L273 TraceCheckUtils]: 39: Hoare triple {9196#(<= _strcmp_~i~0 10)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9196#(<= _strcmp_~i~0 10)} is VALID [2018-11-18 23:00:33,610 INFO L273 TraceCheckUtils]: 40: Hoare triple {9196#(<= _strcmp_~i~0 10)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9197#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:33,611 INFO L273 TraceCheckUtils]: 41: Hoare triple {9197#(<= _strcmp_~i~0 11)} assume true; {9197#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:33,611 INFO L273 TraceCheckUtils]: 42: Hoare triple {9197#(<= _strcmp_~i~0 11)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9197#(<= _strcmp_~i~0 11)} is VALID [2018-11-18 23:00:33,612 INFO L273 TraceCheckUtils]: 43: Hoare triple {9197#(<= _strcmp_~i~0 11)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9198#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:33,613 INFO L273 TraceCheckUtils]: 44: Hoare triple {9198#(<= _strcmp_~i~0 12)} assume true; {9198#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:33,613 INFO L273 TraceCheckUtils]: 45: Hoare triple {9198#(<= _strcmp_~i~0 12)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9198#(<= _strcmp_~i~0 12)} is VALID [2018-11-18 23:00:33,614 INFO L273 TraceCheckUtils]: 46: Hoare triple {9198#(<= _strcmp_~i~0 12)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9199#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:33,614 INFO L273 TraceCheckUtils]: 47: Hoare triple {9199#(<= _strcmp_~i~0 13)} assume true; {9199#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:33,615 INFO L273 TraceCheckUtils]: 48: Hoare triple {9199#(<= _strcmp_~i~0 13)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9199#(<= _strcmp_~i~0 13)} is VALID [2018-11-18 23:00:33,616 INFO L273 TraceCheckUtils]: 49: Hoare triple {9199#(<= _strcmp_~i~0 13)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9200#(<= _strcmp_~i~0 14)} is VALID [2018-11-18 23:00:33,616 INFO L273 TraceCheckUtils]: 50: Hoare triple {9200#(<= _strcmp_~i~0 14)} assume true; {9200#(<= _strcmp_~i~0 14)} is VALID [2018-11-18 23:00:33,617 INFO L273 TraceCheckUtils]: 51: Hoare triple {9200#(<= _strcmp_~i~0 14)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9200#(<= _strcmp_~i~0 14)} is VALID [2018-11-18 23:00:33,618 INFO L273 TraceCheckUtils]: 52: Hoare triple {9200#(<= _strcmp_~i~0 14)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9201#(<= _strcmp_~i~0 15)} is VALID [2018-11-18 23:00:33,618 INFO L273 TraceCheckUtils]: 53: Hoare triple {9201#(<= _strcmp_~i~0 15)} assume true; {9201#(<= _strcmp_~i~0 15)} is VALID [2018-11-18 23:00:33,619 INFO L273 TraceCheckUtils]: 54: Hoare triple {9201#(<= _strcmp_~i~0 15)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9201#(<= _strcmp_~i~0 15)} is VALID [2018-11-18 23:00:33,619 INFO L273 TraceCheckUtils]: 55: Hoare triple {9201#(<= _strcmp_~i~0 15)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9202#(<= _strcmp_~i~0 16)} is VALID [2018-11-18 23:00:33,620 INFO L273 TraceCheckUtils]: 56: Hoare triple {9202#(<= _strcmp_~i~0 16)} assume true; {9202#(<= _strcmp_~i~0 16)} is VALID [2018-11-18 23:00:33,620 INFO L273 TraceCheckUtils]: 57: Hoare triple {9202#(<= _strcmp_~i~0 16)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9202#(<= _strcmp_~i~0 16)} is VALID [2018-11-18 23:00:33,621 INFO L273 TraceCheckUtils]: 58: Hoare triple {9202#(<= _strcmp_~i~0 16)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9203#(<= _strcmp_~i~0 17)} is VALID [2018-11-18 23:00:33,622 INFO L273 TraceCheckUtils]: 59: Hoare triple {9203#(<= _strcmp_~i~0 17)} assume true; {9203#(<= _strcmp_~i~0 17)} is VALID [2018-11-18 23:00:33,622 INFO L273 TraceCheckUtils]: 60: Hoare triple {9203#(<= _strcmp_~i~0 17)} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9203#(<= _strcmp_~i~0 17)} is VALID [2018-11-18 23:00:33,623 INFO L273 TraceCheckUtils]: 61: Hoare triple {9203#(<= _strcmp_~i~0 17)} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9204#(<= _strcmp_~i~0 18)} is VALID [2018-11-18 23:00:33,624 INFO L273 TraceCheckUtils]: 62: Hoare triple {9204#(<= _strcmp_~i~0 18)} assume true; {9204#(<= _strcmp_~i~0 18)} is VALID [2018-11-18 23:00:33,624 INFO L273 TraceCheckUtils]: 63: Hoare triple {9204#(<= _strcmp_~i~0 18)} assume !(~i~0 < 100000); {9185#false} is VALID [2018-11-18 23:00:33,625 INFO L273 TraceCheckUtils]: 64: Hoare triple {9185#false} #res := 0; {9185#false} is VALID [2018-11-18 23:00:33,625 INFO L273 TraceCheckUtils]: 65: Hoare triple {9185#false} assume true; {9185#false} is VALID [2018-11-18 23:00:33,625 INFO L268 TraceCheckUtils]: 66: Hoare quadruple {9185#false} {9184#true} #68#return; {9185#false} is VALID [2018-11-18 23:00:33,625 INFO L273 TraceCheckUtils]: 67: Hoare triple {9185#false} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {9185#false} is VALID [2018-11-18 23:00:33,625 INFO L273 TraceCheckUtils]: 68: Hoare triple {9185#false} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {9185#false} is VALID [2018-11-18 23:00:33,626 INFO L273 TraceCheckUtils]: 69: Hoare triple {9185#false} assume true; {9185#false} is VALID [2018-11-18 23:00:33,626 INFO L273 TraceCheckUtils]: 70: Hoare triple {9185#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {9185#false} is VALID [2018-11-18 23:00:33,626 INFO L256 TraceCheckUtils]: 71: Hoare triple {9185#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {9184#true} is VALID [2018-11-18 23:00:33,626 INFO L273 TraceCheckUtils]: 72: Hoare triple {9184#true} ~cond := #in~cond; {9184#true} is VALID [2018-11-18 23:00:33,626 INFO L273 TraceCheckUtils]: 73: Hoare triple {9184#true} assume !(0 == ~cond); {9184#true} is VALID [2018-11-18 23:00:33,627 INFO L273 TraceCheckUtils]: 74: Hoare triple {9184#true} assume true; {9184#true} is VALID [2018-11-18 23:00:33,627 INFO L268 TraceCheckUtils]: 75: Hoare quadruple {9184#true} {9185#false} #70#return; {9185#false} is VALID [2018-11-18 23:00:33,627 INFO L273 TraceCheckUtils]: 76: Hoare triple {9185#false} havoc #t~mem5;havoc #t~mem4; {9185#false} is VALID [2018-11-18 23:00:33,627 INFO L273 TraceCheckUtils]: 77: Hoare triple {9185#false} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {9185#false} is VALID [2018-11-18 23:00:33,627 INFO L273 TraceCheckUtils]: 78: Hoare triple {9185#false} assume true; {9185#false} is VALID [2018-11-18 23:00:33,627 INFO L273 TraceCheckUtils]: 79: Hoare triple {9185#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {9185#false} is VALID [2018-11-18 23:00:33,628 INFO L256 TraceCheckUtils]: 80: Hoare triple {9185#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {9184#true} is VALID [2018-11-18 23:00:33,628 INFO L273 TraceCheckUtils]: 81: Hoare triple {9184#true} ~cond := #in~cond; {9184#true} is VALID [2018-11-18 23:00:33,628 INFO L273 TraceCheckUtils]: 82: Hoare triple {9184#true} assume !(0 == ~cond); {9184#true} is VALID [2018-11-18 23:00:33,628 INFO L273 TraceCheckUtils]: 83: Hoare triple {9184#true} assume true; {9184#true} is VALID [2018-11-18 23:00:33,628 INFO L268 TraceCheckUtils]: 84: Hoare quadruple {9184#true} {9185#false} #70#return; {9185#false} is VALID [2018-11-18 23:00:33,628 INFO L273 TraceCheckUtils]: 85: Hoare triple {9185#false} havoc #t~mem5;havoc #t~mem4; {9185#false} is VALID [2018-11-18 23:00:33,628 INFO L273 TraceCheckUtils]: 86: Hoare triple {9185#false} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {9185#false} is VALID [2018-11-18 23:00:33,628 INFO L273 TraceCheckUtils]: 87: Hoare triple {9185#false} assume true; {9185#false} is VALID [2018-11-18 23:00:33,628 INFO L273 TraceCheckUtils]: 88: Hoare triple {9185#false} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {9185#false} is VALID [2018-11-18 23:00:33,629 INFO L256 TraceCheckUtils]: 89: Hoare triple {9185#false} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {9185#false} is VALID [2018-11-18 23:00:33,629 INFO L273 TraceCheckUtils]: 90: Hoare triple {9185#false} ~cond := #in~cond; {9185#false} is VALID [2018-11-18 23:00:33,629 INFO L273 TraceCheckUtils]: 91: Hoare triple {9185#false} assume 0 == ~cond; {9185#false} is VALID [2018-11-18 23:00:33,629 INFO L273 TraceCheckUtils]: 92: Hoare triple {9185#false} assume !false; {9185#false} is VALID [2018-11-18 23:00:33,634 INFO L134 CoverageAnalysis]: Checked inductivity of 514 backedges. 4 proven. 495 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2018-11-18 23:00:33,634 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-18 23:00:33,634 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 19 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 19 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-18 23:00:33,643 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-18 23:00:33,746 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 10 check-sat command(s) [2018-11-18 23:00:33,746 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-18 23:00:33,764 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 23:00:33,766 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 23:00:33,805 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 5 treesize of output 1 [2018-11-18 23:00:33,807 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2018-11-18 23:00:33,815 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-18 23:00:33,816 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:15, output treesize:11 [2018-11-18 23:00:36,378 WARN L854 $PredicateComparison]: unable to prove that (exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int) (|v_main_~#b~0.base_BEFORE_CALL_4| Int)) (let ((.cse1 (select |c_#memory_int| |v_main_~#b~0.base_BEFORE_CALL_4|)) (.cse0 (select |c_#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|))) (and (= (select .cse0 4) (select .cse1 4)) (= (select .cse1 8) (select .cse0 8)) (not (= |v_main_~#b~0.base_BEFORE_CALL_4| |v_main_~#a~0.base_BEFORE_CALL_4|))))) is different from true [2018-11-18 23:00:38,651 WARN L854 $PredicateComparison]: unable to prove that (exists ((|v_main_~#a~0.base_BEFORE_CALL_5| Int) (|v_main_~#b~0.base_BEFORE_CALL_5| Int)) (let ((.cse0 (select |c_#memory_int| |v_main_~#a~0.base_BEFORE_CALL_5|)) (.cse1 (select |c_#memory_int| |v_main_~#b~0.base_BEFORE_CALL_5|))) (and (= (select .cse0 4) (select .cse1 4)) (= (select .cse0 8) (select .cse1 8)) (not (= |v_main_~#b~0.base_BEFORE_CALL_5| |v_main_~#a~0.base_BEFORE_CALL_5|))))) is different from true [2018-11-18 23:00:40,704 WARN L180 SmtUtils]: Spent 2.01 s on a formula simplification that was a NOOP. DAG size: 21 [2018-11-18 23:00:42,818 WARN L180 SmtUtils]: Spent 2.01 s on a formula simplification that was a NOOP. DAG size: 22 [2018-11-18 23:00:42,996 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 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 37 treesize of output 29 [2018-11-18 23:00:43,072 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 20 treesize of output 5 [2018-11-18 23:00:43,094 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-18 23:00:43,135 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 3 [2018-11-18 23:00:43,136 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-18 23:00:43,138 INFO L267 ElimStorePlain]: Start of recursive call 2: 2 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-18 23:00:43,145 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-18 23:00:43,145 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 3 variables, input treesize:41, output treesize:3 [2018-11-18 23:00:43,147 WARN L383 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2018-11-18 23:00:45,248 INFO L256 TraceCheckUtils]: 0: Hoare triple {9184#true} call ULTIMATE.init(); {9184#true} is VALID [2018-11-18 23:00:45,249 INFO L273 TraceCheckUtils]: 1: Hoare triple {9184#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; {9184#true} is VALID [2018-11-18 23:00:45,249 INFO L273 TraceCheckUtils]: 2: Hoare triple {9184#true} assume true; {9184#true} is VALID [2018-11-18 23:00:45,249 INFO L268 TraceCheckUtils]: 3: Hoare quadruple {9184#true} {9184#true} #64#return; {9184#true} is VALID [2018-11-18 23:00:45,249 INFO L256 TraceCheckUtils]: 4: Hoare triple {9184#true} call #t~ret6 := main(); {9184#true} is VALID [2018-11-18 23:00:45,250 INFO L273 TraceCheckUtils]: 5: Hoare triple {9184#true} call ~#a~0.base, ~#a~0.offset := #Ultimate.alloc(400000);call ~#b~0.base, ~#b~0.offset := #Ultimate.alloc(400000); {9223#(and (= |main_~#b~0.offset| 0) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 23:00:45,250 INFO L256 TraceCheckUtils]: 6: Hoare triple {9223#(and (= |main_~#b~0.offset| 0) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= |main_~#a~0.offset| 0))} call #t~ret2 := _strcmp(~#a~0.base, ~#a~0.offset, ~#b~0.base, ~#b~0.offset); {9184#true} is VALID [2018-11-18 23:00:45,251 INFO L273 TraceCheckUtils]: 7: Hoare triple {9184#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset;~dst.base, ~dst.offset := #in~dst.base, #in~dst.offset;~i~0 := 0; {9230#(and (= _strcmp_~i~0 0) (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} is VALID [2018-11-18 23:00:45,252 INFO L273 TraceCheckUtils]: 8: Hoare triple {9230#(and (= _strcmp_~i~0 0) (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} assume true; {9230#(and (= _strcmp_~i~0 0) (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} is VALID [2018-11-18 23:00:45,253 INFO L273 TraceCheckUtils]: 9: Hoare triple {9230#(and (= _strcmp_~i~0 0) (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9230#(and (= _strcmp_~i~0 0) (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} is VALID [2018-11-18 23:00:45,254 INFO L273 TraceCheckUtils]: 10: Hoare triple {9230#(and (= _strcmp_~i~0 0) (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9240#(and (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= _strcmp_~i~0 1) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} is VALID [2018-11-18 23:00:45,254 INFO L273 TraceCheckUtils]: 11: Hoare triple {9240#(and (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= _strcmp_~i~0 1) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} assume true; {9240#(and (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= _strcmp_~i~0 1) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} is VALID [2018-11-18 23:00:45,256 INFO L273 TraceCheckUtils]: 12: Hoare triple {9240#(and (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= _strcmp_~i~0 1) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9247#(and (= (select (select |#memory_int| _strcmp_~src.base) (+ _strcmp_~src.offset (* 4 _strcmp_~i~0))) |_strcmp_#t~mem1|) (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= (select (select |#memory_int| _strcmp_~dst.base) (+ _strcmp_~dst.offset (* 4 _strcmp_~i~0))) |_strcmp_#t~mem0|) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= _strcmp_~i~0 1) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} is VALID [2018-11-18 23:00:45,257 INFO L273 TraceCheckUtils]: 13: Hoare triple {9247#(and (= (select (select |#memory_int| _strcmp_~src.base) (+ _strcmp_~src.offset (* 4 _strcmp_~i~0))) |_strcmp_#t~mem1|) (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= (select (select |#memory_int| _strcmp_~dst.base) (+ _strcmp_~dst.offset (* 4 _strcmp_~i~0))) |_strcmp_#t~mem0|) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= _strcmp_~i~0 1) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9251#(and (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= _strcmp_~i~0 2) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= (select (select |#memory_int| _strcmp_~src.base) (+ _strcmp_~src.offset 4)) (select (select |#memory_int| _strcmp_~dst.base) (+ _strcmp_~dst.offset 4))) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} is VALID [2018-11-18 23:00:45,258 INFO L273 TraceCheckUtils]: 14: Hoare triple {9251#(and (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= _strcmp_~i~0 2) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= (select (select |#memory_int| _strcmp_~src.base) (+ _strcmp_~src.offset 4)) (select (select |#memory_int| _strcmp_~dst.base) (+ _strcmp_~dst.offset 4))) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} assume true; {9251#(and (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= _strcmp_~i~0 2) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= (select (select |#memory_int| _strcmp_~src.base) (+ _strcmp_~src.offset 4)) (select (select |#memory_int| _strcmp_~dst.base) (+ _strcmp_~dst.offset 4))) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} is VALID [2018-11-18 23:00:45,259 INFO L273 TraceCheckUtils]: 15: Hoare triple {9251#(and (= |_strcmp_#in~dst.offset| _strcmp_~dst.offset) (= _strcmp_~src.base |_strcmp_#in~src.base|) (= _strcmp_~i~0 2) (= |_strcmp_#in~src.offset| _strcmp_~src.offset) (= (select (select |#memory_int| _strcmp_~src.base) (+ _strcmp_~src.offset 4)) (select (select |#memory_int| _strcmp_~dst.base) (+ _strcmp_~dst.offset 4))) (= _strcmp_~dst.base |_strcmp_#in~dst.base|))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9258#(and (= |_strcmp_#t~mem0| (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) |_strcmp_#t~mem1|) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,260 INFO L273 TraceCheckUtils]: 16: Hoare triple {9258#(and (= |_strcmp_#t~mem0| (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) |_strcmp_#t~mem1|) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,261 INFO L273 TraceCheckUtils]: 17: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume true; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,262 INFO L273 TraceCheckUtils]: 18: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,263 INFO L273 TraceCheckUtils]: 19: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,264 INFO L273 TraceCheckUtils]: 20: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume true; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,265 INFO L273 TraceCheckUtils]: 21: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,266 INFO L273 TraceCheckUtils]: 22: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,266 INFO L273 TraceCheckUtils]: 23: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume true; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,267 INFO L273 TraceCheckUtils]: 24: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,268 INFO L273 TraceCheckUtils]: 25: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,269 INFO L273 TraceCheckUtils]: 26: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume true; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,270 INFO L273 TraceCheckUtils]: 27: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,271 INFO L273 TraceCheckUtils]: 28: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,272 INFO L273 TraceCheckUtils]: 29: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume true; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,273 INFO L273 TraceCheckUtils]: 30: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,274 INFO L273 TraceCheckUtils]: 31: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,274 INFO L273 TraceCheckUtils]: 32: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume true; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,275 INFO L273 TraceCheckUtils]: 33: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,276 INFO L273 TraceCheckUtils]: 34: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,277 INFO L273 TraceCheckUtils]: 35: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume true; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,278 INFO L273 TraceCheckUtils]: 36: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,279 INFO L273 TraceCheckUtils]: 37: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,280 INFO L273 TraceCheckUtils]: 38: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume true; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,281 INFO L273 TraceCheckUtils]: 39: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,281 INFO L273 TraceCheckUtils]: 40: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,282 INFO L273 TraceCheckUtils]: 41: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume true; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,283 INFO L273 TraceCheckUtils]: 42: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,284 INFO L273 TraceCheckUtils]: 43: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,285 INFO L273 TraceCheckUtils]: 44: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume true; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,286 INFO L273 TraceCheckUtils]: 45: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,287 INFO L273 TraceCheckUtils]: 46: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,287 INFO L273 TraceCheckUtils]: 47: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume true; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,288 INFO L273 TraceCheckUtils]: 48: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,289 INFO L273 TraceCheckUtils]: 49: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,290 INFO L273 TraceCheckUtils]: 50: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume true; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,291 INFO L273 TraceCheckUtils]: 51: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,292 INFO L273 TraceCheckUtils]: 52: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,293 INFO L273 TraceCheckUtils]: 53: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume true; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,294 INFO L273 TraceCheckUtils]: 54: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,294 INFO L273 TraceCheckUtils]: 55: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,295 INFO L273 TraceCheckUtils]: 56: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume true; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,296 INFO L273 TraceCheckUtils]: 57: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,297 INFO L273 TraceCheckUtils]: 58: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,298 INFO L273 TraceCheckUtils]: 59: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume true; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,299 INFO L273 TraceCheckUtils]: 60: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !!(~i~0 < 100000);call #t~mem0 := read~int(~dst.base, ~dst.offset + 4 * ~i~0, 4);call #t~mem1 := read~int(~src.base, ~src.offset + 4 * ~i~0, 4); {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,300 INFO L273 TraceCheckUtils]: 61: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !(#t~mem0 != #t~mem1);havoc #t~mem0;havoc #t~mem1;~i~0 := 1 + ~i~0; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,300 INFO L273 TraceCheckUtils]: 62: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume true; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,301 INFO L273 TraceCheckUtils]: 63: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume !(~i~0 < 100000); {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,302 INFO L273 TraceCheckUtils]: 64: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} #res := 0; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,303 INFO L273 TraceCheckUtils]: 65: Hoare triple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} assume true; {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} is VALID [2018-11-18 23:00:45,305 INFO L268 TraceCheckUtils]: 66: Hoare quadruple {9262#(and (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 8)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 8))) (= (select (select |#memory_int| |_strcmp_#in~src.base|) (+ |_strcmp_#in~src.offset| 4)) (select (select |#memory_int| |_strcmp_#in~dst.base|) (+ |_strcmp_#in~dst.offset| 4))))} {9223#(and (= |main_~#b~0.offset| 0) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= |main_~#a~0.offset| 0))} #68#return; {9413#(and (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 23:00:45,306 INFO L273 TraceCheckUtils]: 67: Hoare triple {9413#(and (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} assume -2147483648 <= #t~ret2 && #t~ret2 <= 2147483647;~c~0 := #t~ret2;havoc #t~ret2; {9413#(and (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 23:00:45,307 INFO L273 TraceCheckUtils]: 68: Hoare triple {9413#(and (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} assume 0 == ~c~0;havoc ~x~0;~x~0 := 0; {9420#(and (= main_~x~0 0) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 23:00:45,308 INFO L273 TraceCheckUtils]: 69: Hoare triple {9420#(and (= main_~x~0 0) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} assume true; {9420#(and (= main_~x~0 0) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 23:00:45,310 INFO L273 TraceCheckUtils]: 70: Hoare triple {9420#(and (= main_~x~0 0) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {9420#(and (= main_~x~0 0) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 23:00:45,312 INFO L256 TraceCheckUtils]: 71: Hoare triple {9420#(and (= main_~x~0 0) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {9430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int) (|v_main_~#b~0.base_BEFORE_CALL_4| Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 4) (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_4|) 4)) (= (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_4|) 8) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 8)) (not (= |v_main_~#b~0.base_BEFORE_CALL_4| |v_main_~#a~0.base_BEFORE_CALL_4|))))} is VALID [2018-11-18 23:00:45,313 INFO L273 TraceCheckUtils]: 72: Hoare triple {9430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int) (|v_main_~#b~0.base_BEFORE_CALL_4| Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 4) (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_4|) 4)) (= (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_4|) 8) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 8)) (not (= |v_main_~#b~0.base_BEFORE_CALL_4| |v_main_~#a~0.base_BEFORE_CALL_4|))))} ~cond := #in~cond; {9430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int) (|v_main_~#b~0.base_BEFORE_CALL_4| Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 4) (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_4|) 4)) (= (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_4|) 8) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 8)) (not (= |v_main_~#b~0.base_BEFORE_CALL_4| |v_main_~#a~0.base_BEFORE_CALL_4|))))} is VALID [2018-11-18 23:00:45,313 INFO L273 TraceCheckUtils]: 73: Hoare triple {9430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int) (|v_main_~#b~0.base_BEFORE_CALL_4| Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 4) (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_4|) 4)) (= (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_4|) 8) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 8)) (not (= |v_main_~#b~0.base_BEFORE_CALL_4| |v_main_~#a~0.base_BEFORE_CALL_4|))))} assume !(0 == ~cond); {9430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int) (|v_main_~#b~0.base_BEFORE_CALL_4| Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 4) (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_4|) 4)) (= (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_4|) 8) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 8)) (not (= |v_main_~#b~0.base_BEFORE_CALL_4| |v_main_~#a~0.base_BEFORE_CALL_4|))))} is VALID [2018-11-18 23:00:45,314 INFO L273 TraceCheckUtils]: 74: Hoare triple {9430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int) (|v_main_~#b~0.base_BEFORE_CALL_4| Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 4) (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_4|) 4)) (= (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_4|) 8) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 8)) (not (= |v_main_~#b~0.base_BEFORE_CALL_4| |v_main_~#a~0.base_BEFORE_CALL_4|))))} assume true; {9430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int) (|v_main_~#b~0.base_BEFORE_CALL_4| Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 4) (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_4|) 4)) (= (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_4|) 8) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 8)) (not (= |v_main_~#b~0.base_BEFORE_CALL_4| |v_main_~#a~0.base_BEFORE_CALL_4|))))} is VALID [2018-11-18 23:00:45,314 INFO L268 TraceCheckUtils]: 75: Hoare quadruple {9430#(exists ((|v_main_~#a~0.base_BEFORE_CALL_4| Int) (|v_main_~#b~0.base_BEFORE_CALL_4| Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 4) (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_4|) 4)) (= (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_4|) 8) (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_4|) 8)) (not (= |v_main_~#b~0.base_BEFORE_CALL_4| |v_main_~#a~0.base_BEFORE_CALL_4|))))} {9420#(and (= main_~x~0 0) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} #70#return; {9420#(and (= main_~x~0 0) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 23:00:45,315 INFO L273 TraceCheckUtils]: 76: Hoare triple {9420#(and (= main_~x~0 0) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} havoc #t~mem5;havoc #t~mem4; {9420#(and (= main_~x~0 0) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 23:00:45,316 INFO L273 TraceCheckUtils]: 77: Hoare triple {9420#(and (= main_~x~0 0) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {9449#(and (= main_~x~0 1) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 23:00:45,316 INFO L273 TraceCheckUtils]: 78: Hoare triple {9449#(and (= main_~x~0 1) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} assume true; {9449#(and (= main_~x~0 1) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 23:00:45,318 INFO L273 TraceCheckUtils]: 79: Hoare triple {9449#(and (= main_~x~0 1) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {9456#(and (= main_~x~0 1) (= |main_~#b~0.offset| 0) (= |main_#t~mem5| (select (select |#memory_int| |main_~#b~0.base|) (+ (* 4 main_~x~0) |main_~#b~0.offset|))) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) |main_#t~mem4|))} is VALID [2018-11-18 23:00:45,320 INFO L256 TraceCheckUtils]: 80: Hoare triple {9456#(and (= main_~x~0 1) (= |main_~#b~0.offset| 0) (= |main_#t~mem5| (select (select |#memory_int| |main_~#b~0.base|) (+ (* 4 main_~x~0) |main_~#b~0.offset|))) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) |main_#t~mem4|))} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {9460#(exists ((|v_main_~#a~0.base_BEFORE_CALL_5| Int) (|v_main_~#b~0.base_BEFORE_CALL_5| Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_5|) 4) (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_5|) 4)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_5|) 8) (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_5|) 8)) (not (= |v_main_~#b~0.base_BEFORE_CALL_5| |v_main_~#a~0.base_BEFORE_CALL_5|))))} is VALID [2018-11-18 23:00:45,321 INFO L273 TraceCheckUtils]: 81: Hoare triple {9460#(exists ((|v_main_~#a~0.base_BEFORE_CALL_5| Int) (|v_main_~#b~0.base_BEFORE_CALL_5| Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_5|) 4) (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_5|) 4)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_5|) 8) (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_5|) 8)) (not (= |v_main_~#b~0.base_BEFORE_CALL_5| |v_main_~#a~0.base_BEFORE_CALL_5|))))} ~cond := #in~cond; {9464#(and (exists ((|v_main_~#a~0.base_BEFORE_CALL_5| Int) (|v_main_~#b~0.base_BEFORE_CALL_5| Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_5|) 4) (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_5|) 4)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_5|) 8) (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_5|) 8)) (not (= |v_main_~#b~0.base_BEFORE_CALL_5| |v_main_~#a~0.base_BEFORE_CALL_5|)))) (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond))} is VALID [2018-11-18 23:00:45,322 INFO L273 TraceCheckUtils]: 82: Hoare triple {9464#(and (exists ((|v_main_~#a~0.base_BEFORE_CALL_5| Int) (|v_main_~#b~0.base_BEFORE_CALL_5| Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_5|) 4) (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_5|) 4)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_5|) 8) (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_5|) 8)) (not (= |v_main_~#b~0.base_BEFORE_CALL_5| |v_main_~#a~0.base_BEFORE_CALL_5|)))) (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond))} assume !(0 == ~cond); {9468#(and (exists ((|v_main_~#a~0.base_BEFORE_CALL_5| Int) (|v_main_~#b~0.base_BEFORE_CALL_5| Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_5|) 4) (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_5|) 4)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_5|) 8) (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_5|) 8)) (not (= |v_main_~#b~0.base_BEFORE_CALL_5| |v_main_~#a~0.base_BEFORE_CALL_5|)))) (not (= |__VERIFIER_assert_#in~cond| 0)))} is VALID [2018-11-18 23:00:45,323 INFO L273 TraceCheckUtils]: 83: Hoare triple {9468#(and (exists ((|v_main_~#a~0.base_BEFORE_CALL_5| Int) (|v_main_~#b~0.base_BEFORE_CALL_5| Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_5|) 4) (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_5|) 4)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_5|) 8) (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_5|) 8)) (not (= |v_main_~#b~0.base_BEFORE_CALL_5| |v_main_~#a~0.base_BEFORE_CALL_5|)))) (not (= |__VERIFIER_assert_#in~cond| 0)))} assume true; {9468#(and (exists ((|v_main_~#a~0.base_BEFORE_CALL_5| Int) (|v_main_~#b~0.base_BEFORE_CALL_5| Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_5|) 4) (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_5|) 4)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_5|) 8) (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_5|) 8)) (not (= |v_main_~#b~0.base_BEFORE_CALL_5| |v_main_~#a~0.base_BEFORE_CALL_5|)))) (not (= |__VERIFIER_assert_#in~cond| 0)))} is VALID [2018-11-18 23:00:45,325 INFO L268 TraceCheckUtils]: 84: Hoare quadruple {9468#(and (exists ((|v_main_~#a~0.base_BEFORE_CALL_5| Int) (|v_main_~#b~0.base_BEFORE_CALL_5| Int)) (and (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_5|) 4) (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_5|) 4)) (= (select (select |#memory_int| |v_main_~#a~0.base_BEFORE_CALL_5|) 8) (select (select |#memory_int| |v_main_~#b~0.base_BEFORE_CALL_5|) 8)) (not (= |v_main_~#b~0.base_BEFORE_CALL_5| |v_main_~#a~0.base_BEFORE_CALL_5|)))) (not (= |__VERIFIER_assert_#in~cond| 0)))} {9456#(and (= main_~x~0 1) (= |main_~#b~0.offset| 0) (= |main_#t~mem5| (select (select |#memory_int| |main_~#b~0.base|) (+ (* 4 main_~x~0) |main_~#b~0.offset|))) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0) (= (select (select |#memory_int| |main_~#a~0.base|) (+ (* 4 main_~x~0) |main_~#a~0.offset|)) |main_#t~mem4|))} #70#return; {9449#(and (= main_~x~0 1) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 23:00:45,326 INFO L273 TraceCheckUtils]: 85: Hoare triple {9449#(and (= main_~x~0 1) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} havoc #t~mem5;havoc #t~mem4; {9449#(and (= main_~x~0 1) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 23:00:45,328 INFO L273 TraceCheckUtils]: 86: Hoare triple {9449#(and (= main_~x~0 1) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} #t~post3 := ~x~0;~x~0 := 1 + #t~post3;havoc #t~post3; {9481#(and (= main_~x~0 2) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 23:00:45,329 INFO L273 TraceCheckUtils]: 87: Hoare triple {9481#(and (= main_~x~0 2) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} assume true; {9481#(and (= main_~x~0 2) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} is VALID [2018-11-18 23:00:45,330 INFO L273 TraceCheckUtils]: 88: Hoare triple {9481#(and (= main_~x~0 2) (= |main_~#b~0.offset| 0) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 4)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 4))) (not (= |main_~#b~0.base| |main_~#a~0.base|)) (= (select (select |#memory_int| |main_~#b~0.base|) (+ |main_~#b~0.offset| 8)) (select (select |#memory_int| |main_~#a~0.base|) (+ |main_~#a~0.offset| 8))) (= |main_~#a~0.offset| 0))} assume !!(~x~0 < 100000);call #t~mem4 := read~int(~#a~0.base, ~#a~0.offset + 4 * ~x~0, 4);call #t~mem5 := read~int(~#b~0.base, ~#b~0.offset + 4 * ~x~0, 4); {9488#(= |main_#t~mem5| |main_#t~mem4|)} is VALID [2018-11-18 23:00:45,331 INFO L256 TraceCheckUtils]: 89: Hoare triple {9488#(= |main_#t~mem5| |main_#t~mem4|)} call __VERIFIER_assert((if #t~mem4 == #t~mem5 then 1 else 0)); {9492#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-18 23:00:45,332 INFO L273 TraceCheckUtils]: 90: Hoare triple {9492#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {9496#(= 1 __VERIFIER_assert_~cond)} is VALID [2018-11-18 23:00:45,332 INFO L273 TraceCheckUtils]: 91: Hoare triple {9496#(= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {9185#false} is VALID [2018-11-18 23:00:45,332 INFO L273 TraceCheckUtils]: 92: Hoare triple {9185#false} assume !false; {9185#false} is VALID [2018-11-18 23:00:45,377 INFO L134 CoverageAnalysis]: Checked inductivity of 514 backedges. 0 proven. 162 refuted. 0 times theorem prover too weak. 345 trivial. 7 not checked. [2018-11-18 23:00:45,400 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-18 23:00:45,400 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 21] total 40 [2018-11-18 23:00:45,401 INFO L78 Accepts]: Start accepts. Automaton has 40 states. Word has length 93 [2018-11-18 23:00:45,401 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-18 23:00:45,401 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 40 states. [2018-11-18 23:00:45,575 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 126 edges. 126 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-18 23:00:45,575 INFO L459 AbstractCegarLoop]: Interpolant automaton has 40 states [2018-11-18 23:00:45,575 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 40 interpolants. [2018-11-18 23:00:45,576 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=332, Invalid=1079, Unknown=3, NotChecked=146, Total=1560 [2018-11-18 23:00:45,576 INFO L87 Difference]: Start difference. First operand 96 states and 97 transitions. Second operand 40 states.